見出し画像

海外で就職した話

先日、3年半ほど働いたサイバーエージェントを退社しました。来月からはオーストラリアに移住して、現地の企業でソフトウェアエンジニアとして働きます。
あまり技術以外の記事を書くのは得意ではないですが、自分にとって大きな節目なのと、海外での就職を考えてる人に少しでもでも参考になればと思い、自分の就職談を紹介できたらと思います。

入社までの道のり

2017年に新卒としてサイバーエージェントに入社し、ABEMAでAndroidエンジニア(もしくは、Streamingエンジニア)としてアプリ開発に携わってました。

元々、海外で働きたい、海外に住みたいという願望があり、入社当時から海外での就職を模索していました。最初の1~2年は、特に海外で働くためのノウハウや知識もなかったので、とりあえずアメリカの知っている企業に片っ端から応募していました。何社からかは返事があり面接まで進むものもあったのですが、VISAのハードルが一番高く最終的にオファーをもらうまでには至りませんでした。最終的にはうまくいきませんでしたが、その中で面接のプロセスだったりVISAの知識などもついたので、結果的にはいい経験だったなぁと思っています。

そこで、2~3年目になると思考を変えて、カナダ、イギリス、オーストラリアのような英語圏を視野に入れるようにしました。自分の場合は人生において海外に住みたいという願望が第一に来ていて、事業ドメインなどには特にこだわりはなかったので、実際にウェブやアプリなどを触って、技術的に挑戦できそうなところであれば、一通り応募していました。

カナダ、イギリス、オーストラリアはアメリカと比べてVISAのハードルが低い印象で、応募していく中でいくつか面接に進むことができ、最終的には2020年の2月にオーストラリアの企業でオファーを頂くことができました。

コロナの影響

コロナの影響をもろに受けました。。。オファーをもらった2020年2月の時点では、コロナが中国から他の国々にちょっとずつ拡散しているような状態でした。日本では国内で10人/日程度でていた頃だと思います。オーストラリアで就労するのに必要になるのが一般的にTSSビザです。このVISAは条件を満たして応募さえできれば、通常2週間程度で下りるものなのですが、コロナの影響でVISAの処理が大幅に遅延していました。

公式では遅延が発生しているという情報しか出ておらず、最終的にいつVISAが下りるのか分からない、もしかしたら下りない可能性もあるかもしれないという不安を抱えつつ、VISAが下りるまではサイバーエージェントの方で働かせてもらっていました。(こんな状況で在籍させていただいて、本当にありがとうございます。)

最終的には約6ヶ月後にVISAがようやく下りました。ただオーストラリアは現状VISAを持っていても、国民しか入国することができないため、追加で渡航許可書を取得する必要がありました。これに関しては、現状オーストラリアの経済回復に大きく貢献できるとみなされる職業に対して付与されるとのことで、ソフトフェアエンジニアはそれに該当し、なんとか渡航許可書を取得することができました。

(6ヶ月後にVISAが出るとわかってていれば待てますが、いつ出るか分からない、最悪の場合下りないかもと思いながら過ごす6ヶ月は本当にしんどかったです。笑)

これでやっと海外で働けるようになったのですが、体験談をつらつらと書いてもあれなので、最後に自分が海外で働くためにやってきたことを紹介できたらと思います。参考程度に見てもらえるとありがたいです。

アルゴリズム

基本的にどの企業で面接をしてもアルゴリズムに関する問題が出されます。自分は、ほぼほぼアルゴリズムに関する知識がなかったので一から勉強しました。その中でも特に良かった物を紹介します。

Cracking the Coding Interview

アルゴリズムに関する問題の練習ができる本ですが、この本のいいところは面接官は何をみているのかや、面接時に気をつけること、レジュメの書き方など面接に関する本質的な部分も細かく説明してくれているところです。問題を解きつつ面接に関するノウハウも学べました。

JetBrains Academy (Algorithms)

Jetbrains Academyは、Jetbrainsが提供するプログラミングを学ぶためのサイトです。Algorithm以外にもKotlin,Javaなど様々なコースが提供されています。2021年の1月までは無料で使えるそうです。

それぞれのレッスンには依存関係がついていて、基礎から応用まで一通り学ぶことができます。自分は、基本的なデータ構造や解答手法、アルゴリズムの種類などをここで学びました。

LeetCode

LeetCodeは日本のAtCoderのようなサイトで、いろんなアルゴリズムに関する問題を解くことができます。自分の場合は英語で学びたかったのでLeetCodeを使っていました。

Easy~Medium程度の問題を一通り全部解いた後は、Daily Challengeで一日一問解くような形で進めていました。ここまでくると、Medium程度の問題であれば、ある程度解けるような状態になっていました。

英語

英語は面接時や就職後にもちろん必要になってきますが、オーストラリアに就職したい(おそらくイギリスなども)場合は、VISAを応募できる条件としてIELTSやTOEFLの点数が必要になってきます。自分が取得したTSS(Medium-Term)というVISAではIELTSだとOverall5.0以上が条件として求められます。自分の場合はOverall7.0を取得できました。

基本的には英単語帳をひたすらやったり、独り言などでスピーキングの練習などをやってましたが、その中でも勉強法としてあまり知られていないような自分なりの勉強法についていくつか紹介できたらと思います。

技術的なアウトプット

新卒入社当時からアウトプットは全て英語にするというルールを決めていました。なので、記事を書く場合はMeiumで英語で記事を執筆するようにしたり、スライドなどは基本的には図だけで成り立つようにし、どうしても文字が必要な箇所は英語にするようにしていました。また、OSSも意識して取り組むようにしていました。

こうすることで英語の勉強になるだけではなく、レジュメを書く際のネタになったり、海外からプロフィールを見られた時に成果物として分かりやすいようにしていました。

SpeakerDeck: https://speakerdeck.com/takusemba
Medium: https://medium.com/@takusemba
GitHub: http://github.com/takusemba

Word Up

WordUpというアプリです。これは単語アプリなのですがめちゃめちゃ愛用しています。

基本的な使い方としては、日々の勉強の中で知らない単語などを見つけた場合に、このWordUpに登録します。するとその単語がプールされ、次の日に単語の定義を選択問題で選ぶという問題が出題されます。その問題に正解すると、その単語が3日後にキューイングされます。3日後にまた正解すると1週間後、2週間後、1ヶ月後と期間を空けて同じように出題されます。最終的に1年後に正解できれば覚えてない単語プールから外れます。

自分の場合は1000~2000くらいの単語がプールされている状態になって、1日30~50問くらい解くような形で進めています。

LingoChamp

これも英語アプリで、リスニングやスピーキングを鍛えることができます。アプリに向かって話すことで、発音の正確性やリズム、強弱などを評価してくれます。様々な種類のレッスンが用意されているのですが、その中でも個人的に気に入っている箇所としては、スピーキングの際にただ文章を声に出して読むのではなく、アプリから流れた会話をその後に一呼吸おいて同じ文章を話すような形になるので、聞いた内容を一時的に覚えつつ、その後に同じ文章を自分で組み立てて発音しないといけないというところが良いです。

最後に

体験談を交えつつ、自分がやってきた勉強法について紹介してみました。海外に挑戦したい誰かの参考になれば幸いです。

海外で働きたい、海外に住みたいと思ってから実現するまでに3年半かかりました。日々自分の人生と向き合って、こつこつやるべきことをやってきて良かったなぁと思っています。今後の生活がめちゃめちゃ楽しみです。移住後は永住権を取ったり、いつかはアメリカに挑戦したりしたいなーなど色々と模索中です。

今までサイバーエージェントの皆さん、エンジニア界隈の皆さん、その他大勢の人にお世話になりました。来月の初旬から海外に行くということで、会えなくなるのは寂しいですが、今後どこかの勉強会やイベントなどでお会いできると嬉しいです。

今まで大変お世話になりました!

それでは、また。👋

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
479

こちらでもピックアップされています

#エンジニア 系記事まとめ
#エンジニア 系記事まとめ
  • 796本

noteに投稿されたエンジニア系の記事のまとめ。コーディングTIPSよりは、考察や意見などを中心に。

コメント (1)
むしろ決めてから3年で移住って(しかも専門職で)すごい!勇気を貰いました。移住はしないかもしれないけど、何事も成せばなるということですよね。渡豪後も心身健やかにご活躍されてください!
コメントを投稿するには、 ログイン または 会員登録 をする必要があります。