SSブログ

ソフトウェア開発組織が持つべきカルチャー 001 [ソフトウェア開発組織が持つべきカルチャー]

継続した学習習慣

会社でのソフトウェア開発業務のみを通しての学習では、何年ソフトウェア開発を経験しても、経験できる範囲は非常に狭いです。業務を通しての知識や経験を積み上げることによる不足分を補うには、書籍を通しての学習を継続していく必要があります。つまり、他者の経験から学ぶことも重要になってきます。
Read Any Good Books Lately?

新しい知識と見識を得るために、私は常に本を読んでいます。一冊の良い本を選べば、他の人が何十年もかかって修得してきた見識を、数日で得ることができます。それなのに、なぜ、何年もかかって試行錯誤により学ぶのですか。非常に大きな差ですよ。もし、チームのメンバーが一年間に6冊の見識深い本を読んだとしたら、そのことがメンバーの仕事にどのような影響を与えるか想像してみてください。

Steve Maguire, Debugging The Development Process
学習は個人の問題のようですが、組織として学習を促進していない場合には、学習する人が中にはいたとしても、全体として学習をしない組織となってしまいます。

個人が学習をしなくて、業務遂行のための最低限のことしか学ばない場合(あるいはネットで調べる程度)、社会人となって数年が経過した時点で、学習する態度を失ってしまいます。学習をしない先輩の下に新たな新人が配属されると、その新人も学習しなくなってしまいます。

学習を促すためにどのような方法が最善なのかは分かりませんが、私自身が過去に行ってきたことを話します。

勉強会への強制参加

新卒新人は、職場で開催している勉強会に対しては「業務扱い」で強制参加としてきました。業務扱いということは、勤務時間内ということになります。しかし、同じ勉強会に、私も含め多くの先輩が非業務として参加しています。業務扱いが続くのは、半年から一年です。それ以降は、業務扱いを認めないということを行ってきました。勉強会で使用する技術書も基本は自費購入ですが、新人だけは強制参加ということもあり、部門の経費で購入していました。

※ フレックス勤務の場合には、コアタイム以前に勉強会を開始し、新人は勤務時間としますが、先輩は自発的な参加ということになります。

非業務扱いになったとたんに、勉強会に参加しなくなるという人は非常に少ないです。なぜなら、先輩もずっと非業務扱いで参加しているからです。

このような勉強会の開催は、実は簡単ではありません。なぜなら、①勉強会が開催されていなければなりません。②新人が業務で参加することをマネジメントが認めなければなりません。③勉強会というのは原則業務時間外に継続して行うのが当たり前というカルチャーが必要となります。

組織としては、非業務扱い業務扱いに関係なく、業績評価ポイントには勉強会参加を加算します。そのためには、半年で何回以上参加というような目標値を設定します。

昔からそうですが、継続して学習する習慣を失うとソフトウェアエンジニアとしてのスキルは低いままとなり、そのまま歳を取っていくと、新たな技術を学習しない年取ったエンジニアとなってしまいます。つまり、ソフトウェア開発組織としては、長期的に本人が自立して成長し続けることを促すためにも、組織全体が継続して学習する習慣を持つ必要があるのです。

マネージャが学習を継続する

継続的に学習するというのは、マネージャや管理職になったからしなくて良いというものではなく、むしろ逆に、実際の開発はしなくても学習を継続し、自ら勉強会を主催していくことが求められます。しかし、多くのソフトウェア開発組織では、マネージャ自身が学習を止めてしまっているのが現実ではないでしょうか?

つまり、組織として継続した学習が行われるかどうかは、個々のエンジニアの問題というよりは、マネージャ層以上の問題だったりもします。自分は学習をしないのに若い人が学習をすることを期待するだけでは何も改善されなかったりします。