駆け出しエンジニアが１年以内に「エンジニア」を辞めてしまう問題

最近、知り合いの駆け出しエンジニアと連絡が取れなくなりました。

彼が勤めていた会社の社員さんから、ネガティブな理由で数ヶ月前に退職されたとお伺いしました。
別の会社へ転職したのか聞いてみたところ、どうも仕事自体が嫌になってしまって、フェードアウトするような形だったようです。
SNSアカウントも削除されており、連絡の手段がなくなってしまったため真意は分かりませんが、アカウントを消すぐらいなので「エンジニア職」自体を辞めてしまったのではないかと推察しています。

私自身、知り合いから辞職者が出たことが初めてで、驚きと同時に、そこまでになってしまう前に彼に何かしてあげられなかったのかと考えさせられました。

ネット上に自ら発信する人が少ないのであまり目にすることはありませんが、彼以外にも**駆け出しエンジニアが１年以内に「エンジニア」を辞めてしまう問題**は、我々が想像する以上に発生しているでしょう。

実際、私のTwitterの中でも多くの反響をいただきました。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">駆け出しエンジニアが1年以内にエンジニアそのものを辞めてしまう理由おそらく第一位<br><br>「先輩の時間を奪う罪悪感が精神的に耐えきれなかった」<br><br>最近は事前にたくさん勉強して来る真面目な人が多いので、質問することに対しては、恥ずかしさより申し訳なさや不甲斐なさが勝ってしまうのではないかと</p>&mdash; よーすけ＠地元移住したエンジニア（元採用担当） (@yosapro) <a href="https://twitter.com/yosapro/status/1486287063830138886?ref_src=twsrc%5Etfw">January 26, 2022</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

今回は、昨今の駆け出しエンジニアを取り巻く環境を整理し、エンジニアを辞めてしまう原因と、立場別の対策を考察していきます。
同じ境遇にいる駆け出しエンジニアさんや、ジュニア層を持つチームの皆様のチームビルディングにお役に立てられれば幸いです。

# お知らせ
続編を書きました。
より具体的なアクションとマインドセットについて10個の対策を載せています。

https://qiita.com/yosaprog/items/d14e018cf279e31bb532

# 注意点
この記事では、Web業界のエンジニアにフォーカスしてお話しします。SI業界や、事業会社のエンジニア職では事情が異なる場合があります。

# コロナ禍による環境の変化
## リモート勤務の定着
2020年4月、東京都を中心に発令された緊急事態宣言を起点に、Web業界ではリモートワークが一気に浸透しました。

言わずもがな、リモートでの仕事は、オフィスで顔を合わせて仕事をするよりも、コミュニケーション面で難しさを感じることが多々あります。
後輩側が気軽に質問しにくくなることのみならず、先輩側も後輩のタスクの進捗状況が把握しにくくなります。

また、家で一人で仕事をすることになるので、物理的に孤独を感じやすいです。
仕事での失敗など、メンタル的にダメージを受けたときに、オフィス勤務よりそのダメージが大きくなります。

## エンジニア転職ブーム
コロナによってキャリアを見直す機会が増え、プログラミングスクールやインフルエンサーの影響で、エンジニア転職ブームが到来。
要求されるポートフォリオのレベルは年々上がり、高学歴・IT業界出身などの経歴を持ってる人の参入も増えてきています、
この時期に入社できた人は選ばれた人材であり、入社時の年収も数年前の未経験水準よりかなり上がっているので、相当の期待も背負っています。

## 未経験採用の縮小
2020年が特に顕著でしたが、リモート移行で現場が大変だった時期などは、ジュニア層の教育などしている余裕もないので、未経験採用枠は大きく縮小されました。
なので、なんとか潜り込めた人は、基本的に同期がいません。
新卒や大企業の中途採用は事情が異なると思いますが、中小規模の開発会社ではいい人がいれば採るという通年採用なので、自分が入社したタイミングでは基本的に一人です。
一緒に頑張る仲間も、ライバルとなる存在もいないため、入社してからはいつも優秀な先輩の背中を見ては自身の未熟さを比べがちです。

---

以上の項目はあくまで一部ですし、全ての辞職ケースで要因となる訳ではないですが、2019年以前と比べると大きく環境が変化していることを意識しなければなりません。

# 原因

## ① 先輩の時間を奪う罪悪感
責任感が強い真面目な人だと、任された仕事がなかなか思うように進まないことで、自分を責めるようなことがよくありますが、これはチーム全体の進捗に対する間接的な迷惑に過ぎません。
より罪悪感を感じやすいのが、「エラーが自分自身で解決できず、わからなくて先輩に質問をし、**先輩の時間を奪う**」という直接的な迷惑をかけた時です。
「先輩が自分の相談に乗らなければ、同じ時間でもっと重要度の高い仕事が進んだはずなのに…」と考え、どんどん自分の中に抱え込んでしまうのです。

## ② 質問がしにくい
①に近い内容ですが、質問がしにくい環境そのものに起因するものです。
同じオフィスにいれば、その先輩が忙しそうかどうかを目で確認することができますが、リモートワークだとタイミングを伺うことができません。
エラー解決をお願いする時も、画面共有でのやりとりがしづらいと感じることが多いでしょう。

聞きたいことがうまく聞けずに、質問する機会が減っていき、次第に仕事自体が嫌になってしまう現象です。


## ③ 仕事ができるようにならない / 成長を実感できない
多くのWeb系開発会社では、新人であってもコードを書く開発業務を担当してもらいますが、現場で求められるレベルは、学習期と比べて難易度が一気に上がります。
これは誰しもが通る道ではあるものの、本人にとっては挫折しかねない大きな壁です。

また、与えられるタスクの難易度が適切でなく、例えばいきなり難しいものを振ったり、いつまでも簡単なものや開発と直接関係ないような雑用ばかり任せ続けると、伸び盛りの１年目に仕事への充実度が上がらず、成長も実感できないようになってしまいます。

## ④ やりたいことじゃなかった / 新たにやりたいことが見つかった
こればっかりは本人の問題なのでどうしようもありませんが、

* 実際にプログラミングを仕事にしてみたら、それほど楽しくなかった。
* 他にやりたいことが見つかった。

なのでエンジニアを辞めるというものです。
精神的に追い込まれてという類ではなく、これじゃなかったと後から気が付くパターンですね。

## ⑤ 人間関係
人間関係で合わなければ、その会社を辞めて別の会社に移れば概ね解決することが多いのですが、エンジニアそのものを辞めてしまいたいと思いつめるまで心に傷を負うケースもゼロではないはずです。

---

比較的当てはまりやすそうな原因を５つほど見てきました。
改めて見てみると、現場からのアプローチ次第では、辞職まで追い詰められることなく続けられそうなものも多いです。

# 対策
## 後輩側
駆け出しの皆さん、安心してください。

チームの皆さんはあなたがしばらく役に立たないことを理解して迎え入れています。
教育に時間がかかること、質問対応する時間を用意しなければならないことも理解しています。
もし、現場のエンジニアとマネジメント層の思惑が噛み合っておらず、先輩がめんどくさそうな態度を取ったりしたら、それはあなたのせいではなく、マネジメント層の責任です。
その事実はしっかりと伝えてください。
陰口みたいで気が引けるかもしれませんが、あなたが辞めてしまうほどの事態になってから上司の耳に入ることは、双方避けたいはずです。

しかし、あなた自身も迷惑をかけることに慣れてしまってはいけません。
時間を奪う罪悪感に対しては、より伝わりやすい質問の仕方を工夫する必要はあります。
質問内容をしっかり練って、想定される疑問を洗い出しておくなど、より短い時間で解決に向かうための準備を怠らないようにしましょう。

新人の頃はどうしても自分一人ではどうしようもないことがあります。
だから、質問すること自体を躊躇ってはいけません。
そこはプロとして、チーム全体の生産性を考えて、頼るべき時は頼ってください。

勤務時間内で成果が出ないことに焦りを感じるのであれば、平日夜や土日に補足の勉強をしても構いません。
ですが、それらが必要なのはせいぜい最初の数ヶ月から半年程度です。
次第に技術的にも成長し、プロダクトへの理解も進み、半人前ながらもなんとか食らいついていくことができるようになります。

また、リモート環境下であれば、報連相はよりこまめに行うことを心がけましょう。
先輩や上司に、タスクの進捗状況や今困っていることなどをどんどん送りつけるのです。
テキストコミュニケーションは、対面や電話などの同期的な連絡手段とは違い、相手の時間があるタイミングで読んでくれます。

時には、どんなところを直して欲しいか直球で聞いてしまっても良いでしょう。
現状を変えたいという熱意をしっかり伝えたことで、悪い方向に進むことはあまりありません。

もしもそれでも理解が得られなさそうなチームであれば、なるべく早く職場を変えましょう。
人を変えるのはとても大変ですが、あなたが職場を変えるのは簡単です。

少なくとも、これだけは覚えておいてください。
**あなたがエンジニアそのものを辞めたいと思う前に、解決策は必ずあります。
一人で抱え込まず、誰かに相談してください。**

## 先輩側
仕事を中断されて質問対応をするのはストレスに感じるかもしれません。
しかし、チームや会社が新人を迎え入れると判断したのですから、あなたもその組織の一員として、できる限り協力してあげて欲しいと思います。

彼/彼女にとっては、あなたの会社がエンジニアとしてのファーストキャリアです。
参画直後が一番不安な状態です。
「気軽に聞いてくれて大丈夫だからね」という雰囲気作りを最初に行っておくことで、その後のコミュニケーションに対する心理的ハードルを下げてあげられます。

タスクの割り振りにも気を付けてあげてください。
いきなり難しいタスクを任され、何日も進捗がないまま、しばらくしてから全然進んでいない報告を受け、
**「まだ終わってないの？」** と冷たくあしらわれるまでが短期離職の王道パターンです。
タイミングによっては実現が難しいかもしれませんが、少しずつプロジェクトに慣れてもらえるような段取りができるのであれば、気を配ってあげられると、自然と成長してくれるかもしれません。

また、人に教えることは、自身も勉強になることが多いです。
教育に携わったことがある人なら理解していただけると思いますが、自分が理解することと、それを他人に説明することは、必要なスキルが異なります。
直属の世話係のような、メンター的ポジションを任されたのなら尚更チャンスだと思って、優しく教えてあげてください。

後輩がある程度育ってくれば、あなたが今担当している比較的簡単なタスクはどんどん巻き取れるようなポジションに成り上がってきます。
そうすれば、あなたはよりクリエイティブでやりがいのある仕事に集中することができます。

もしも人間的にどうしても反りが合わないのであれば、その後輩にキツく当たったりはせず、上司に相談しましょう。
どんなことで困っているかをきちんと報告し、チーム全体での改善に協力してあげてください。
時には担当を変わってもらうことが、お互いのためになるかもしれません。

## マネージャー側
私はエンジニア組織のマネージャーになったことはないですが、これまでの経験を踏まえて自分の考えを述べさせていただくと、マネジメントする立場の方が行えるアクションの中で、１年目の新人の辞職リスクを減らす効果が高いものは、

- **丁寧なオンボーディング**
- **日々の報告をさせること**
- **高頻度で1on1を行うこと**

などが挙げられます。
高頻度の1on1は最初の数ヶ月程度だけでも構いませんが、とにかく会話の機会を増やすことが、「自分のことを気にかけてくれているんだな」という安心感に繋がります。

また、ご本人のみならず、チームメンバーとのコミュニケーションの中で、「新人さん、最近どう？」と間接的なアプローチを通じて、先輩エンジニアから見た後輩の姿をヒアリングすることもとても大切です。
悪い知らせはなかなか本人から聞けないことも多いので、地道な情報収集がより良いチームビルディングに繋がるでしょう。

もし自分の新人時代を忘れてしまうぐらいベテランの方は、今一度このコロナ禍で転職してきたチャレンジングな新人が、現場では意外と脆いかもしれないと覚えておいてあげてください。

# まとめ
辞職の原因のほとんどはコミュニケーション不足から起こるものです。
お互いが見えにくい環境へシフトし始めた現代だからこそ、話す・知るという原始的な連絡手段を大切にしてみてはいかがでしょうか。

せっかくIT業界に飛び込んできてくれたエンジニアのたまごたちに、これ以上悲しい思いをして欲しくなくて書きました。
ご意見・ご感想・うちの会社ではこんな取り組みしてるよ！など、コメントお待ちしております。