
第7章の「開発力をみなおすとき」にスーパープログラマ構想という話が出ています。
日本のソフトウェアの開発現場は、開発力が弱くなっていて、トヨタの開発現場のような優れたところから「ものづくり」を学ぶべきだというお話です。その話の中に現在のソフト開発における状況がよくわかる話がでてきます。
・・・・・・本来、エンジニアの仕事は楽しいものです。ところが日本のソフトウェア業界の仕事は苦しいことが非常に多くて、だんだん楽しいことが少なくなってきている。
私たちの開発現場における仕事、つまりプログラミングは、ものすごく創造的なものです。本来、あこがれる仕事のはずなのに、私たちの会社ではそうなっていないという現状があります。この状況をなんとかしなければならない。自分たちの意識を変えることが、今のソフトウェア業界にとって非常に重要なことなのです。そこ対策として、私が近々実現したいと考えているのが「スーパープログラマ構想」です。まずは社員の中から、できれば10人、難しければ5人でも構わないから、スーパープログラマを集めたドリームチームを作る。そして、彼らの「人事的待遇」「担当するプロジェクト」をいった処遇を他のエンジニアたちがあこがれるようにしていきたい思っているのです。
聞いた話ですが、こういったスーパープログラマとそうでない普通のプログラマの能力にはじつは生産性で20~30倍の差があるそうです。そしておもしろいことに生産性の差だけではなく、開発したソフトウェアの品質にもそれに比例した差が出てきます。つまり生産性の高いプログラマの方が、開発するプログラムの品質も高いのです。
すぐれたプログラマは、課題が与えられるとパパッと頭の中にプログラム・ソースコードが浮かんでくる。彼らは、「こういうデザインだと非常につくりにくくなる」とか「ここはこういうかたちでつくっておかないと、あとあとまずい」とか、そんな直感でをひらめかせながらプログラムの設計を始められるような人々です。彼らのレベルでは、ソースコードをつくり出すために「美的感覚」が必用となるのです。プログラミングは作品であり、プログラマは芸術家である。そんな社員を結集してチームをつくりたいたいのです。(P141L3)
スーパーエンジニアって本当に存在しています。私のまわりにもいて高い評価を得て、まるで神のような存在になっています。反面、そうなれない人たちもいます。厳しいプロの世界ですから当たり前ですが、そういうエンジニアにプロフェッショナルではなくて、ジェネラリストとしてどういう風にキャリアアップしてもらうかも大きな問題だと思います。言い方は悪いのですが、これまで企業は、スーパーエンジニア以外の技術者をそのままでいいわけがないと思っていながら、放置していました。そこの私はメスを入れたいのです。
浜口社長は、この部分の締めくくりで下記のように書いています。
先日、あるプロジェクトを立てなおした熟練工の部長にその方法をたずねたところ、「匠の技です」という答えが返ってきました。どうやって立てなおしたのか、自分でも文書にはまとめられない、体系化できない、というのです。しかし、それでは、もったいない。だからこそスーパープログラマ・チームを組成して、その人たちには、その匠の技を若いエンジニアに伝授してもらいたい。つまり、トヨタの生産現場のもつ強みを、ソフトウェアの開発現場にももちこんでいただきたいと考えているのです。(P144L1~L6)
どの世界にも匠の技は存在します。エンジニアはその匠の技を伝承しにくい職種でもあります。浜口さんはそこの注目されているのだと思います。
先日、弊社のJavaセミナーにいらした、エンジニアの方も同じことを言っていました。
「昔は後輩が先輩のエンジニアから技を盗むのが当たり前で、わざわざ先輩が後輩に教えたりしなかったけど、今はそんなこと言っていられない。教えていかないと本当にエンジニアが駄目になる」
プログラムの世界も工業の世界と同じで、だんだん機械化(=自動ツール化)されているので、昔は当たり前だった基礎知識が、単純にプログラミングするだけであれば、今は必要なくなっていたりもしています。でもそれじゃあ、匠の世界は守れないでしょう。ちょうどそのような曲がり角に来ているのがIT業界かもしれません。浜口さんの警鐘をきちんと受け止めて、業界を守っていくのが我々の仕事なのではないかと再認識いたしました。 |