みなさまこんにちはで にそふ と申します。
私は新卒から6年間、建築設計事務所で働いてきましたが、エンジニア転職をすべく、30歳からプログラミングの学習を始めました。
ありがたいことに、今年の7月に2社から内定をいただき、これからエンジニアとして働く予定となっております。
プログラミング学習は仕事しながら行うのと、やめてから学習するのどっちがいいの?
エンジニア転職を決意し、プログラミングを勉強する際、「**今の仕事を続けながら行うか、仕事をやめてから学習するかどっちがいいのか?」**迷っておりませんか。
そういった方々に対して少しでも参考になればと思い、この記事を作成しました。
私の意見ではありますが、
仕事をしながらプログラミング学習を行うことの方がメリットが大きいのではないかと思いました。
どうして働きながらプログラミング学習をすることがメリットがあるのか?
⇒理由は以下3点です。
- 仕事をしながら学習を継続できるというアピールになる
- 転職の際に市場価値が下がらない
- 仮に挫折したとしても職を失わない
1.仕事をしながら学習を継続できるというアピールになる
**「自己学習を継続できるか」はエンジニアとして成長する上で非常に重要なポイントです。**企業はエンジニアになった後も学習を継続できる人材を求めているので、実際に仕事をしながら学習を継続できたことに関しては企業側が安心して採用を行える要素となります。
実際に私の場合、面接を受けた際のフィードバックに「仕事をしながら学習を続けたこと」が評価のポイントとして挙げられておりました。
「仕事をしながら学習を継続できる」ということはどの企業においても一定の評価材料となるでしょう。
2.転職の際に市場価値が下がらない
以下は転職の際にお世話になったキャリアアドバイザーさんから聞いたことです。
**個人の市場価値は仕事をやめた時点から下がっていきます。**仕事をやめてから次の就職までの時間が長くなるほど、市場価値が下がり、転職が成功しにくくなるそうです。
仮にエンジニア転職に挫折してしまった場合、他の職種の転職へ活動にも影響を与える可能性があります。
転職市場という観点からは、市場価値を下げないで転職を行えるので仕事を続けながら学習することの方がメリットがありそうです。
3.仮に挫折したとしても職を失わない
説明するまでも無いでしょう。
プログラミング学習に挫折する人はかなり多いです。挫折した後を考えると仕事を辞めることはかなりのリスクです。
挫折の原因として、「プログラミングが自分が想像していたものと違う」や「そもそもプログラミングがあっていない」という理由を挙げる人は少なくないと思います。
余談ですが、IT業界は業界としては伸びていて、華やかなイメージがあるかもしれませんが、プログラミングの作業自体は地味です。そこにギャップを感じでしまう可能性は十分考えられます。
もし挫折した時、逃げ道を用意しておくことは決して悪いことではありません。
仕事を辞めずに学習を行えれば、「挫折しても無職になる訳じゃない(笑)」という心的安全性は確保されるため、孤独な自己学習を進める上でのストレスはいくらか軽減されると思います。
挫折のリスクや心的安全性を考慮すると仕事をやめないという選択はありかと思います。
仕事を辞めて学習に集中した人の方が転職に成功しているのでは?
⇒ そんなことはありません。(キャリアアドバイザーの意見)
前提としまして、私はプログラミングスクールに通っており、キャリアアドバイザーさんの見解をもとにしております。(違っていたらご指摘ください)
仕事をしながらプログラミングの学習を進めること と 仕事をやめて学習に専念することの学習時間の比は概ね 3 : 1 です。これはプログラミングスクールの*夜間休日型(仕事阻止ながら学習)と短期集中型(仕事辞めて学習に専念)*の卒業までの期間を参考にしています。
その上で、**転職成功率は仕事をしながらプログラミングの学習を進めること と 仕事をやめて学習に専念すること 両者に差はないそうです。(キャリアアドバイザーの意見参考)
プログラミングの学習期間の比較
仕事しながら学習:仕事辞めて学習 = 3:1
転職成功率の比較
仕事しながら学習:仕事辞めて学習 = 1:1 (キャリアアドバイザーの意見参考)
転職成功者に仕事を辞めて学習に集中した人が多いと感じる理由は「短期集中型(仕事辞めて学習に専念)の絶対数が多い」というだけで、レベル感としてはあまり差はないとのことです。
あくまで、個人の頑張り次第ということです。
働きながら学習をすることのデメリットは?
⇒ 大変です。
なぜななら、仕事は自分で操作できない要素が多いからです。
学習に関して言えば、仕事をしながら学習するのと仕事をやめて集中して学習すること、どちらも大変です。
しかし、仕事をしながら勉強することは自分の都合に合わせて時間を確保することが難しいです。
残業が全くゼロの会社に勤めている場合は除きますが、納期の都合でどうしても残業しなければならない時や休日出勤をしなければならない時は仕事をしていればあるでしょう。
そう言った中で学習時間を捻出して学習を続けることはなかなか大変です。
私はプログラミングスクールに通っていたのですが、高い学費を払っても挫折してしまう人は一定数います。
長時間の残業や休日出勤等ある会社にお勤めの方は、働きながらエンジニア転職することはそれなりの覚悟が必要と思われます。
どのように学習すればいいのか?
この項目は実際に私が行ったことです。全ての人に当てはまるとは思いませんので、参考程度としてください。
プログラミング学習のポイントは
「エンジニア転職までの期間を定め、その間継続して学習を続けること」です。
以上より私がお勧めするのは以下2点です。
- プログラミングスクールに通う
- 生活をルーティン化する
プログラミングスクールに通う
私はテックキャンプというプログラミングスクールに通いました。そのため、以下はあくまでテックキャンプを参考にした意見です。
プログラミングスクールに通う最大のメリットは転職までの学習スケジュールを共有し、一緒に管理してくれることだと私は思います。なぜなら、プログラミング初学者は学習のスケジュールの管理が重要で、仕事をしながら管理することは非常に難しいと感じたからです。
独学でプログラミングを行う人の挫折の理由の多くは転職までの学習のゴールが見えず、一向に学習が進まないと感じるからだと思います。挫折しないためにも、転職までの学習スケジュールを立てることが重要です。
プログラミングスクールでは転職を前提とした独自の学習カリキュラムがあり、当該カリキュラムを終えれば転職活動ができるという明確なゴールがあります。ゴールに向かって前進していることが実感できることで、学習のモチベーションが維持できます。
また、ライフコーチという受講生の学習の進捗を管理する専門のメンターがおり、学習方法やスケジュール管理など、個々の最適な学習の進め方を相談できます。
スクールの学費は高いですが、その分挫折しにくい環境を提供してくれるので、高い学費を払う価値はあると私は思います。
生活をルーティン化する
毎日決まった時間に勉強する習慣をつけることが重要です。そのために毎日の生活を可能な限りルーティン化することをお勧めします。
具体的には
- 起床時間を決める
- 出勤までの学習時間を決める
- 退勤時間を決める
- 夜の学習時間を決める
- 就寝時間を決める
以上の決めた時間を守りを毎日繰り返すことを心がけると自然と朝と夜に学習する習慣が身に付きます。
私の場合は
6:00 起床
6:30~8:30 学習
20:00 退勤
21:30~23:00 学習
24:00 就寝
以上を半年間繰り返しました。
この中で一番難しいのは退勤時間を固定することです。
退勤時間は自分でコントロールできない要因が多分にありますが、誰かに迷惑をかけない範囲で早く帰ることを心がけましょう。転職する会社だから迷惑をかけていいと言う訳ではありませんが、帰る時間を決めて、その時間に帰宅できるように1日のスケジュールを組むと良いでしょう。
そして、一番重要なことは就寝時間を固定化することです。
なぜなら睡眠時間をしっかり取ることが翌日の学習や仕事のパフォーマンスに大きく影響するからです。
睡眠時間を削って学習すると、翌日眠くて朝の学習ができません。また、仕事の集中力も損なわれてしまい、結果的に帰宅時間が遅くなります。
私はこれができなくて何度も後悔しました。
1日の勉強の終わりの時間だけは厳守して睡眠時間を確保しましょう。
まとめ
メリット、デメリットはありますが、前述の通り仕事をしながらエンジニア転職すべく学習をすることは仕事を辞めてから学習することよりも個人的にはおすすめです。
私はどちらかと言えば慎重派なので大きなリスクを負いたくないという思いから、夜間休日スタイル(仕事をしながら学習)のプログラミングスクールに通いました。
もし、同じような価値観や考えの方がいらっしゃれば仕事を続けながら学習することが良いのではないかな、と思います。
最後に
私の体験から仕事をしながら学習をすることを推奨しましたが、もちろんそれが正解ではありません。色んな意見を参考にして、自分の最適解を見つけてください。
ただ、仕事を続けながら学習を行うにしても、仕事をやめて学習に専念するにしても、どちらもエンジニア転職は大変です。エンジニア転職を行うにはそれなりの覚悟を持って行動した方がいいと思います。
最後まで、ご覧いただきありありがとうございます。