はじめに
先日ある企業からフロントエンドエンジニアのポジションで内定をいただきました。この記事では約2年半、どういう学習を経てきたかを振り返ってみたいと思います。
ちなみに、「未経験でも○○をすればエンジニアになれるかもしれない」といったような方法論などは記載しません。こういったケースがありました、という記録であり、再現性はあまり高くないと思います。
同じような境遇でフロントエンドやバックエンド、フルスタックのエンジニアを目指している方にはあまり参考にはならないのではと思います。
転職できた理由
最初に、転職することができた要素を挙げるとするなら、次の3つでしょうか。
- 運が良かった
- 英語の読み書きや会話
- コロナで仕事がフルリモートになったので勉強する時間が作れた
2020年11月から本格的にコードを書く勉強を始めたので、ゼロから始めてかかった時間は実質2年半程度です。後付けの理由になりますが、それぞれについてまとめていきます。
【運が良かった】
転職する上でネックになると思っていた点は実務経験の薄さと年齢でした。実務経験の薄さについては後述しますが、企業やチームの求める採用候補者の条件で、年齢は優先順位がそこまで高くなかったようでした。このような企業は少ないと思いますので、巡り合えたという点で、運が良かったとしました。
【英語の読み書きや会話】
英語とした理由は2点あり、一つ目は最初に学習を始めた言語がPythonだったため、英語の文法に近く馴染みやすい言語だったことから、スムーズに学習が進んだ点です。後から振り返ってみると、最初に触れた言語がC#やC++などだったら挫折していた可能性が高いです。学習するにあたって英語の情報ソースやYoutubeのチュートリアル動画が豊富だったことも大きかったです。調べ物は日本語の技術ブログのQiitaやZennの記事を参考にすることが多かったですが、実装したい機能でカバーできない部分を外国人のYoutube動画で補完することができました。
二つ目については、転職までの学習を効率化するという目的でCodeChrysalisというプログラミングブートキャンプを受講したのですが、こちらで英語が必須だった点です。
CodeChrysalisは外資系のブートキャンプで、講座の受講前に入学試験に合格する必要があります。試験はインタビュー形式で、試験官は外国人であり、英語での会話となります。AtCoderのような競技プログラミングのテスト形式ではなく、LeetCodeやCodeWarsで出てくるような問題で、JavaScriptで簡単な関数を口頭で作成します。英語が全く話せない方にとってはコースの受講の可否が相当厳しいのではと思われます。また、講座ではインストラクターもクラスメイトも外国人だったので、英語が必須でした。
【コロナで仕事がフルリモートになったので勉強する時間が作れた】
毎日通勤で往復2時間かかっていたので、この時間を含め就業時間以外で時間が作れたのは大きかったです。また、ブートキャンプのクラスは平日夜19:00~22:00だったのですが、通勤していたら19:00からの参加は難しかったと思います。
プログラミングを学習するにあたって何から始めたか
何をどのように学習したかについて、時間軸で振り返ってみたいと思います。続きはこちら。
コメント