オランダでエンジニアとして働く ~経緯編~
2021年現在、既に帰国しているので加筆します。
2016年からオランダで Developerとして働いています。
現在に至るまでわずか1年で既に3社目というジョブホッパーとも捉えかねられない状況ですが、海外で働くという状況下でいきなり理想の会社に出会うことは難しく、しかしながら目的を達成するために妥協することなく、この日本人にとって決して普通ではない環境を最大限に引き出したいという考えの結果です。まあ、カルチャーフィットを重要視する欧米企業に対して、転職回数を気にするのは日本企業くらいですけどね。
まず海外で働くことになった経緯ですが、まず私は、日本が陥っている超少子高齢化社会が日々改善するどころかブーストすらされているような状況下で、今後は会社どころか国にも頼ることが難しい時代に差し掛かろうとしていることを個人的に危惧していました。この中でキャリアパスを考えたときに、エンジニアとして長期的な生存戦略を錬る必要があると考え、さらに歳も30代半ば、それはキャリアの踊り場とも言われているそうですが成長を感じにくい時期でもあり、そこで以下の思いがありました。
- 長期的にエンジニアであり続けるうえで、常に挑戦が必要と考えたこと
- 海外で働くという未知の経験に対する期待
- 前述の通り日本に対してかなり悲観的であり、その結果として、海外で働く力を身に付けたかった (国が破綻しても生きていける保証)
- 多国籍企業における様々なバックグラウンドを持つ同僚と一緒に働くことで、人間的に視野を広げたかった
また、新しい技術情報はほぼ英語で書かれていたり、海外のエンジニアとの情報交換といった情報収集には英語力が欠かせないことからエンジニアとして高い英語力の必要性を日々感じており、いっその事海外で就業をすることを目的として英語力を伸ばそうと考えていました。
結果としてオランダ企業で働くことになりましたが、オランダを選択した理由は至ってシンプルです。
- アメリカでの就業よりハードルが低く、海外就業初心者にとって挫折しない現実的なラインであったこと
- エンジニアとしてモダンな開発環境下で経験を積みたいという希望を叶えるには、アジアの途上国で働くという選択肢は全くなかったこと (消去法)
- 当時、オランダと日本間で特別な協定があり、就業ビザ無しでも就業が可能であったこと (2016年末で失効)
転職活動時、技術的にはGolangにかなり傾倒しており、業務上ではほぼ未経験であったMicroservices Architecture, gRPCにおけるサービス間の通信, コンテナを使ってクラウド上へのDeployを含め、2016年の時点ではモダンとされる(少なくともこの時点で自分はモダンだと思っていた)クラウドネイティブ環境に興味があり、それらを利用している企業で働こうと考えていました。しかし、オランダは小国です。当時Golangをメインに使っているポジションは決して多くありませんでした。それでもindeed, stackoverflow job経由で数社応募してみましたが、返事すらこないことも珍しくありません。そこで戦略を練り直し、興味のある会社の技術要件を徹底的にチェックし、その技術経験を自分が満たすことを証明するために期間にして2ヶ月半ほどは仕事をせずに技術習得に時間を割きました。
ある程度納得がいくレベルまで個人プロジェクトが完成した後、応募を再開しました。すると早速1社から返信がありました。それはFullStack EngineerのポジションでBackendとしてGolang, PHP, Node.jsでの開発経験に加え、FrontendにはReactを使っての開発経験、更にAWSの利用経験が求められていました。
1時面接はSkypeでの技術面接、データ構造のアルゴリズムを事前に勉強していなかったら答えられていなかったと思います。やはり準備は大事でしたね。1時間ほどの1次面接が終了してから15分後くらいにメールが届きました。Assessmentと書かれたpdfファイルには技術課題が書かれており、実際に開発を通じてJob descriptionにある必要要件を自分が満たすか確認するためのもので、3日以内に提出を求められました。
内容はアンケートサービスの開発で、アンケートをとるためのClient向けページと、新規アンケート作成やアンケートの回答を集計するためのAdminページをサーバーサイドはGolangとNode.jsで開発し、フロントエンドはReactでSPAとして開発し、ECS (Amazon EC2 Container Service)を利用してデプロイするところまでが求められました。
3日以内に、DB設計、GolangでのAPIサーバーの用意、フロント用のReactでのSPAに加え、StaticなHTMLデザインもそれぞれ用意。マイクロサービスアーキテクチャーを想定してか、AdminとClient用のAPIはそれぞれ別々のサービスとして動作することが求められるので、Nginxのリバースプロキシ設定なども用意。更にDockerの設定ファイルを用意し、ECSを利用しDeploy。。。先方も3日以内にこれができるとは思っていなかったらしく、できるところまでで構わないとのことでしたが、おそらく生産性も判断材料だったんだと思います。しかし私は何が何でも海外で働きたいという強いモチベーションに加え、選考してくれるだけでもとても貴重な経験だと考え、1日おそらく15時間ほど開発を続け2日半ほどで開発を終わらせて提出しました。モチベーションは本当に大事ですね。どうでもいいですが、私もマネージャー職についた場合はメンバーのモチベーション管理を第一に考えています。
結果は上々、無事内定を頂くことができました。
この後、給料交渉、入社時期を相談し、働くまでに至ります。
振り返ってみて、苦労したり、不利になると感じたポイントですが、
- 海外就業未経験はもしくは日本からの応募は敬遠される(気がする)。
- これはEU内で働いているときに他国への応募をしたとしても、書類選考で落ちることはほぼなかったことからそう感じています。
- EUの場合はEU内の応募者が優先される
- これは全ての会社が就業VISAのスポンサーになってくれるわけではないことと、小さなスタートアップの場合VISAを発給するためのライセンスを持っていないことが多いです。
- 英語力が他のヨーロピアンと比べ相対的にどうしても劣る
- 私が渡欧したときのTOEICのスコアは950点ほど。TOEICで英語力を図ることは不可能ですが、当時の私のレベルでははっきり言って門前払いでもおかしくなかったと思います。
以上の点を考えると決して簡単ではありませんが、就業を通して得た経験等を踏まえると挑戦する価値は十分にあったと思いますし、もし海外就業を考えている方がいらっしゃるのであれば、是非とも挑戦してもらいたいです。