新人研修で必要なこと


最近弊社で新人教育がうまく効果を発揮できていないことが話題になりました。

2年くらい新人さんを面倒見ていて問題点がいくつかあったので、ほかエンジニアの人と協議の上で「ここを直したらどうか?」と提案したら猛抗議を受けたのでここに書きなぐっておきます(笑)

弊社の新入社員の入社時のスキルレベル

うちの会社は中小のSIerなので学生さんのレベルもお世辞にもいいとは言えません。
学生時代まではプログラミングなどは全く知らず、会社に入ってから研修で0から始めるという人が多いです。

弊社の研修内容と期間

以下のような研修を3ヶ月かけて行います。

ITの基礎

ビット計算からシステム開発、ネットワーク、セキュリティ、システム開発、DB、アルゴリズムなど基礎的な知識を座学でお勉強

ビジネスマナー研修

外部機関を使って名刺交換などビジネスマナー研修

基盤研修

リナックスのコマンドなどを勉強

JavaSE・JavaEE研修

総合演習(Java)

2週間程度、5名くらいのチームでシステム開発をしていきます。

問題点

新入社員の皆さんには悪いけどうちの会社に入ってくるような学生さんは売り手市場だけあってレベルが低いです。
会社も学力試験して最低限コミュニケーション取れればいいやって感じで取っています。
なので素晴らしい教育をしたところでそこまで大きな効果は出ないだろうというのあります。
その前提で聞いて貰えればと思います。

目標設定が曖昧

上記に書いた研修内容は題目しか調らず研修資料などはもらっていないのですが、正直座学レベルでも頭に入っていない社員が多いです。
教育部に教育に使った資料を渡すよう依頼したのですが受講生の新入社員からヒアリングするように言われました。
ヒアリングした結果、全容を理解できないと言っているのに目標設定をしてそれを達成できるかまで見てあげていないことが明らかです。

研修内容のミスマッチ

エンジニアはコンピューターサイエンスを勉強する必要があるか?→YESだと思います。
しかし新人研修でコンピューターサイエンスを勉強する必要があるか?→NOだと思います。

理由は新人研修は限られた期間である一定上の現場で必要なスキルを身に着けないといけないからです。
1つ目の目標設定が曖昧というのとかぶるのですが研修の結果どんなスキルが見についてほしいか?という設定ができていないため、とりあえず必要そうな題目を詰め込んで3ヶ月で駆け足で終わらせています。
現場からすると学生時代に基礎的な知識を身に着けていない人はとりあえず動くプログラムを書ける知識を最優先でつけてもらって、あとから必要な知識は自分で身につけてほしいです。
総合演習ではスケジュール管理基本設計まで新入社員にやらせていますが、そのせいで設計がガタガタになっています。
2ヶ月前までプログラムも書いたことない子たちに設計をさせて失敗させてだめだったね?で終わらせてしまっている感じです。
研修後の発表を聞いたら
~ができなかった
~がだめだった
といった意見が多くそれを聞いた上役の方々から
~ができるようになったみたいなプラスの意見を出してほしい
言われていましたが、本人たちの中で研修は失敗したものになってしまっているんだと思います。
また研修が終わったときでさえあのときどうすれば失敗しなかったか?といった解決策すら見つけられていないです。

まとめ

人にものを教えるというのはとても難しいと思います。
学生時代は自分より成績の悪い人に勉強をずっと教えていたので身にしみて思います。

難しい原因としては教える対象がみんな違うからですよね。
前提とする知識、同じことを聞いたときの理解量みんな違います
なので教えるときはわからない気持ちを理解するのとゴールを明確にしてあげることが大切だと思います。

うちの会社ではこんな研修していますってあったら参考に教えてほしいです。

最近はサイボウズとかみたいに研修内容をネットに公開する企業も増えていますね。
中小企業はここらへんの内容をまとめて経験者が理解して話せば外部に委託する必要はないのかなと思ったりします。
https://blog.cybozu.io/entry/2019/09/05/080000