マレーシアでプログラマー/システムエンジニア(SE)として稼ぐ方法

はじめに

どうも、popです。
今回は「プログラマー/システムエンジニア(SE)を職業にしてマレーシアで生活していくにはどのような選択肢があるか」という点について書かせていただきます。

少々長いですが、最後までお読みいただければ幸いです。

具体的な選択肢

それでは早速どのような選択肢があるのか書いていきます。

1、現地でプログラマー/SEとして働く


一つ目の選択肢として、現地(マレーシア国内)にある企業に就職することが挙げられます。
マレーシア国内での求人案件などはインターネットの求人サイトで調べればある程度把握できます。


そのため、現在日本国内に在住していてこれからマレーシアへの移住を考えている人でも、事前に給料感などを知ることができたり、マレーシアの企業にメールなどでコンタクトをとることもできます。
ですので、就職・転職活動という観点でみたらそこまでハードルは高くないのかなぁという印象です。


現地で働くメリットとしては以下の点が挙げられます。


①現地の人とコミュニケーションをとるきっかけになる
初めてマレーシアで生活する場合、現地の人々とのつながりがない場合が多いのではないでしょうか?
何かあったとき、現地の人で頼れる人がいると心強いですよね。


そこで、現地で実際に働くことによってより密接に現地の人々と関わることができるので、コミュニケーションの質が高くなります。
価値観や文化などをより深く知るきっかけにもなりそうですね。

 

就労ビザを取得できる
就労ビザ取得を目的にする方は多そうですね。
ある程度長い期間マレーシアで生活したい方などはおすすめなのではないでしょうか?

この他、企業によっては住む場所を提供するなど、様々な配慮がなされている場合があります。
もし興味のある会社があった場合は様々な視点で判断することが重要かもしれません。

 

一方、デメリットとしては以下の点が挙げられます。


①賃金が低くなりがち
今後為替の変動などによって変化する可能性もありますが、日本国内と比較するとマレーシアの賃金は低い傾向にあります。


しかしマレーシアは日本に比べて物価が低いという特徴もあるので、貯金額など、全体的に考えると「マレーシアのほうが金銭面で良いよね」という判断もアリだと思います。
このあたりをどう感じるかは人それぞれですね。

 

②英語など、言語の面が壁になる場合がある
日本語のみでOKの場合もありますが、日常会話レベルの英語力を求められる案件も多いです。
英語力に不安のある方(僕のことです苦笑)は他の手段をとるか、学習するなど、何らかのアクションが必要かもしれません。

2、フリーランスエンジニアとしてリモートワーク可能な日本国内の案件を受注する


二つ目の選択肢として、日本国内の案件でリモートワーク可能なものを受注することが挙げられます。
最近はリモートワークでのワークスタイルも徐々に認められてきているので、案件数も以前に比べれば増加傾向にあります。

 

リモートワークで日本国内の案件を受注して働くメリットとしては以下の点が挙げられます。


①マレーシアで働くことに比べて賃金が高い傾向にある
案件にもよりますが、日本の案件を受注する方が金銭的に高くなりやすいです。
これは為替レートや物価との関係も大きいです。
より金銭面を重視する方はおすすめです。

 

②自分でスケジュールを調整できる
これは時間的拘束をうけにくいとも言えますが、「○○時に出社する」といったことが基本的になくなりますので、自分のペースで作業することができます。
もちろん、納期などがありますのでそれを考慮しながらにはなりますけどね笑


一方、デメリットとしては以下の点が挙げられます。


①技術レベルの高い案件が多い
サイトなどにもよりますし、じっくり調べたわけではないので恐縮ですが、リモートワーク可能な案件は比較的専門性の高いものが多い印象があります。
ですので、受注できるかどうかは自分のスキル次第なところが大きいです。
プログラミングの経験が浅い方は受注に苦労するかもしれません。

 

②使用言語によって案件量にばらつきがある
リモートワーク可能な案件で、金銭面で魅力的な案件であっても、プログラミング言語が自分の未経験言語の場合があります。


ですので、普及率が低かったり、比較的古い言語を使っているプログラマー/SEの方は仕事を受注するのに少々苦労するかもしれません。

 

3、フリーランスエンジニアとして、リモートワーク可能な海外(日本以外)の案件を受注する


これはフリーランスエンジニアとして日本から仕事を受注するのではなく、日本以外の国から仕事を受注する方法です。
基本的には2の方法と同じなのですが、海外特有のメリット・デメリットもありますのでそれをお伝えできればと思います。


リモートワークで海外の案件を受注して働くメリットとしては以下の点が挙げられます。


①世界各国の人とコミュニケーションをとることができる
国にとらわれずに仕事を受注することによって、世界各国の人と接することができます。
直接同じ場所に顔を合わせてコミュニケーションをとることは難しいですが、より刺激的でフレッシュに仕事をすることができそうです。

 

②案件選択の幅が増える
特定の場所にこだわらないことによって案件の候補が大きく増えます。
金銭面や仕事の自由度など、自分の納得のいく案件をお探しの方はオススメなのかもしれません。

 

一方、デメリットとしては以下の点が挙げられます。


①高いレベルの語学力が必要
意思疎通のミスなどが発生してしまうと、非常に問題になります。
完全にビジネスレベルの語学力が必要になるので、ある程度はハードルは高そうです。

 

②場所によっては時差がある
クライアントの場所によっては時差が大きい場合があります。
そのため、納期などスケジュールの面でうっかりミスしてしまったり、なかなかコンタクトが取れない場合があるかもしれません。
クライアントがどこの場所なのかしっかりと意識しておく必要があります。

まとめ

以上がマレーシアで生活しながらプログラマー/システムエンジニア(SE)として働くうえでの主な選択肢だと思います。
選択は人それぞれですし、これ以外の選択肢もあると思います。

 

いずれにせよ、あらかじめしっかりと調べることが非常に重要になると思います。

 

長くなってしまったので今回はここまで。
最後までお読みいただきありがとうございました。
今後ともよろしくお願いいたします!

BECK'S COFFEE SHOP 横浜北口店ってどこにあるの?

popです。
今回はプログラミングやマレーシアとは関係ありません
私が『BECK'S COFFEE SHOP 横浜北口店』の場所がわからず、走り回るはめになってしまったので、
同じ経験をする人がいないようにメモとして書かせていただきます。

事の発端

 まず、なぜ『BECK'S COFFEE SHOP 横浜北口店』に行く必要があったのか。
私はその日、とある会社の社長さんと商談をすることになっていました。
そしてその待ち合わせ場所に指定されたのが『BECK'S COFFEE SHOP 横浜北口店』だったのです。

 
他の店舗のベックスコーヒーは行ったことがあったものの、「横浜北口店?どこだ??」と思った私はグーグルマップや口コミサイトなどを使って情報収集を試みました。
しかし、結局大まかな場所までしか調べられず、「実際に行ってみて周辺を探すしかないか・・」と考えていました。

BECK'S COFFEE SHOP 横浜北口店』に行く当日・・・

そして当日、待ち合わせ時間が迫ってきた頃。
私は20分ほど前に横浜駅に到着し、『BECK'S COFFEE SHOP 横浜北口店』を探し始めました。
ある程度の位置はわかっていたので、その周辺を見渡してみた。


しっかり探しているのに見つからない。
時間が迫ってきたこともあり次第に焦りはじめ、横浜駅構内をダッシュし始めます。

(*絶対に真似しないでください苦笑)
もしかしてそごう方面?それともジョイナスの地下?などの考えも頭によぎり、範囲を広げて探しますが、ベックスコーヒーは見つからない。


本当に時間に余裕がなくなってきたので最終手段。「人に尋ねる」を実行しました。
横浜駅北口付近で人に尋ねてみて、5人目に尋ねた方がご存知でした。

 

その場所とは、横浜駅北口改札の中だったのです。


改札の中というのは私の中で完全に盲点でした。
まさか待ち合わせ場所が改札の中とは・・
私の経験不足ですね。

声を大にして言いたいこと

BECK'S COFFEE SHOP 横浜北口店』をお探しの皆さん。
横浜北口店は改札の中にあります。
(知ってる人からしたら「この場所そんなに難しい?」って思われそう💦)

最後に

この記事がどなたかのお役に立てば幸いです。
改札の中に行けばすぐわかります。

次回はプログラミング系のことを書くと思います。
今後ともよろしくお願いいたします!

最もプログラミングに適したエディターとは??

プログラミングに適したエディターは何か

popです。

今回はプログラミングをするうえでほぼ必須となる「エディター(エディタ、editor。今回はエディターで統一します)」。皆さんはどのエディターを使っていますか?

好みは人それぞれだと思います。しかし、初めてプログラミングをする方もいらっしゃると思うので、エディターに求められる機能をまとめつつ、私のオススメエディターをご紹介していこうと思います。。

エディターに求められる機能

エディターとは、ざっくり言えば「プログラミングをする際のノート」みたいなものです。プログラミングをする際はソースコードを書いていきますよね?そのソースコードを書き留めるためのノート的存在がエディターです。(エディターの細かい定義などについてはここでは割愛させていただきます。)

書き留めることが目的なので、Windowsに元々入っている「メモ帳」だって十分にエディターと呼べます。

しかし、プログラミングをする際に「メモ帳」だと、書けないことはありませんが効率性に欠けるのです。

では、エディターに求められる機能とはどんなものなのかまとめていきたいと思います。(※完全に自分の考えです)

 

1、見やすさ

エディターに求められる機能としてまず挙げられるのが、コードを見た際にコードが見やすいことです。

具体的に言うと、変数、関数、数字、文字列などがそれぞれ色が区分されていることにより、一目でどんな処理が書かれているのかわかりやすくなるのです。

f:id:ayatakex:20180625201859p:plain

sublime text

実際に私の使用している「Sublime text」ではこのように非常に見やすくなっています。

一方「メモ帳」に同じコードを書いた場合はこんな感じです。

f:id:ayatakex:20180625202130p:plain

メモ帳の場合

どちらがわかりやすいかと言ったら前者ですよね??

このように、コードの見やすさ(視認性)はプログラミングをする上で非常に重要です。

2、自分でカスタマイズできるか(拡張性が高いか)

また、エディターを自分の使いやすいようにカスタマイズできることも重要です。

主にプログラミングをする際に使用するエディターですが、エディターに書くプログラミング言語は人それぞれです。そのため、自分が頻繁に書くコードに合った機能(ソースコード全体の整形など)を追加できるなど、拡張性が高いエディターを使用することをオススメします。

 

 

3、動作する上での軽さ

そして、エディター自体が軽量でスピーディーなことが求められます。エディターが重いとコードを書いていくうえでストレスになってしまいます。

特に、複雑なコードを書いている際にサクサク動かなかったら最悪です・・・

快適にプログラミングできるよう、なるべく軽量のエディターを選びましょう。

私のオススメエディター

私がオススメしたいエディターは上記ででてきた「Sublime text」です。

コードの見やすさ、拡張性の高さ、軽さのどれも満足しており、非常に重宝しています。

Sublime text」は拡張性が高く、インストールした後から「パッケージ」を追加することができます。

このパッケージがとても充実しており、「整形」や「全角スペースのチェック」、「日本語対応」など、至れり尽くせりです。

唯一気になる点とすれば、日本語の文字を入力する際に文字入力が画面左上に出てしまうことでしょうか。

f:id:ayatakex:20180625202358p:plain

こんな感じです。

一応パッケージで位置を修正というか補正できるのですが、やってみたところイマイチだったので結局戻しました。

私は慣れてしまったのであまりストレスはありませんが、日本語入力多めの方などには合わないかもしれないですね。

あともう1つ、私が過去に使っていたエディターをご紹介します。

それは「atom」です。

atom」も非常にコードが見やすく拡張性が高いのでオススメです。

ただ、若干起動時が重かったことが気なってしまい、現在はほとんど使用していません。

先述した日本語入力の位置などは問題なかったので、人によっては「atom」のほうが良いのかもしれません。

 

最後に

今回はエディターについてご紹介させていただきました。

どのエディターが良いかは人それぞれですし、「慣れ」による部分も大きいと思うので興味のあるエディターを実際に使用することが大切なのかもしれません。

私の記事が何かの参考になれば幸いです。

今後もよろしくお願いします!

intense.jsのエラー原因・解決方法

popです。
今回はプログラミングしている中で私がハマった点についてのメモです。


intense.js 112行目に発生するエラー

私がプログラミングをしている中で気になった点についてまとめてみます。

私は「intense.js」というものを使っている時のことです。


ある程度作成していたものの大枠ができたと思ったので、いつもと同じように「google chrome」のデベロッパーツールを使ってエラーが出ているか確認しました。
(私が普段使用するブラウザはgoogle chromeです。)

 

そうしたら

f:id:ayatakex:20180618231058p:plain

intense.jsのエラー




このようなエラーが発生していました。

行としてはこんな感じです。
(intense.js:112)
(intense.js:106)
(intense.js:404)

 

加えて、HTMLの該当箇所はこちらです。(コード直書きで申し訳ないです)

<script>
var elements = document.querySelectorAll('.demo-image');
Intense(elements);
</script>

 


表示された該当箇所のコードを見てみました。

すると


このように表示されていました。

 

f:id:ayatakex:20180618231303p:plain

intense.jsのエラー 詳細

function track(element) {
// Element needs a src at minumun.
if (element.getAttribute("data-image") || element.src || element.href) {
element.addEventListener(
"click",
function(e) {
if (element.tagName === "A") {
e.preventDefault();
}
if (!active) {
init(this);
}
},
false
);
}
}


さらに詳しく言えばUncaught TypeError: element.getAttribute is not a functionと表示されました。

 

 

解決方法
結局、HTMLのIntense(elements);という行をコメントアウトすることでエラーはなくなりました。
やり方としては少々強引ですが・・・

おそらく他により良いやり方があるのだろうと思います。

今後他の方法を見つけたら追記します。


(蛇足ですが、今回発生したエラーを放置しても実際に作成したプログラムの挙動には影響がなく、業務には支障がありませんでした。)


終わりに

今回は「intense.js」のエラーについて記述しました。


私自身intense.jsについての知識があまりないので、まずはintense.jsの理解から固めたほうが早いのかなぁと思っています。


なにかアドバイス等ありましたら教えて頂けるとありがたいです。

今後ともよろしくお願いいたします!

マレーシアの為替変動率について(マレーシアリンギット)

はじめに

popです!

今回はマレーシアの通貨であるリンギット為替相場について、ドル円のチャートと比較しながら、主にリンギット対円を主軸として考察していきます。

 

為替レートの変動は留学や旅行、移住を考えている人には大きく影響するので不安な方も多いのではないでしょうか?

 

マレーシアの通貨

まず、マレーシアの通貨ですが、「リンギット」が使われています。

 

(細かく言えばマレーシアリンギット。為替レートでは「MYR」や「RM」と表記される。「MYR」のほうが多いかな?)

 

このリンギットは「リンギ」「マレーシア・ドル」などと呼ばれることもあります。

当記事では「リンギット」で統一して書いていきます。

 

ちなみにリンギットの補助単位は「セン」(マレー語: sen)と呼ばれており、100センが1リンギットとして扱われています。

大まかにいえばドルとセントみたいなイメージですかね。

 

リンギットについて詳細な情報は以下のURLから確認して頂ければと思います。

https://ja.wikipedia.org/wiki/%E3%83%AA%E3%83%B3%E3%82%AE%E3%83%83%E3%83%88 

 

 

10年間のグラフで見るリンギット対円

それでは、「リンギット円」の為替レートの変動について見ていきます。

 

下のグラフを見てください。

 

リンギット円 チャート

リンギット円 10年間の為替レート推移



これは楽天証券さんが公開しているチャートです。

www.rakuten-sec.co.jp

 

10年間のチャートで見ると、高値は2014年から2015年の間に記録した約35.17463となっています。

 

一方、安値は2011年から2012年の間に記録した約24.11777だということがわかります。

 

安値に関しては2016年から2017年にも近い値のものがありますね。

 

高値や安値の原因について考えてみると、高値に関しては日本が金融緩和していた時期と被りますね。

金融緩和に関しては、日銀の黒田総裁のもと、量的緩和や質的緩和(具体的には国債金利低下やマイナス金利の導入など)を行っており、リンギットに限らず円が安くなった時期です。

「黒田バズーカ」など、サプライズ的な発表も多かったですよね。

 

安値に関しては、地政学的リスクの高まりなどが原因でしょうか。

日本円は世界の投資家から安全通貨と位置づけられており、軍事的な出来事(地政学的リスク)が発生した時の避難先として円が買われることが多いですからね。

(安全通貨と位置づけられている話は長くなるのでここではしません笑) 

 

このあたりは私は経済・金融の専門家ではないのであくまで私見の域を脱しません。

株やFXでかじった知識で書いてます。

 

詳しく原因を知りたい方は改めてお調べになってくださいね!

 

10年間のグラフで見るドル円との比較

下のチャートはドル円の10年間の推移を表しています。

 

ドル円チャート

ドル円 10年間の為替レート推移



このチャートとリンギットのチャートを比較してみると、多少の時期のズレはあるものの、ところどころチャートの形が類似しているように見えませんか?

 

特に、高値の時期や安値の時期はその特徴が顕著に表れています。

 

リンギット円、ドル円と通貨に差はあるものの、類似している点があることについて、個人的には先述したような日本円の性質・背景が大きく関わっているからではないかと思います。

 

このような点も参考になったら嬉しいです。

 

リンギット円の為替レートの近況

最近(2018年5月末)では27.5付近を推移しています。

高値から考えればわりと下がった印象を受けます。

 

チャートをみると、最近は比較的価格が安定しているようです。

 

もちろん、今後の情勢次第でどうなるかわかりませんし、リンギットが一気に暴騰、暴落する可能性もあるので定期的にレートを確認しておこうと思います。

 

終わりに

最後までお読みいただきありがとうございます。

 

マレーシアのリンギットは日本ではあまり馴染みのない通貨かもしれません。

しかし、留学や旅行や移住を考えている人には大きく影響する点ですので、こまめに為替レートなどをチェックしておくといいかもしれないですね。

 

今後ともよろしくお願いいたします!

popでした!

マイナスからのプログラミング学習法 前編

はじめに

 

どうも!popです。

今回は前回に引き続き、プログラミング初学者のための勉強法についてお伝えしようと思います。

 

初めに言っておきますが、私はプログラミングの学習に関して一度挫折して学習を辞めた過去があります。

そのため、私が失敗したプログラミング学習方法と、成功したプログラミング学習方法をそれぞれご紹介したいと思います。

今回の記事では、失敗した勉強法について書きます。

 

 

実際に行ったプログラミング学習方法(失敗編)

それでは私がどのようにしてプログラミングを学習したのかお伝えしたいと思います。

 

大学二年のころ、プログラミングを勉強しようと思った私は、とりあえず近くの書店のプログラミング関連コーナーに行きました。

いったい何から手を付けていいのかわからなかったのです。

(↑この経験をしてる人多い気がする・・・)

 

 

そこの書店にプログラミング初心者向けのPythonの学習本があり、手に取ってサラッと目を通してみたところ説明も多く、表現も平易だったので、購入しました。

 

そして、しばらくはその本に従ってコードを書いて勉強していました。


勉強といってもコマンドプロンプトに直接pythonのコードを打ち込んでいくやり方で、内容も「print」を使って文字を出力したり、時刻を取得してきたり、簡単なfor文を書いたりでしたので、本当に初心者向けの内容でした。

 

それをしばらく続けていき、ある程度「プログラミングってこんな風に書いていくんだな」ということを体感できました。

 

しかし、ここで大きな壁があったのです。

 

それは「自分がプログラミングして作ってみたいものがなかった」ということです。
要はゴール設定がなかったと言えばいいんでしょうか。

 

私はそもそも「プログラミングがどういうものか知る、そしてそれを勉強して身につける」という目的で取り組んでいたので、これといって何か作りたいものがありませんでした。

「オシャレなホームページを作る!」とか、「入力システム、管理システムが必要だ!」とかがあれば良かったんですけどね。

 

 

そのため、勉強と言ってもほとんど購入した本に書いてあるコードをそのまま書くだけだったのです・・・。
多少自分で変化をつけてみたりはしましたが、購入した本とは全く違うものを作りだすことはできませんでした。

 

 

そのせいで「プログラミングってこんな感じかぁ」程度からなかなか先に進めず、次第にプログラミングに取り組まなくなっていき、ついには完全にプログラミングの学習から距離を置いてしまいました。

 

今思うと、プログラミングで何かを作る楽しさを知ることができなかったことが、学習を続けられなかった最大の原因だと思います。

 

ですので、これからプログラミングを学習する人には、「プログラミングがどういうものか知る、そしてそれを勉強して身につける」という目的であっても、何かを作ることを一番の目的にしたほうが良いと思います。

 

もちろん学習する上での目標・目的は人それぞれですし、私は飽きっぽい性格なのでそれが災いした節も否めません。

ですが、私はそれを考慮したとしても「自分で何かを作ること」は極めて重要だと思います。

 

終わりに

今回は私の失敗談を書かせていただきました。この失敗談が役に立てば幸いです。(同じ経験はしないでほしい・・)
次回は成功した勉強方法について書きます。


今後もよろしくお願いします!

マイナスからのプログラミング学習法 前編

はじめに

 

どうも!popです。

今回は前回に引き続き、プログラミング初学者のための勉強法についてお伝えしようと思います。

 

初めに言っておきますが、私はプログラミングの学習に関して、一度挫折して学習を辞めた過去があります。

そのため、私が失敗したプログラミング学習方法と、成功したプログラミング学習方法をそれぞれご紹介したいと思います。

今回の記事では、失敗した勉強法について書きます。

 

 

実際に行ったプログラミング学習方法(失敗編)

それでは私がどのようにしてプログラミングを学習したのかお伝えしたいと思います。

 

大学二年のころ、プログラミングを勉強しようと思った私は、とりあえず近くの書店のプログラミング関連コーナーに行きました。

いったい何から手を付けていいのかわからなかったのです。

(↑この経験をしてる人多い気がする・・・)

 

 

そこの書店にプログラミング初心者向けのPythonの学習本があり、手に取ってサラッと目を通してみたところ説明も多く、表現も平易だったので、購入しました。

 

そして、しばらくはその本に従ってコードを書いて勉強していました。


勉強といってもコマンドプロンプトに直接pythonのコードを打ち込んでいくやり方で、内容も「print」を使って文字を出力したり、時刻を取得してきたり、簡単なfor文を書いたりでしたので、本当に初心者向けの内容でした。

 

それをしばらく続けていき、ある程度「プログラミングってこんな風に書いていくんだな」ということを体感できました。

 

しかし、ここで大きな壁があったのです。

 

それは「自分がプログラミングして作ってみたいものがなかった」ということです。
要はゴール設定がなかったと言えばいいんでしょうか。

 

私はそもそも「プログラミングがどういうものか知る、そしてそれを勉強して身につける」という目的で取り組んでいたので、これといって何か作りたいものがありませんでした。

「オシャレなホームページを作る!」とか、「入力システム、管理システムが必要だ!」とかがあれば良かったんですけどね。

 

 

そのため、ほとんど購入した本に書いてあるコードをそのまま書くだけだったのです・・・。
多少自分で変化をつけてみたりはしましたが、購入した本とは全く違うものを作りだすことはできませんでした。

 

 

そのせいで「プログラミングってこんな感じかぁ」程度からなかなか先に進めず、次第にプログラミングに取り組まなくなっていき、ついには完全にプログラミングの学習から距離を置いてしまいました。

 

今思うと、プログラミングで何かを作る楽しさを知ることができなかったことが、学習を続けられなかった最大の原因だと思います。

 

ですので、これからプログラミングを学習する人には、「プログラミングがどういうものか知る、そしてそれを勉強して身につける」という目的であっても、何かを作ることを一番の目的にしたほうが良いと思います。

 

もちろん人それぞれですし、私は飽きっぽい性格なのでそれが災いした節も否めません。

ですが、それを考慮したとしても、「自分で何かを作ること」は極めて重要だと思います。

 

終わりに

今回は私の失敗談を書かせていただきました。この失敗談が役に立てば幸いです。(同じ経験はしないでほしい・・)
次回は成功した勉強方法について書きます。


今後もよろしくお願いします!