何がベストなの?新人エンジニアの教育方法と成長について考察してみた

2018.10.1

こんにちは!Findy で副業をしております、桑原 (@kuwahra_jsri)です。

エンジニア(特にWeb業界)の新卒入社・未経験での中途入社など、どこの企業さんでも新人を抱える企業さんには、必ず「教育コスト」がかかっていることかと思います。いかに効率よく教育させるか?どのように教育したら最も成長曲線を最大化できるか?

これらの点について、教える側と教えられる側の両方を経験したことのある筆者の体験談も含めて考察してみましたのでお話したいと思います。

※今回の記事はあくまで筆者の意見であり、実際には他にも様々な方法があるかと存じます。
※以下、本記事では未経験の方も「新人」と呼ぶこととします。

教育方法

一般的に教育方法として以下の3パターンが多いと思います。

  • ① 社外の有料研修
  • ② 社内の独自研修
  • ③ OJTで案件にアサインし、先輩が教育

もちろん、それぞれの方法でメリット・デメリットはあります。

① 社外の有料研修

主に大企業の新卒に対して選択されている印象です。メリットとしては、

  • 業界に対して網羅的に講義してもらえる
  • 大人数で受講すると企業にとってコストパフォーマンスが高い
  • 有料のためサポートが手厚いこともある
  • 全員がほぼ同じレベルに達する

点が挙げられます。
逆にデメリットとしては、

  • 新人一人ひとりの得意分野の把握が難しい
  • 新人の成長曲線が測りづらい
  • 既知の技術があったとしても全員が同じカリキュラムを受講せざるを得ない
  • 研修内容の見直しがされていないことがある

という点が挙げられます。

こちらの方法では、新人の成長度がほぼ平滑化されるため、新人のスキルに対するある程度の安心を考えられることが何より大きそうに感じます。

逆に、「自社でほぼコントロールができない」ことがデメリットの大きな要因になるかと思います。Web業界の技術は日進月歩ですので、研修内容もその年度によって見直し、変更されることが望ましいですが、それも依頼先の企業に依存するため、費用対効果でどちらの企業に依頼するかが悩ましい部分ですね。

② 社内の独自研修

次は社内研修を見ていきましょう。IT業界でもベンチャー企業や中小企業は、社内で独自の研修カリキュラムを作成・受講させる企業が多い印象です。こちらのメリットは、

  • 研修内容を自由に変更できる
  • 新人の成長度を測りやすい
  • 新人の得意・不得意を把握しやすい
  • 外部に公開することで自社の宣伝になる

デメリットとしては、

  • 研修カリキュラム作成・メンテナンスのコストがかかる
  • 研修運営にリソースを割く必要がある

以上の点が挙がると思います。

こちらの方法のメリット・デメリットは、社外の有料研修と裏表の関係のように考えられますね。すなわち、「自社ですべてコントロールができる」点がメリットであり、「全てを自社でやるコストがかかる」ことがデメリットになるといえるでしょう。

しかし、新人全員の技術の平滑化よりも、一人ひとりの得意分野や、やりたいことも把握しやすいため、適材適所にメンバーを配置できるようになるかと思います。これも大きなポイントになるのではないでしょうか。

③ OJTで案件にアサインし、先輩が教育

最後に OJT (on-the-job Training) です。こちらの方法も、中小企業やベンチャー企業、スタートアップ企業で採用されている印象です。メリットは、

  • 実務ベースのため、戦力になりやすい
  • リソース・コストの全てが投資になるわけでなく売上にもつながる

という点かと思います。
デメリットとしては、

  • 教育担当や案件に依存する
  • その企業でしか活躍できないスキルしか身につかない可能性がある
  • ついてこれず、退職してしまう可能性が高い

OJT という方法は、筆者の感覚としてはかなりリスクのある方法だと考えています。業務に携わるメンバーや環境によっては、本当に辛い内容になりかねません。

ちなみに、筆者が新卒で入社した企業では3番目の OJT でしたが、辛いものでした。(今振り返ってみれば、とてもためになることが多く本当に感謝していますが)
メンターの先輩エンジニアのスキルがとても高く、理解できず質問をすると余計に謎が増える、という経験が多かったです。

新人は、道がわからない

よく新人の方から耳にする言葉として、「何がわからないか分からないので、質問ができません。」というものがあります。これは筆者も物凄く経験があります。

業務の指示にしても、タスクの割り振りに対しても、先輩エンジニアはこの点をしっかり考慮する必要があるかと思います。

Webアプリケーションやシステムの開発は、非常に複雑かつ幅広い知識を求められることが多いです。そのため、研修を受けたとは言え、浅く広く学ぶか、業務特化で一部のスキルを身に付けるか、どちらかが新人の場合は多いかと思います。

研修を受けたことがある方は業務で少し深い分野に差し掛かると、とたんに何をすれば良いのか分からなくなる経験をされた方も多いのではないでしょうか?

質問のできる雰囲気、環境づくり

筆者の経験から、新人には時間制限をかけて質問をさせるようにしています。
具体的には、あるタスクを着手し始めた時、

  1. 5分程度悩んでわからない場合
  2. 30分悩んでわからない場合

の2点です。

1点目は、タスク内容を把握した際、そもそも理解ができていないこともあります。その時いきなり教えるのではなく軽く自身で調べさせる事にしています。それでもわからなければ、そもそも調べ方もわからない確率が高いため、丁寧に一つ一つ教えた後作業に入らせています。

2点目は、着手はできておりますが、途中で躓いているパターンですね。こちらの場合、ある程度何が必要なのかは理解している事が多いです。そのため、ヒントを出すようにすると、その新人の成長が促せると思います。大事なのは、教えることよりも、「本人が気付く」ことにあると筆者は考えています。

一番かかるのはコミュニケーションコスト

上記のことを、先輩側でも逆に確認するようにすると効果は大きいです。教育を受けている側は質問がし辛いと感じていることが意外と多いです。教える側はいつでも質問は welcome のスタンスですが、「今質問しても大丈夫だろうか?」「忙しそうなので、作業を中断させてしまうのが申し訳ない…」と、気を使ってしまいがちにあります。

しかし、質問を待っているといつまでも聞いてこともあるため、期限に間に合わなくなったり、全く違うベクトルに向かって走ってしまうこともよくあると思います。そのため、先輩側でも定期的に聞いてあげると、教わる側も心の壁がなくなっていき、質問してくるようになる事が多いです。

業務は他社/他人と一緒に行うので、必ずコミュニケーションが発生します。しかし、そのコミュニケーションコストが、実際は最も高いと筆者は感じております。またそのコミュニケーションを怠ると、今度は技術的負債と共に、後の修正コストが肥大化する傾向にあります。

これはチーム内でもそうですし、他部署や客先、特にエンジニア以外の方々とのコミュニケーションはコストがかかると思います。

教育は企業の成長のためには必要なコスト

最後に、筆者が以前拝見した記事を共有させて頂きたいと思います。

ぬるま湯 or 過重負荷のチームを脱却せよ–伊藤直也が「1人CTOナイト」で話したヒント

こちらの記事は、主にチームの成長についてのお話をされていますが、記事内で伊藤さんは「ヒューマンマネジメント」についてこの様に述べておられます。

『同じ仕事を振るときも、例えば「これは作業を行う場です」と伝えるのか、「学習する場です」と伝えるのかで、最終的に出てくる結果が全然違うという話があります。だから、ちゃんと良いフレームを使いましょう、使わせるようにしましょう。これがフレーミングになります。』

こちらの発言は私も非常に同感しております。ただタスクを振るだけでは新人の成長の度合いに大きな差が出る可能性があるため、しっかりフレーミングしてタスクを振ってあげることが大事だと感じました。


(画像は同記事内より引用)

またチームの雰囲気作りも大切です。上の画像のように、チームが最も成長するのは「心理的安全性」が高く、かつ「責任」もある場合だそうです。こちらも、筆者は実感として同感です。

以上、新人教育について様々述べてきましたが、ベストな方法はないと思います。教育をする側・受ける側ともに色んな方法があり、また考えること、準備することもたくさんありますが、それらを加味しても企業の成長のためには必要なコストですので、しっかりここは頑張っていきたいところですね!

またそういう土壌がある企業を選ぶ目を養うことも大事だと思います!

Findy では、GitHubのリポジトリから、エンジニアのスキル偏差値を計算する機能がありますので、個々人のアウトプットを頑張られている方はぜひ一度試してみてください!

また、Findy Freelance というフリーランス・副業エンジニア向けのサービスでも、フリーランスとして、または副業としてどうキャリアを作っていくかのサポートも行っております。

読んで頂きありがとうございました! 宜しければ、エンジニアの皆様はFindyでご自身のスキル偏差値を測定してみてください。

[正社員の方]
ハイスキルなエンジニアのプレミアム転職サービス Findy

[フリーランスの方]
フリーランス・副業エンジニア向けの単価保証型の案件紹介サービス Findy Freelance

また、Findyでは年齢や勤務形態を問わず、様々な働き方で採用をしています。興味のある方は、こちらからご応募どうぞ!

Findyブログを購読してみませんか?
エンジニアの働き方やFindyの技術的な話などをお送りします!

GitHub連携するだけで、スキルを解析。
スキル偏差値やプロフィール情報を基に、人気のテック企業からオファーが届く

https://findy-code.io/
  • Category

  • About

  • Service

    フリーランス・副業向け
    単価保証型案件紹介サービス

    ハイスキルなフリーランス・副業エンジニア向けに案件紹介

    https://freelance.findy-code.io/
    ハイスキルなエンジニアの
    プレミアム転職サービス

    スキル偏差値が高いエンジニアに、人気のテック企業からオファーが届く

    https://findy-code.io/
    リアルタイムAI求人票採点サービス

    AIを使ってリアルタイムに求人票を採点

    https://findy.us/