SSブログ

基礎教育 [プログラマー現役続行]

新任管理職向けの教育の中で、高橋俊介氏の講演がありました。高橋氏の講演を聴くのは初めてでしたが、いろいろと考え直す良い機会でした。高橋氏の話の中で、日本企業は、新卒新人に対して必要な教育を行うことなく、高度な仕事をさせて、本人はメンタル的にだめになっていくという話がありました。

ソフトウェア開発に関して言えば、本来なら大学で基礎的な事柄を学んでいてもらいたいですが、実際には、コンピュータに関する基礎知識もなく、プログラミング経験も乏しい学生を採用したりしています。そして、技術教育担当グループが最初に集合新人教育を行うのですが、これが役に立たないことが多いです。

なぜ、役に立たないかというと、ある期待レベルに達するのに要する時間は、個人差があるにもかかわらず、教育スケジュール通り教育が終わってしまう。さらに、システム研修と称してチームを編成してソフトウェアを開発させても、大学時代からプログラミングをしてきた人がほとんどを行ってしまう。結果、集合研修が終わっても、役立たないということになります。つまり、せっかく三ヶ月とか半年とか研修しても、基礎体力的な知識はほとんど習得しないことになります。

以前書いたブログ「書籍『とことん人を育てる!旭化成アミダスのIT戦略』」では、2年以内に若手に達成させるレベルとして、次の項目を列挙しています(富士ゼロックス情報システム勤務時の話です)。
①読みやすいコードを書くことを意識する
②防御的にプログラミングする
③1つの言語をきちんと習得する(この場合、Java言語を「プログラミング言語Java」コースを修了する)
④マルチスレッドプログラミングを習得して日々の開発で問題を理解しながら行う
⑤テスト駆動開発によりリファクタリングも行う
⑥手作業はコンピュータにやらせるように積極的にスクリプト化する
⑦他のメンバーが書いたコードでもデバッグする
⑧基礎的なデータ構造とアルゴリズムはきちんと学んでいる
⑨継続的に勉強会に参加する
⑩英語で技術書を読むことに躊躇しない(そのために、新人の一年間は、英語の書籍の勉強会に強制参加させていました)
(他にも私自身が気付いてない暗黙知としての何らかの行動パターンがあったとは思います)
新卒新人が私の部門に配属されると、最初に書籍「プログラミング作法」の第2章を、私が作成した「勉強会ノート」に従って学習させます。プログラミングの問題も含め、トレーナーからのOKが出るまで何度でもやり直しさせていました。

学生時代にある程度基礎を積んでいる人は、早くて二ヶ月で終わり、遅い人は4ヶ月から半年かかってしまいます。それが終わったら、業務で必要なマルチスレッドプログラミングや使用するライブラリーの学習を行うのですが、それも、早い人で一ヶ月、遅い人だと二ヶ月かかったりします。その間、開発業務には従事させません。

同時に、「プログラミン言語Java」教育を受講させたり、(英語テキストを含む)勉強会へ業務扱いとして強制参加させたりします。これに現場での様々な指導が加わり、二年で上記に列挙したレベルに達する訳です。もちろん、社会人となってからソフトウェアを学ぶような人の場合、脱落していく人もいます。

実際には、新人のトレーナーや私も含めて、開発の現場には教育のための負荷がかかっていましたが、結果として本人のレベルの把握、適切な仕事の割り当てができていました。

残念ながら、多くの組織では、集合技術研修を行って、あとは開発の現場に配属させて教育は終わりということになっていたりするのではないのでしょうか。そして、開発の現場も、集合技術研修では必要なことは学んでいるという前提で何も教育しないということになっていたりする場合もあるのではないでしょうか。
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0