こんにちは、進撃する人です。
イケイケベンチャーでエンジニアをするとMac bookに囲まれながらキラキラしてかつ自由な働き方に見える裏であまり他の方は触れないですが、やはり最初の数ヶ月はきついです。
今回は「もし低スキルの状態でエンジニアになると、最初の3ヶ月はマジでつらいよ…」ということを書いていきたいと思います。
現在の実力と求められるスキルに乖離があると辛い
確実に言えることは「現在の実力と現場で求められるスキルに乖離があればあるほどつらい」ということです。
ミハイ・チクセントミハイという方が執筆した有名な書籍「フロー体験喜びの現象学」には下記のような関係性があることが書かれています。
これ面白いなぁと思った。
業務ほぼ未経験でレベル高い会社入ったら挑戦レベルに対して自分のスキルが合わず強い不安に晒されるのはこの図を見れば明らか。
逆にスキルレベルに対して挑戦レベルが低いと退屈、無気力になる。
ちょうどいいレベル感の挑戦をすると「フロー状態」に入るみたい。 pic.twitter.com/XLn5julqMO
— 進撃する人 (@mikasa_program) 2019年11月13日
自分のスキルレベルが低い状態で高いレベルに挑戦をすると「強烈な不安」に晒されます。
特に最初の3ヶ月は
- 何もわからず
- 人に聞きづらく
- 会社に慣れず
- 会社特有の慣習にも慣れず
といった感じで、「わからないことだらけ」です。
あなたが最初からGitを使いこなし、フロントもサーバーサイドも歴3年以上くらいのエンジニアと同等にかけるのならともかく、未経験からエンジニアになる人にそんなことできるわけがありません。
かなり高い確率でエンジニアになってからの最初の3ヶ月は色々苦しい時期を経験することでしょう。
Progateだけやってあとはコミュ力で乗り切ると入社後多分死ぬ
特にキツイのが「簡単な勉強だけやっておりて、コミュ力で面接を乗り切って入社したパターンの人」です。
実務未経験でプログラミング勉強してエンジニアになった方の大半は
「Progateやってどこかの教材を使ってちょっとした作成、削除、更新、編集ができるアプリを作った」
多分この程度だと思います。
結構残酷な真実ですが、ぶっちゃけこのレベルだと最初の3ヶ月はかなりつらいと思います。
私も最初の3ヶ月はめちゃくちゃ怒られました。
受託(開発と制作)をやっている会社に常駐した当初、スキル不足すぎて
- Gitはまともに使えない
- コーディングは遅い
- 完成品が欠陥だらけ
という状態でして、「全然できないじゃんか!」と叱られ続けてきました。
6ヶ月を過ぎたあたりからだいぶできるようになり、プレッシャーから開放されるようになりましたが….
最低限通用するのに必要な学習量はこのくらい
自分の会社はRubyではないですが、
Rubyの場合
- Progateを一通りこなし
- Railsチュートリアル3週
- 不足部分(SQL、JavaScript、HTML、CSS、Git)をudemyなどの教材で潰す
- 自分でポートフォリオを作り込む(いかに差別化するかを考える、運用面まで考える)
少なくともこれくらいしておかないとちょっと厳しいかなと思います。
フロント、制作側なら
- Progateや市販の教材で一通り経験を積む
- 問い合わせフォームを自力で作れるようになる(PHP、HTML)
- クラウドソーシングなどで低価格で案件をとっていき、実務経験を積んでみる(LP10~20本くらいやればそれなりにかけるようになると思う)
- HTMLとCSSをほぼググらずにかけるようになる
これくらいやれば最初の3ヶ月の負担はだいぶ減るかなと思います。
とはいえ、「準備しなさすぎだとメンタルが病んでしまうリスクが高い一方で、準備しすぎで成長が遅くなるのも考えもの」とは思います。
となると目安としては「3ヶ月~1年間の期間」のうちに「500~1000時間程度の学習」をしてから会社に飛び込むのがいいのではないかと思います。
1年間で考えるなら平日2時間、土日8時間の学習を1年間継続すれば1200時間程度捻出できますし、あなたが会社を辞めて無職であれば1日10時間×3ヶ月(つまり900時間はできる)やれば十分でしょう。
結構ガッツリやるので、正直、継続はかなり難しいです。
もし「これだけやるのは絶対挫折する…」という方はプログラミングスクールを利用するなり研修があるSESの企業
に入るなりすれば良いと思います。(自分もプログラミングスクールを利用して転職しました)
スキル不足の状態で今苦労してる人へ
ぶっちゃけ辛いと思いますが、3ヶ月〜6ヶ月抜ければだいぶ楽になります。
最初の3ヶ月なんて、「自分は無能なのではないか….」と毎日落ち込んでいました。
それでも「耐えるしかない」という状況です。
そんな時に自分がしていたことはTwitterの友人(エンジニア歴4年以上の先輩に相談をする)でした。
しんどい時には「誰かに相談をする」もしくは「鬼のように勉強に没頭する」くらいしかないので、Twitterでエンジニアの友人を作りいつでも相談できる環境を作ることをおすすめします。
ただし、辛すぎたら逃げましょう
でも本当にキツすぎて精神的にオワコンになりそうならその時は逃げましょう。
仮に3ヶ月働いて鬱になってしまった場合、
- 健康な状態で働けるようになるまで数ヶ月~数年かかります。
- 会社側から見ても心を病ませてしまった責任や投資してきた労力や金額がパーになる
病気になって病んで辞めてしまうより少し休職して復帰し、その後バリバリ仕事する方が絶対にありがたいです。
休みましょう。
休んでも心が和らがなかったら、その時はやめましょう。
最悪SESとかでやり直すのもありです。(こんな技術力低い現場があるならほぼ未経験の自分でもやれるじゃんという自信を持てるはず)
ある程度技術がつけば比較的美味しい職業なのも事実
「入社して自分の技術力と会社の技術力に違いがありすぎて、ツライ状況が続くような会社」は、技術的にレベルが高く良い会社です。
自分の技術レベルが全く追いついていないからツライのであって、逆に「普通に業務をこなせるし、辛くない」くらいの状況になる頃にはまぁ、レベルは相当上がっているはずです。
エンジニアは最低限の技術力と業務遂行能力(コミュ力や仕様を理解する力)があれば
- 出勤せずにリモートワークで仕事をすることができる
- 私服勤務をしてもいい
- 高単価(ポジショニングがうまければ年1000~狙えるのも事実。)
- 色々と緩い
- 合理的な職場が多く老害が少ない
- 自由が多い
そんな働き方が可能なのです。
なので、辛かったら周りの信頼できる人に相談しつつ、業務に慣れる3ヶ月~6ヶ月を乗りきるしかないです。(辛かったら逃げてください)
まとめ
「ツラいということは一旦受け入れた上で、耐えつつ、どうしても耐えられなかったら逃げてもいい。」というのが個人的な意見です。