BLOG

ブログ

  • Top
  • Blog
  • 最短で新人エンジニアが即戦力に!【超実践的教育の3ステップ】

最短で新人エンジニアが即戦力に!【超実践的教育の3ステップ】

ブログサムネイル
Crunchtimer株式会社

著者:クランチタイマー株式会社

Twitter Icon

クランチタイマーはアプリ・Webサービスなどの開発を手掛けるWebデベロッパーです。ブログ記事ではロジカルで最適な手法を伝え、課題解決の手助けとなる情報を惜しみなく提供していきます。



こんにちは!クランチタイマーエンジニアの小林です。

この記事では、新人エンジニアが即戦力になれる教育方法についてご紹介していきます。

エンジニアが増えた場合、進行中のプロジェクトの簡単なタスクから少しずつ仕事を覚えてもらうという教育方法をとっている企業も少なくありません。

しかしこの教育方法では

  • ・教育にかかる負担が増え、教育担当者が時間をとられてしまう
  • ・プロジェクトによって習得できる技術スタックがバラバラになる
  • ・各メンバーの技術レベルや習得状況を把握できない

といった問題が発生してしまいます。

この記事では、実際にクランチタイマーで実践している方法をご紹介していくので、エンジニアの教育方法に悩みを抱えている方は、ぜひご参考にしてください。

ステップ1. ロードマップの作成

まず、エンジニアを教育する際に最初に用意すべきなのは、ロードマップです。

ロードマップとは、目標を達成する際に取り組むべき課題を順番にまとめた設計図を指します。

ロードマップで得られるメリット

ロードマップの大きなメリットは、膨大にある情報や技術の中から優先して何を学べば良いかが明確になるということです。

その他にもロードマップを作成することで、

  • ・同じ課題をクリアすることで、習得するスキルの統一が可能。
  • ・教育担当者も学習サポートや進捗把握がしやすい。
  • ・ゴールまでのステップが見えやすく、モチベーションを維持しやすい。

といったメリットが得られます。

ロードマップの内容

ここからは、クランチタイマーで実際に使用しているロードマップをご紹介します。

クランチタイマーのロードマップは「準備編」「初級編」「中級編」の3つに分けて作成しています。

ロードマップ(準備編)

ロードマップ(準備編)

「準備編」は本格的な学習に入る前に、現状の実力を測るために用意しています。

具体的には、簡単なサイト1ページをレスポンシブも含めて模写するというものです。

またHTML&CSSの知識以外に、GithubやDockerなど学習を始める前に知っておいてもらいたい技術の項目も作成しました。

学習期間は1週間に設定しています。

初級編

初級編

次の「初級編」では、基本的なWebサイトを1人で作れるレベルになることを想定しています。

WordPressでオリジナルテーマを作成してポートフォリオサイトを作るという学習内容です。

デザインは見本のサイトを参考にするため、模写に近い形になりますが、実際に使用する画像や細かいレイアウトなどは自由に作ってもらいます。

作成したサイトは、実際にサーバーにあげてドメインと紐付けやSSL化までおこないます。

そのため、インフラ周りの基礎知識も習得することができます。

なお「初級編」は1ヶ月を完成目標にしていますが、クランチタイマーではほとんどのメンバーが4週間以内に完了しています。

中級編

中級編

「中級編」では、基本的なWebアプリケーションを1人で作れるレベルになることを目標としています。

Laravelでレストランレビューアプリを作成するという学習内容です。

データベースのテーブル設計や入力された内容によって、表示が動的に変わるといったバックエンド開発の基礎的なスキルを学べます。

またログインユーザーの権限によって操作に制限をかけたり、データベースに登録されているデータを条件で絞って検索したりといった、少しレベルの高い実装も習得できます。

「中級編」は2ヶ月以内に完了させることを目標に取り組みますが、ほとんどのメンバーは目標期限以内にクリアできます。

クランチタイマーではこれら3つの課題を合わせて3ヶ月以内にクリアすると、その後実務に参加していただいています。

ロードマップを作成する際に重要なポイント

1.使用機会の多い技術を習得できる内容にする

業務内容によって使用機会の多い言語や技術は異なりますが、習得するものは活用する機会の多い技術を習得できるように設定しましょう。

「モダンだから」「基礎だから」という理由から業務で使用しない技術を習得をしても、思うような効果は得られません。

2.参考にした記事情報やよくある質問はドキュメント化してまとめる

ロードマップを活用する中で参考になる記事はだいたい似通ってくるものです。

参考になる記事や何度も出てくる質問があれば、ドキュメント化してそれを共有することで、毎回質問に回答するコストを省くことができます。

またロードマップの内容は、全てのメンバーに周知・理解してもらうことも重要です。

新人エンジニアの質問に対して、誰でも迅速に答えられるようにしておきましょう。

3.課題に対して達成条件と過程を分かりやすく設定する

課題内容が不明確なままでは、何度も質問に対応する必要が出てきてしまいます。

少し考えさせる余地は残しつつ、出来るだけ具体的に分かりやすい課題内容とゴールを設定するといいでしょう。

例えば上記で紹介した、ロードマップ初級編を例にします。

課題に対して、

  • ・ヘッダーはスクロール時も画面上部に固定させる
  • ・serviceページのコンテンツは画面幅に応じて3列→1列にレスポンシブ対応できる
  • ・worksのアイコンはfontawesomeのアイコンを使って実装
  • ・ページネーション機能はプラグインを用いて実装

といったように、どのような形で実装できていればOKなのか分かりやすく設定しましょう。

4.定期的に進捗を確認する

進捗確認は1週間に1回ほどのペースで定期的におこないましょう。

思わぬ進捗遅れを見逃さずに済み、結果コストの削減に繋がります。

ステップ2. OJT

OJTとは「On-the-Job Training」の略称で、仕事をしながら実践的なトレーニングをすることを指します。

OJTでは、新人エンジニアにとっても学んだスキルをすぐに実務で活かすことができるので、技術習得スピードの向上に役立ちます。

クランチタイマーでは、ロードマップで習得した技術を活用して入れる案件からOJTをおこないます。

OJTでは業務の進め方や環境構築の仕方、プルリクエストの出し方など、ロードマップをこなすだけでは習得が難しい内容を学んでいきます。

OJTで得られるメリット

OJTの大きなメリットとして、実践的なトレーニングによって実際の業務に直結したスキルや知識を身につけやすいことが挙げられます。

その他にもOJTによって

  • ・実務経験を積むことで、業務の全体像を理解することができる。
  • ・先輩社員と密にコミュニケーションを取ることで、人間関係を構築しやすい。
  • ・自分が所属するチームや会社の文化や価値観を理解しやすい。

といったメリットが得られます。

その一方で、指導者の知識やスキル、人間関係によってトレーニング効果に大きな差が出てしまうこともあるため、注意が必要です。

OJTをおこなう際に重要なポイント

1.こまめに進捗確認をおこなう

OJTを始めたばかりの新人エンジニアは分からないことが多く、作業に詰まってしまいがちです。

質問することにも慣れていないため、自己解決もできず時間を浪費してしまうことになります。

OJT中もこまめに進捗確認をしておくことで、作業の進みを遅らせないように気をつけましょう。

2.問題解決は原則本人に任せる

もし新人エンジニアから分からない部分の質問があっても、すぐに解決方法を教えたり原因を教えないようにしましょう。

まずは

  • ・どんな手順で不具合が発生したのか
  • ・何を調べて、試したのか
  • ・どこが原因だと推測しているのか

をヒアリングすべきです。

間違っている認識や手順があれば、そこから指摘するようにしましょう。

それでも解決しない場合は、解決の手がかりになりそうな記事などを共有し、最終的な解決は本人の力で達成できるようにサポートしてあげることが重要です。

もしそのタスクが解決しないことで、プロジェクトが遅れてしまうような重要なタスクであれば、あらかじめ新人エンジニア一人に任せることは避けましょう。

3.わずかな成長も見逃さず褒める

OJTを開始したばかりの新人エンジニアは、先輩とのスキルや作業効率の差を目の当たりにして、ショックを受けてしまう場合があります。

モチベーションや作業効率を維持するためにも、わずかな成長でもいいのでしっかりと褒めることで、前向きに仕事に取り組むことができるようになります。

具体的には

  • ・1人で不具合の解消ができた
  • ・設定した期限内にタスクが消化できた
  • ・コードが綺麗で読みやすくなった

といった内容は最初のうちから成長を感じやすい部分なので、少しでも良くなっていると感じたら、恥ずかしがらずどんどん褒めるようにしましょう。

ステップ3. 社内の研修制度

社内研修とは、自社の社員が講師になっておこなう社内で実施する勉強会や研修です。

クランチタイマーでは、社内研修の一種としてLT(Lightning Talk)をおこなっています。

LTとは技術的なテーマについて短いプレゼンテーションをするもので、通常は5分から15分程度の短い時間でおこないます。

短時間から可能なため準備に多くの時間を割く必要がなく、気軽に開催することができます。

また学んだことを気軽に共有するというスタンスなので、知識が豊富なメンバーだけでなく、新人エンジニアも積極的に参加しやすいのも特徴です。

社内研修のメリット

社内研修は、多くの企業で採用されているスキルアップの手段の一つで、社員の能力向上や業務改善につながる重要な役割を果たしてくれます。 

その他にも社内研修によって、

  • ・最新技術のキャッチアップができる。
  • ・社員同士のコミュニケーションが促進され、チームワークの向上に繋がる。
  • ・社内のノウハウが共有されるため、業務改善に繋がる。
  • ・社員のモチベーション向上やキャリアアップの機会になる。

といったメリットがあります。

その一方で、社員のスキルレベルや担当業務によっては研修内容が合わないといった問題も起こりやすく、運営には注意が必要です。

【おまけ】エンジニア教育に役立つ共通ルールの設定

ここまでご紹介したもの以外にも、エンジニア教育に役立つものに共通ルールが挙げられます。

こちらを作成する目的としては、新人エンジニアが学習を進める際に守って欲しいルールや進め方を明確にし、お互いの認識のズレをなくすことにあります。

共通ルールで得られるメリット

共通ルールを作成することにより、

  • ・毎回同じ内容の説明をする時間を削減できるようになった
  • ・ルールの伝え漏れがなくなった
  • ・ルールを忘れてしまっても、再確認が容易になった
  • ・新しいメンバーにルールが浸透しやすくなった

といったメリットが得られます。

ルールを作成する前と比べて作成した後の方が、チームとして共通の認識をもって学習を進めやすくなります。

新人エンジニア側としても、口頭で説明されるよりも理解しやすく、何度も見返せるためルールを知らなかった・忘れてしまったというミスが少なくなりました。

共通ルールの内容

実際にクランチタイマーで作成したルールの大まかな内容は、以下の通りです。

毎週の進捗報告に関するルール

1週間の学習進捗は、その週の日曜日までに報告してもらうなど、ルールを設けましょう。

定期的に自分で進捗を報告する習慣を付けてもらうことで、常に進捗を意識した学習スケジュールを建てられるようになります。

学習に遅れが発生している場合は、理由も合わせて報告してもらうことで、学習中盤に中だるみを防げます。

質問の仕方に関するルール

質問の仕方についても、いくつかルールを作成しています。

1.基本的に教育担当者に質問してもらう

あらかじめ誰に対して質問をしたらいいかを明確にしておくことで、質問することへの抵抗感を減らすことが出来ます。

また教育担当者以外が新人の質問対応に時間を取られることがなくなるので、組織全体のタイムロスを減らすことにも繋がります。

2.30分考えて分からなかったことは、速やかに教育担当者に質問してもらう

自力で考えるためのタイムリミットは、あらかじめ決めておきましょう。

まずは自分1人で考えさせることで成長を妨げずに、課題の途中に1人で悩むという時間のロスも減らすことができます。

「分からなかったら聞いて」といった曖昧な伝え方は控えて、時間はしっかり〇〇分・◯時間など明確に設定しておくことがおすすめです。

3.調べたり試したことを踏まえて質問してもらう

質問をする際には、聞きたい内容、解決したいエラー、解決のために調べたことや試したこと、これらをセットで報告してもらいます。

そうすることで、分からない部分を教育担当者に丸投げしてしまい、自分で調べて解決する力が育たないというリスクを減らすことができます。

また返答する教育担当者も、返答にかける負担を減らすことができ、タイムロスにも繋がるでしょう。

進捗遅れのペナルティに関するルール

進捗遅れが発生した際のペナルティを明確にすると、学習に緊張感を持たせることができます。

クランチタイマーでは、ロードマップに取り組んでもらう際には1週間単位でスケジュールを設定します。

このスケジュールに対して2回以上遅れてしまった際には、やむを得ない理由で遅れてしまった場合を除き、その時点でインターンをやめてもらうようにルールを定めています。

少し厳しく感じるかもしれませんが、実際にOJTなどで実務に入ってもらった際には決められた期限までに仕事を完了させるというのはとても大事なことなので、こちらのルールを設定しています。

最低出社日数に関するルール

クランチタイマーでは、インターン生に学習期間中週2日は事務所に来てもらうようにしています。

初めのうちからリモートで学習していると、既存メンバーとの仲が深まりにくくなってしまい、質問をしにくい環境が生まれてしまうためです。

ただし、チャットやビデオツールを使用しての質問の回答は、無駄なコストや時間が発生しやすくなります。

できる限り、対面で質問してもらいましょう。

共通ルールを作成する際に重要なポイント

共通ルールを作成する中で、先輩エンジニアにかかる負担をなくし、お互いに無駄な時間をなくすためにも大事だと感じたポイントがあります。

  • ・入社直後にしっかりと内容を説明して理解させる
  • ・内容をむやみに変更しない
  • ・やむをえずルールが守れない場合の対処法も明記する

まずは入社直後にルールの説明と質問対応をおこない、しっかりと内容を理解してもらうようにしましょう。

また、メンバーがルールを誤って理解しないように、1度決めた内容はできるだけ変えない必要があります。

体調不良や予測不能の事態でルールを守るのが困難な場合の対処方法も、事前にしっかりと決めておきましょう。

おわりに

最後まで記事を読んでいただき、ありがとうございました。

この記事が、新人エンジニアの教育に悩む人たちの役に少しでも立てば幸いです。

教育の方法には正解はないですが、こちらの記事を参考にしながら、自社に合ったやり方を模索していただければと思います。

また、クランチタイマーではWebサイト制作からスマホアプリ開発まで幅広く、さまざまな制作の依頼や相談をお待ちしております!

少しでも興味を持っていただけた方は、ぜひ一度クランチタイマーへご相談ください!

この記事をシェア  

link-icon

筆者

小林 翔

ジムトレーナーから転職し、クランチタイマーでエンジニアをしています。Laravel、Vue.js、Next.jsなどのフレームワークを使用したWebアプリケーション開発やWordPressを使用したWebサイト制作の経験があります。 これまでの開発を通じて学んだ知識を分かりやすく皆様にお伝えしてまいります。

最新情報を確認する

CONTACT

お気軽にお問い合わせください。

TEL082-299-2286

NEWSLETTER

代表の佐々⽊が⽉に1回お届けするメールマガジン。
国内外スタートアップの最新情報や最新技術のサマリー、クランチタイマーの開発事例紹介など、ITに関する役⽴つ情報を中⼼にお送りします!