始めに
こんにちは〜まんじです。
今回は駆け出しエンジニアの現実っていうテーマを書いていきたいと思います。
実際のところ、ネットでよく見る理想と現実は乖離があるてきなお話です笑。
*ちなみにここでいうエンジニアは、ウェブエンジニア、ソフトウェアエンジニアになります。
駆け出しエンジニアの現実6選
1. プログラミング学習が想像以上にしんどい
ネットで見るプログラミングを勉強して〜系を見ると、「ちょっとがんばればできそう!スキルが身に付く!」てきな雰囲気を感じるところですが、実際やってみるとプログラミング学習は想像以上にしんどいです。
- 何をどういう手順で勉強すればいいか分からない
- 全体像が見えない
- どれくらいやれば技術力がある状態になるのか分からない
- 作り方が分からない
- AIに聞いてもいまいちよくわからない
- プログラミング自体がつまらない
- ぶっちゃけ継続がしんどい
- ほんとにエンジニアになりたいのか分からなくなってきた
などなど、あげていくとキリがないぐらいしんどさポイントは多いです。
入門シーズンから実務入るまでの駆け出しシーズンもそうなんですけど、実際のところは実務入ってから1年ぐらいのまだ駆け出しエンジニアぐらいのシーズンも勉強や実装の学習部分でしんどいことが多いです。
覚えることが多すぎる、よく分からない部分が多すぎる、上司が高圧的で怖い、など。
あとは数日とか数週間やってできるようになるわけじゃないんで、数ヶ月単位で継続する必要があってすぐに結果がついてこないってのは最もつらい部分かと個人的に思っています。(まあ、なんでもそうだけど)
2. 仕事が難しすぎてついていけない
なんとか実務に入ってからも駆け出しエンジニアシーズン(歴で1年未満ぐらい?)は、仕事が難しくてついていけなくてつらいってのは実際問題あります。
めちゃくちゃセンスが良い人でも最初に入りたての頃は仕事が難しすぎて苦戦しがちです。
なんで苦戦するのかと言うと、いわゆる実務レベルのコードやアーキテクチャなどは自分で勉強している頃に比べるとめちゃくちゃ複雑になるからです。
エンジニアの仕事特有の作法のようなものも地味にありますし、そういったもろもろの周辺知識やコンテキストふまえて、難しいと感じがちです。
3. 現場にいるエンジニア達のレベルが高すぎて絶望
駆け出しシーズンのまだ全体像が見えない頃は「プログラミングやればスキルつくしいけるっしょwww」とか安直に考えがちなんですけど、実際問題、現場には歴で10年以上とかのベテランエンジニアとかはめちゃくちゃ普通にいます。
当然なんですけど、プログラミング使ってエンジニアの仕事してる人なんて既にそこには大量にいるわけです。
そういう界隈に入っていくとプログラミングが少しできるとかは優位性にならないというか、そもそもそれが当たり前な世界です。
なので、プログラミングを始まる前の「プログラミングをやればハイスキルになれるぜ!」とか思いがちな幻想が一瞬でぶっ壊れます。
すでにできるエンジニア達は大量にいるわけなので、ぴよぴよ駆け出しエンジニアになったところで、市場的に言えばスキルがあるとは全く言えない状態で、それが駆け出しエンジニアの実際のリアル。
プログラミングをやってもプログラミングを既にやってる人と比較されるので、優位性は簡単に作れません。
4. 給料が全然高くない(思っていたよりも全然稼げない)
プログラミングを勉強するモチベーションの1つとして、「プログラミングで稼ぐぜ!!!」とかがあると思います。
ただ実際のところ正社員でエンジニアの求人を見てみれば分かるんですけど、最初の駆け出しシーズンの頃の給料は別に高くはないです。
日本の会社の場合、未経験からだと、300万円代〜高くても400万代です。
たまに500,600万円代以上から新卒でスタートする人もいますが、そういう人は既に実務経験を長期インターンで1~2年がっつりやっていて大学が情報系だったりする人なので、そもそも完全に未経験からではありません。
「プログラミングをやって稼ぐぞ!」と思ってエンジニアになっても、最初の給料は別に高くなくて、かつ、普通に働いている場合は普通にサラリーマンな昇給ペースになってしまうという現実はあります。
実際、キラキラ系(に見えるような)エンジニアは、リアルワールドだとめちゃくちゃ少ないです。
言い方は悪いですけど、普通にソフトウェア開発ができるおっちゃんサラリーマン率が全体傾向としては多めで、年収とかも別にそんな高いわけじゃないです。
5. プログラミング(エンジニア)の仕事がつまらない
駆け出しシーズンはプログラミングとかエンジニアの仕事に幻想を抱きがちなんですけど、実際働いてみると分かりますが、かなり地味でつまらないと感じる人も多いです。
理想: エンジニアになればパソコン1台でどこでも稼げる(南国の島)
現実: 毎日毎日難しい開発作業を進めないといけなくてしんどい(オフィス出社必須)
実際、エンジニアになる前に抱いていた幻想はぶっ壊されることのほうが多い気がします。
一応補足しておくと、実務で1~3年ぐらいがんばってフリーランス化したり自由度が高い会社に転職するなりすると、南国の島てきなのは一応できます。
6. コードレビューでボコボコにされすぎてつらい
自分も経験しましたが、コードレビューでボコボコにされすぎてつらいってのも駆け出しエンジニアあるあるです。
エンジニアで仕事をすると開発してそれを上司などにコードレビュー依頼することになるんですけど、それが全然通らなくて大量にコメント返されて、永遠にタスクが終わらない、みたいな。
永遠にタスクが終わらないと精神的にしんどくなりがちですし、周りからも「こいつ大丈夫か!?」みたくはなりがち。
駆け出しエンジニアのためのTips
つらい駆け出しエンジニアの現実をふまえて、あんま駆け出しエンジニア読んでなさそうだけどTipsも書いてみます。
スキームを把握する
「プログラミング勉強してエンジニアになって〜」ってのは個人的には解像度が低めなので、あんまりおすすめできません。
- 具体的にどれくらいの年数をやるとどれくらいの年収になれるのか
- 具体的にフリーランスエンジニアはどれくらいのレベル感でなれるのか
- 具体的にフリーランスエンジニアになるとどういうライフスタイルが実現できるのか
- 具体的に転職すると年収はいくらぐらい上がるのか
- 具体的にエンジニアをしてて自分の理想としているライフスタイルを実現している人はいるのか
こういった具体的な部分を把握することが、大事です。
いわゆるスキームを把握するとか全体像を把握するとかゴールから逆算するとか表現できますが、その作業をやってあげることで、つらい駆け出しシーズンとかも必要な投資コストとして考えることができます。
例えば、「プログラミングやってエンジニアになってもずっと低収入で開発しないといけない」とかだったらそもそもプログラミングをわざわざ始める必要がないと思われます。
上に書いたようなメリットがあるから、そのために駆け出しシーズンを耐え抜く、てきな考え方みたいなものがすごく重要なのかなーと思います。
大学受験で~~~大学に入るために、毎日10時間勉強するってのと同じような考え方。
ぶっちゃけ、駆け出しシーズンはつらいことを受け入れる
- 自分で勉強している時期
- 実務入ってから1.5年目ぐらいまで
大体これぐらいが駆け出しシーズンぐらいのエンジニアになると思いますが、それらの時期が大変なことを受け入れてプログラミングをやることは継続するうえで重要です。
自分もプログラミングが楽しくなるまで〜の記事に書いているんですけど、フリーランスエンジニアをやれるぐらいまではぶっちゃけプログラミングは普通につらかったというか、プログラミングをやったことによって得られたメリットみたいなのはそこまで感じませんでした。
それなりにフレックスな働き方とかフルリモートとかはインターンとか正社員の頃からできましたけど、もっと自由度高い状態にはフリーランスになってからようやく、、、といった具合です。
まあまあ自由度高く働ける状態や仕事しながら専門性が高められるとかは実務にさえ入ってしまえばいけますが、それよりもさらに良い感じ(給料が結構高い、フルリモートでフルフレックス、とか)をプログラミングで得ていくためには実力を上げていくことが必要になります。
ぼくもなんですけど最初の頃はつらかったですが、収入も上がってきてフルリモートだったりスキルレベルは上がってきたのでそれぐらいまでくると徐々に楽になってきます。
あとついでにたまに平日の電車とか乗ると全体傾向としてみんなつらそうなので、そういうのを見ると「ソフトウェアエンジニアの仕事って悪くないんだな・・・」というのを痛感します。
駆け出しシーズンに「量を入れる」
結構大事だな〜と個人的に現場の雰囲気をみていて感じるのが、「量を入れる」ってのを駆け出しシーズンの最初の頃にやることです。
実務入る前もそうですし、実務入ってから1年ぐらいも「量を入れる」ってことをすると、量を入れてる最中はまあまあ大変なんですけど2年目以降にいろいろと世界が広がる感じはします。
ちなみに量を入れるってのは平日10時間ぐらい、休日も4~5時間やるっていう時間的な側面のお話です。
最初の頃に量を入れれる人は歴が浅い段階でも爆速成長していくんですけど、逆に最初からゆるいペースでやってると挫折していく率は非常に高めです。
個人的には0から1~2年目までにそれなりに正しい方向性をベースにいかに量を入れれるか、やれるかってのがめちゃくちゃ大事だと思ってます。そのタイミングでやれない人はそれ以降も多分できないからです。
まとめ
駆け出しエンジニアの現実(0~エンジニアなりたて初期シーズンは普通につらいことが多い)ってのと、Tipsを書いてみました。
ぼくも最初の頃は普通にしんどかった記憶が強めで、最初の頃は大変ですけどがんばりましょう!笑みたいなすげえ浅い結論に落ち着きます。
わりとまじで銀の弾丸みたいなこうすりゃ最高だぜみたいなのがなくて、数ヶ月単位での作業継続ゲームになります。
あとは正しい方向性というか勉強のやり方とかの土台を外さないようにするのも大事ではあります。
方向性掴んで、そこに量を入れる。