SSブログ

教育と「場」 [プログラマー現役続行]

様々な技術教育を行っても、実際に受講生が実践するのは難しことが多いです。その理由の1つは、教育教材が教育用であり、実際の開発物ではないからです。そして、本質的に重要なのは、日々の開発成果物での指導を受けることです。その指導を受ける「場」があって初めて教育が意味を持ちます。

そのような「場」がない組織、つまり、きちんとした指導を出来る人がいない組織では、技術教育で学んだことをさらに身に付ける指導を受けることがなかったりします。そうなると、どんなに技術教育担当部署が様々な教育を費用をかけて実施しても、あまり効果はありません。

私が長年行っているJava教育も同じです。たとえ、受講生が一年間膨大な時間を費やして学習しても、学んだことを実際の開発で一人で適切に適用できるようにはなかなかなりません。実際に成長した人達の多くは、さらに私の下で一緒に開発を行い、教育の内容を日々繰返し言われた続けた人達です。

今の会社では、Java教育の修了生で、私の部下として一緒に働いている人は一人もいません。前の会社では、私が部門長をしていた開発部門では、10名以上の修了生がいました。今は、それでも、修了生を対象として、業務で開発している(ソースコードを中心とする)成果物のレビューを行うためにフォローアップ・コンサルティングを月に1回行っています。

※ 私自身の工数の20%は、Java教育やこのようなフォローアップ・コンサルティングとして他部署(会社)に対して費やしています。残りは、開発業務です。

ソフトウェアエンジニアとしては、自分を成長させてくれる「場」を提供してくれる組織で働くことは重要です。また、会社としては、技術教育を充実しても、「場」として開発組織が存在しなければ、教育投資は無駄となります。
仕事の中に学習機会を見出すことができればそれだけで問題なく人間は成長できるはずだ。逆に、どんなに厳しくつらい環境に身をおていも、学習機会が仕事の中で見いだせなければ成長することはできない。
日野瑛太郎 著、『脱社畜の働き方』(p.85)