![見出し画像](https://assets.st-note.com/production/uploads/images/139795814/rectangle_large_type_2_faacabc45f3f19145cd8545aef585b66.jpeg?width=1200)
ポルトガルでソフトウェアエンジニアになるまで 第3章 転職活動を始めるまで
ポルトガルでソフトウェアエンジニアをやっているTettoです。今回は海外転職活動を始めるまでに準備したことを書いていきます。
※トップの写真はリスボンにある「4月25日橋」です。サンフランシスコの「ゴールデン・ゲート・ブリッジ」と色や形が似ていて姉妹橋と呼ばれています。
英語
スピーキング・リスニング
オンライン英会話スクールのCamblyで鍛えました。転職活動を始める1年半前からやり始めて、最初は30分×週2回、直前の3ヶ月位は週3回の頻度で受けていました。英語ネイティブの人を前に、臆することなく話せるようになったのはCamblyのおかげだと思っています。
ディクテーション
さらに、毎日10〜15分程度、ディクテーションもしていました。自分の興味あるYoutubeのコンテンツ(英語字幕ありのもの)を聴いて、字幕はオフで正確に書き取るという作業です。コンテンツの選び方としては、あまりに聴き取れないとやる気が失せるので、だいたいは言ってることはわかるな、と思えるものを選んでいました。最後の5分くらいで字幕をオンにして答え合わせをします。聴き取れなかったところや間違えたところは何度も聴いたり、後は単語や表現がよくわからないところは調べたり単語帳に入れたりして理解するようにしました。知らなかった表現も、何度もディクテーションしてるうちに覚えて会話で使えるようになったので、スピーキング力の向上にも役立ちました。
その他
その他としては、身の回りのものを出来る限り英語で行うようにしました。PCやスマホの言語設定を英語にする、Todoやカレンダーの予定を英語で書く、などです。
技術力
転職活動においては、ソフトウェアエンジニアとしての技術力をあらゆる形で証明できる必要があります。とりわけ、日本にいながら海外の企業に応募をしなくてはならない自分にとっては、その国に住んでいない地理的なハンデや語学力のハンデがあるため、他の応募者に比べても「この人は技術的に即戦力になりそうだ」と確信してもらうための材料が必要でした。
誰が聞いても一流と思える尖ったスキルを持っている方は一点突破で良いのですが、自分はそのようなスキルは持ち合わせていないため、「技術力が高いこと」ではなく「技術力は大丈夫」と思ってもらえるように苦手な部分を補う形で準備を行いました。
以下に私が行った対策を書いていきます。
対策1 コンピューターサイエンスの学位を取る
まず最初に取り組んだのが、「コンピューターサイエンス(CS)系の学位を取ること」です。転職活動を始める約2年前にUniversity of PeopleのMaster of Science in Information Technology (MSIT, 情報技術修士)に入学し、勉強していました。
海外では、Job Description(求人票)にCS/情報系の学位を持っていることが要件として書かれてることがあります。過去にニュージーランドへの移住を検討した際も、仕事に関連する学位が無いだけで、移住に必要なポイント数がかなり減ってしまうということもあったため、転職活動でも大きなハンデになってしまうと感じていました。以下のような形で、CS関連の学位が必要であることが良く書かれています。
A bachelor/master in Informatics (or related);
Bachelor's degree or equivalent working experience in Computer Science, Software Engineering, or related field
しかし転職に学位が必須だったか
というと、無くても良かったかもと思っています。というのも、自分が希望していたシード期スタートアップでのフルスタックエンジニアという職種では、学位が必須という企業が少なかったのです(体感で3〜4割程度)。実際に、私が内定をもらったEUの会社2つも学位については一切記載がありませんでした。
学位が必要かは、応募する国・企業の規模、職種等によって変わります。米国企業は学位必須が多い、大企業は学位が必要なことが多いが、スタートアップは少ない、などです。自分は、海外でどのような仕事が見つかるのかが不安だったのと、コンピューターサイエンスを一度しっかり学びたいという思いがあったので、入学しました。ただ、学位の取得には最低でも1〜2年の時間がかかります。転職のためだけにその時間をかけるのであれば、自分の興味ある企業の求人をLinkedInなどで眺めてみて、その多くでCS学位が指定されているかを確認してからでも良いかもしれません。
対策2 コーディングインタビュー対策
欧米の企業ではコーディングインタビュー(Data Structure & Algorithmとも言います)が行われる採用プロセスがよくあります。面接官が問題を出し、それを解くプログラムを、自分の好きなプログラミング言語で書くというインタビューです。
自分は毎日1問、LeetCodeのEasy あるいはMediumの問題を解くようにしていました。具体的には、Top Interview 150やLeetCode 75 といった定番問題集を"カテゴリごとに解く"というやり方です。「Two Pointers」に分類されてる問題をまとめて数日解いて、パターンに慣れたなと思ったら「Sliding Window」の問題に移るといった具合です。この方法はランダムに問題をやるよりも明らかに学習効率が良かったです。さらに、30分ぐらい時間かけても解けなかった問題は、解を見て、"Do it Later" (後でやる)という自分専用のリストに保存しておき、1ヶ月後ぐらいに再度チャレンジするというのも定着効果がありました。
実は今回の転職活動で、自分が内定を頂いた企業3社ではどれもアルゴリズムに関してのコーディングインタビューはありませんでした。とはいえコーディングインタビュー対策をしたことで、よく使われるアルゴリズムやデータ構造についての学ぶことで、実務で使えるヒントも得られたし、今後の転職活動でも役立つのは間違いないので、結果的にはやって良かったなと思っています。
対策3 興味のある技術に沿った経験を積む
転職を意識し始める数年前から、自分が今後やっていきたいと思う技術を勉強したり、出来る限り仕事で使うようにしていました。大事なことは、その経験を他人にシェアできるようにしておくということです。
例えば、「仕事での経験がなく、個人でも触ったことがないがFlutterを学びたい」と言っても、即戦力を重視する海外で採用されることは難しいはずです。自分は、前職で技術選定する立場だったので、出来る限り将来性が高く今後もやっていきたいと思う技術を採用するようにしていました。また興味ある技術を使って副業をすることもやりました。とにかく「仕事での経験」として語れるように自分の状況を変えて行きました。
仕事での経験が足りないと感じる点は、その技術を使った個人プロジェクトに取り組んで、そのリポジトリをシェアできるように準備しておきます。私は仕事でのReact経験が少なかったため、Reactを使ったアプリを個人プロジェクトで書いていました。また、Denoという新しいJavaScriptエンジンを使ったアプリを書いたりもしていました。さらに、READMEをしっかり書く、クリーンアーキテクチャで書く、コメントを書く、テストをしっかり書くなどのチーム開発で必要になるスキルもアピールできるように作っていました。転職活動の中で、技術課題を解くためにリポジトリに作品を提出したり、過去の個人プロジェクトのリポジトリを共有したりすることがあったので、時間をかけてやっていて良かったと思います。
身辺整理
日本を出て海外企業に就職するというのは自分にとっても、家族にとっても極めて大きな変化です。仕事、プライベート両方で用意周到な準備をしておく必要があります。
仕事を円満に辞められる準備をする
仕事では、スムーズな退職が出来るように、万全の準備をしました。具体的には、退職する1年ぐらい前から、自分がいなくなったら困るだろうと思うことを、書き出します。仕事のノウハウなどは勿論、自分のメールアドレスが管理者になっているサービスや、二段階認証の電話番号が自分の個人携帯になっているサービス、など細かな点も思い出すたびに書いておきます。
そして半年前には退職の意思を伝え、半年間かけて、同僚や会社が困らないように丁寧に引き継ぎを行います。具体的には、ドキュメントを書いたり、資料・自分だけしかわかってないコード、Gitリポジトリの整理をしたり、複雑な概念を説明したり、今まで自分がやっていた作業を同僚にやってもらいつつ、不明なところをサポートするなどです。
私はスタートアップでCTOをやっていたため、自分が担当する範囲がとても広く、このような長い時間をかけた引き継ぎが必要でしたが、結果的にはこれが円滑な退職に繋がりました。そのおかげで、今でも前職の仲間とは飲みに行ったり連絡を取り合うことができています。日本での仕事をきちんと終えたことは、後の海外転職活動でも極めて役に立ったのですが、それはまた次のエントリで書きたいと思います。
家族や友人へ周知する
海外で働くことを決意した直後から、同行する妻にはその思いを伝えました。一緒に海外移住に関することを話し合い、どこの国に行くか、ビザの手続きはどうするか、海外での仕事の見つけ方など、すべてを共有しました。二人で調べることで情報の解像度が上がりましたし、一緒に移住するんだという意識が育まれました。また、妻も日本での仕事があったため、早めに話しておいたことでしっかり準備して引き継ぎができ、円満な退職に繋がりました。常に前向きに僕の思いを理解し、サポートしてくれた妻には感謝しきれません。
親や友人にも包み隠さず自分の決意や状況を伝えました。早くから周りに「海外に行くぞ」と伝えていたことで、会うたびに「転職の状況はどう?」「海外移住の計画は進んでる?」と聞かれ、頑張るぞという決意に繋がりましたし、決めたことから逃げにくくなる、といういい意味でのプレッシャーになりました。「なんで海外で働きたいの?」「なんでポルトガルなの?」といった面接でも良く聞かれる質問に何度も答えることで、自分の中での思考が固まっていったのも良かったです。またポルトガルに行く思いを伝えていたことで、ポルトガルに住んでいる日本人を紹介してもらえたりもしました。
今回は海外で仕事をすることを決意してから、実際に転職活動を始めるまでに何を準備したかを書きました。やって良かったものから、これは無くても良かったかもと思えることまで書いていたらかなり長くなってしまいましたが、これから海外転職にチャレンジされる方の参考になれば幸いです。
次は、いよいよ転職活動について書いていきます。
この記事が気に入ったらサポートをしてみませんか?