即戦力を育てるエンジニア研修のポイント

即戦力を育てるエンジニア研修のポイント

この記事がおすすめの方

  • エンジニア研修満足度が低く課題を抱えている方
  • 早期に戦力化する人材を育てる研修内容を知りたい方
  • 新人エンジニアの育成方法を模索している方

近年のIT人材不足により、プログラミング未経験や初心者をエンジニア職で採用し、自社で育成する企業も増えています。未経験者や初心者が挫折せず早期に戦力化するために、エンジニア研修は重要な役割を担っています。
経験者を採用した場合でも、研修次第で自社の職務への適応速度が変わってきます。
そこで、本記事ではエンジニア研修の基本的な作り方と戦力化する人材を育てるために必要な研修内容をご紹介します。

エンジニア研修の開催形式

エンジニア研修の開催形式には主に「社内研修」と「社外研修」の2つがあります。それぞれの特徴とメリット、デメリットを解説します。

1.社内研修

社内研修は、企業が自社のリソースを活用して行う研修です。経験豊富な社員が講師となって教育します。
受講者と研修を行う講師が同じ組織にいることで、即時にフィードバックができたりするなど、密にコミュニケーションがとれることが特徴です

メリット

  • 社内のシステムやプロジェクトに特化した内容を入れ込むことができ、現場で活きるスキルを身につけることができる
  • 会社の文化・ビジョンに基づいた研修を作成できるため、社内文化を浸透させることができる
  • 講師や施設など、自社内のリソースを活用するため、費用を抑えることができる

デメリット

  • 社内の知見に限られるため、業界全体のトレンドや新しい知識が取り入れにくい
  • 社内のリソースを逼迫し、講師担当者の業務に影響が出る可能性がある

2.社外研修

社外研修は、外部の研修機関やセミナーなど、社外のリソースを活用して行います。専門機関が提供するカリキュラムに従って研修を受ける形式で、業界トレンドなども踏まえた質の高い研修ができることが特徴です。
近年は一般的な研修機関だけでなく、ラーニングマネジメントシステム(LMS)などのオンラインツールを導入し、効率的に教育する企業も増えています。

メリット

  • 業界トレンドなども含めた専門的な知識を持つ講師から学べるため、質の高い教育を受けることができる
  • 社内のリソースを使用しないため、研修担当者の負担が軽減できる
  • eラーニングやLMSを使用することで受講者は自分のペースで学習を進めることができ、管理者は学習進捗の追跡や評価を自動化し、個々の受講者に適したフィードバックや指導を行うことができる

デメリット

  • 外部の講師や会場などを利用する場合は、社内研修に比べてコストが高くなる場合がある
  •  カリキュラムや内容が一般的となる可能性がある

学習方法

スキルの習得方法は主に3種類に分類され、座学、実践、現場でのOJTとなります。それぞれの特徴を見ていきましょう。

1.座学
多くの場合、研修の前半で座学が行われます。
エンジニアとしての心構え、プログラミングや開発の概念、具体的な言語に関する基礎的な内容をインプットします。
2.実践
具体的なケーススタディで、実際にコードを書いたり、ソフトウェアを開発したりします。特に技術を要する開発スキルの向上において非常に有効な手段です。技術を身につけ定着させるために、ハンズオンで学習することで、理論だけでは掴みにくい言語の深い知識の獲得や開発技術を獲得することができます。作成したプロジェクトやコードに対してフィードバックを受け、繰り返し改善を行うことでスキルが向上します。
3.OJT
OJTは、現場での教育と指導を通じて、実務に慣れるために実施します。経験豊富な先輩エンジニアからの指導を受け、現場で使える知識や業界のノウハウを身につけます。またプロジェクトの進行を経験することで、プロジェクトマネジメントスキルも習得することができます。
日常業務を通して学ぶことで、迅速に戦力化する人材へ成長します。

エンジニア研修の作り方

新入社員を早期に戦力化するエンジニア研修の作り方をご紹介します。
研修のゴールや自社の状況に合わせて、前述した開催形式や学習方法を組み合わせることがポイントです。さらに、職種や学習言語が違う場合は、それぞれのカリキュラムを導入することをおすすめします。 具体的にポイントを見ていきましょう。

開催形式の組み合わせ

自社の状況や新人エンジニアのレベル、目的に合わせて、社内研修と社外研修を適切に組み合わせることが重要です。
例えば、コストはあまりかけられないが、自社のミッションとして最新技術を習得する必要がある場合、基礎内容は社内研修で行い、最新技術の講習を社外研修で行うことで、目的に適した研修とすることができます。

職種別のカリキュラム 

エンジニア内でも細分化された職務によって学ぶべき内容が異なるため、職種や学習言語ごとにカリキュラムをカスタマイズすることが必要です。
例えば、フロントエンドエンジニア向けにはJavaScriptやReact、
バックエンドエンジニア向けにはJavaやデータベース、
インフラエンジニア向けにはネットワークやクラウドサービスといった具合に、専門性を持たせることが求められます。担当職務に合わせて学習すべき優先順位を明確化することで、戦力化につながります。

新人エンジニア研修の例

具体的な研修の作り方を、例を用いてご紹介します。
「新人フロントエンドエンジニア研修」
対象者:フロントエンドエンジニアの新卒採用者
育成期間:入社式~3ヶ月間

1.基礎技術スキルの習得
達成指標
簡単なウェブアプリケーションやウェブページを独力で作成できる
カリキュラム内容
主要なフロントエンド技術(例:HTML、CSS、JavaScript)を使って基本的なウェブページやアプリケーションを作成できるようにする
開催形式 / 学習方法
社内研修・社外研修/座学・eラーニング
2.コード品質とレビュー能力の向上
達成指標
コードレビューのフィードバックを反映し、質の高いコードを書けるようになる
カリキュラム内容
クリーンコードの原則を理解し、他のエンジニアとコードレビューを行う
開催形式 / 学習方法
社内研修/座学・ワークショップ・実践
3.問題解決能力の向上
達成指標
特定の課題に対して適切なアルゴリズムを選び、実装できる
カリキュラム内容
実際のプロジェクトで発生する問題を解決するためのアルゴリズムやデータ構造の知識を身につける
開催形式 / 学習方法
社内研修・社外研修/座学・eラーニング・OJT
4.チームワークとコミュニケーション能力の強化
達成指標
スプリント計画やデイリースクラムで積極的に参加し、貢献する
カリキュラム内容
アジャイル開発手法を理解し、スクラムミーティングで効果的にコミュニケーションを取る
開催形式 / 学習方法
社内研修/実践・OJT
このように具体的な目標と達成指標があると、研修内容の選択もスムーズです。職務に合わせてカリキュラムを選択し、自社の状況や研修ニーズを考慮して開催形式を選択することをおすすめします。

エンジニア研修 カリキュラムの例

ここで一般公開されている企業の研修カリキュラムの事例をご紹介します。

事例①株式会社リクルート

企業の特徴
株式会社リクルートは、多岐にわたる事業を展開しており、特に人材関連サービスや情報提供サービスにおいて国内外で高い評価を得ています。社風としては、「圧倒的当事者意識」を持って積極的に事業に関わることが推奨されています。

研修概要

  • 目的:配属前に実施される新人研修で、以下の3つの目的を掲げています。
    1. さまざまな技術領域の講座を受講し、興味関心を広げ、新たな好奇心に出会う。
    2. 現場で求められるスタンスを理解し、実践する。
    3. 気軽に相談できる同期を作り、互いにサポートし合う。
  • 研修期間:受講者によって2〜3.5ヶ月に及ぶと公開しています。

研修の特徴
入社前に行われたテストを基に、受講者の理解度・習熟度に合わせた講座内容を実施しています。リクルートの研修は技術的な内容に加え、事業企画への理解を深めるプログラムも含まれています。これは「圧倒的当事者意識」というリクルートの社風を育成する目的があります。

最終的なゴール
新入社員が自社のビジネスモデルやプロジェクトに迅速に適応し、実戦で即戦力として機能できる能力を養うことを目指しています。具体的には、フルスタックの開発能力およびプロジェクトの各フェーズ(企画から開発、運用まで)を理解し、実践できるエンジニアを育成することです。

研修のボリューム
研修プログラムは、広範囲にわたる知識と技術をカバーしており、基礎から応用まで段階的に構成されており、実践的なプロジェクトにも参加します。

開催形式
研修は主に内部での集合研修とオンライン学習を組み合わせたハイブリッド方式で行われます。コロナ禍の影響を受けて、オンラインでのリモート研修も増えていますが、対面での実践的なワークショップやグループディスカッションも重要な役割を果たしているという意図があるようです。

具体的カリキュラム
技術的な能力だけでなく、ビジネススキルや法律知識、セキュリティ意識の向上も意図したプログラムとなっています。

  • 基礎スキル: Linux操作、Git/GitHubの使い方、プログラミングの基礎(Java, JavaScript, TypeScript)
  • フロントエンドおよびバックエンド開発: React, Next.jsの利用、Spring Bootを使用したMVCフレームワーク開発
  • ソフトウェア開発の理論と実践: テスト駆動開発、オブジェクト指向設計、データモデルとドメインモデル設計
  • セキュリティ: 基本的なセキュリティ知識から、攻撃と防御の実践まで
  • チーム開発とプロジェクト管理: アジャイル開発手法、要件定義、プロジェクト管理
  • ビジネススキル: 事業価値とエンジニアリング、企業と法律

出典:株式会社リクルート エンジニアコース新人研修の内容を公開します!(2023年度版)

事例②サイボウズ株式会社

企業の特徴
サイボウズ株式会社は、グループウェア製品の開発・販売を手掛けており、チームワークを重視した企業文化が特徴です。社員が「自分らしく」働ける環境づくりを重視し、多様な働き方や自由なコミュニケーションを奨励しています。

研修概要

  • コンセプト:『新入社員メンバーに、"自信を持ってチームにジョインできた!" 』
  • 目的:サイボウズの新人研修は以下の目的を掲げています。
    1. 開発・運用本部のチームや人、体制、風土・文化を理解する。
    2. チーム活動の前提となる共通の知識を学び、体験する。
  • 研修期間:約2.5ヶ月の研修を行っています。まず、約2週間の講義期間が設けられ、その後約6週間にわたるチーム体験が行われます。チーム体験は3つのチームに分かれ、それぞれ2週間ずつ実施されます。最後に、約2週間の実践開発研修が行われます。

研修の特徴
サイボウズの研修は、アプリ開発、データベース管理、テスト、セキュリティに関する情報を網羅し、新入社員が技術だけでなく、ビジネスアプリケーションの全体的な流れを理解する能力を養うことを目指しています。

開催形式
研修はリモートで行われ、学習コンテンツ(リアル講義・動画視聴)、チーム体験、配属面談、実践演習などが含まれます。研修はリモートを前提としていますが、孤独感を防ぐための夕会(週3回30分、月水金)が設けられています。

最終的なゴール
新入社員が自信を持ってチームにジョインし、即戦力として活躍できるようになることを目指しています。具体的には、技術的なスキルとビジネスアプリケーション全体の流れを理解し、チームでの実践力を身に付けることを重視しています。

研修のボリューム
研修プログラムは幅広い知識と技術をカバーしており、基礎から応用まで段階的に構成され、実践的なプロジェクトにも参加します。

具体的カリキュラム

  • 基礎技術: Webアプリケーション基礎、Docker入門、ソフトウェアライセンス
  • 高度な技術: ローカライゼーション、アクセシビリティ、Webフロントエンドテストと自動化、セキュリティ
  • 開発プロセス: アジャイル・クオリティ、スクラムトレーニング、テスト自動化
  • ビジネススキル: ITコミュニティ文化と情報発信、テクニカルライティング、デザイン
  • 特別講座: 特許について、ソフトウェアエンジニアリング組織、リリースの仕組み

出典:2023年のエンジニア新人研修の講義資料を公開しました

新人エンジニアの育成期間

通常2-3ヶ月が一般的です。時間の確保が難しい場合は1-2ヶ月で実施します。短い期間で集中的に専門知識とスキルを習得する必要があります。

新人エンジニアの目標設定

一般的な研修においても、研修対象者にどうなっていてもらいたいかの目標を定めて研修を実施するのと同様に、エンジニア研修においても最終ゴールを決めることで、カリキュラムの内容が明確化します。

早期に戦力化するエンジニア研修に必要な5つのこと

現場でよくある課題として、新人エンジニアが研修後、知識の習得段階で止まっており、実務練習が足りないことがあげられます。また、入社時研修は一般基礎内容のみ実施され、配属後に職種別での研修内容が足りておらず、課題となるケースも多いようです。そのため現場に配属された際に求められる専門性の高さから挫折してしまう人がでることもあります。このような課題を解決する重要事項を5つご紹介します。

①実際の業務に近い内容を実践練習で経験する

研修後に現場で即戦力として活躍できるよう、実践的な内容を盛り込むことが重要です。具体的には、コードを書く実習を多く取り入れたり、実際のプロジェクトに近い課題を解決する経験を練習で積んでおきます。OJT研修前に実際に経験する環境を提供しましょう。

②個人に合わせた研修を実施し、離脱率を低下させる

受講者のスキルレベルはそれぞれ異なります。新人エンジニアと経験者では学習すべき内容や難易度が異なるため、それぞれに合ったカリキュラムを提供することが重要です。各受講者のレベルと職種別に適正な研修内容の選択を行うことで、即戦力化となり、結果的に離脱率が低下します。

③問題解決力や分析力をカリキュラムに含める

実務で問題が発生した際や原因を分析する際の解決方法を考える力を身につけるために、過去の実例などを元に問題形式で考える学習を取り入れます。チームでプロジェクトが動いていても、まずは自身の力で課題解決方法を導く力を身につけることで、エンジニアとしての対応力が強化されます。
④受講者の習得度を把握し、フォローする
座学で学習した知識、実践で行った内容の習得度合いを把握しましょう。成長度合いや苦手分野などがわかり、フォローするべき点も見つかりやすいです。フォロー体制をしっかり整え、わからない点や悩みを解決できる環境を提供することが重要です。

⑤日常的に学習する意識を醸成する

研修で得た知識で満足してしまうと、OJTや実務でまだ触れていないプロジェクトチームに入った際に苦手意識が高まる可能性があります。IT業界は非常に変化が早いため、常に新しい知識・スキルを身に着ける必要があります。新人エンジニアだけでなく、エンジニア職は常に新しい情報のインプットが必要です。日常的に学習する意識付けをすることで、即戦力化した後も業務のクオリティーをあげることにつながります。

まとめ

エンジニア研修を効果的に行うためには、自社のニーズに合わせた開催形式や学習方法を選び、実践的なスキルが身につくカリキュラムを作成することが重要です。また、各受講者に合わせた指導とサポートを行うことで、離脱率を低下させ、早期に戦力化する人材を育成することが可能です。