ITエンジニアの『生産性』と、データ・サイエンスの微妙な関係
(2013/07/07)

ある、社外の人との集まりに顔を出した時のこと。IT分野の経験を積んだ人が多く、みな一家言持っておられる。わたしは昨年後半から、久しぶりに社内のIT関連業務を見るセクションに移ったばかりなので、最近の事情に疎い。なるべく拝聴する側に回ることにした。話は業界の技術トレンドから、クラウドやビッグデータといった最新のバズワードに向かい、日本のIT業界の現状をなげく論調にうつった。日本を代表する大手SIerたちの低空飛行ぶり、技術的イノベーションの不足、そして多重下請に象徴される業界の構造的問題。追い打ちをかけるように、オフショアとの競合による単価の下落。なんだか、あんまりエンカレッジされるような話題が出てこない。

--だとすると、日本のSI業界というのは将来性があるのでしょうか? わたしは思い切って、直球ど真ん中の質問をなげてみた。しかし返ってきたのは、苦笑いするように首を横に振る姿ばかり。

「情報システムを開発・維持する仕事は、この国に経済がある限り、無くならないでしょう。しかし今のSIerのような業態が続くかといえば、疑問だと思いますよ。」一人が答え、他のメンバーも賛同する。「一括請負で、プロマネは受注側には居るが発注側にはおらず、人月を一山いくらで売るばかりのソフトウェア商売は、もうこの先、もたないんじゃないかな。」これを別の人が引き取って続ける。「アメリカではPMは発注側の組織にいて、バラバラなユーザ要求をまとめる責任もあるんです。そうやって、納期やコストとのバランスを調整する。日本のユーザ企業って、そういう旗振り役がいないんで、全部請負側にリスクが押しつけられるんですよ。」

アメリカの事情は別にいい。わたしも多少は知っているし、ユーザ側のPMもじつは有期契約の渡り鳥だったりする。だが、とりあえずわたしは日本企業に勤めており、日本の業界の実態を知りたい。すこし矛先をかえて別の質問を出してみた。--ソフトウェア開発のプロジェクト・マネジメントで、一番苦心されるのは、どんな点ですか?

「それはね、人の確保ですよ。」右隣の人が答える。「それも、人数じゃない。出来る技術屋の確保。プロジェクトはこれに尽きます。ITエンジニアの生産性って、人によって30倍くらい違いますから。」すると向かいの人が突っ込む。「いやあ、人によっちゃあ、いつまで経っても出来あがらない奴がいるから、生産性の違いはもう無限大だな。」(笑)

あれ? わたしが駆け出しだったころ、プログラマの生産性の違いは“倍・半分”といっていた。10年ほど前には、たしかどこかで、SEの能力差は“10倍くらい”ときいた覚えがある。そして今や、30倍だという。この指標では、インフレが進んでいるようだ。なぜだろうか。開発環境やライブラリが充実したせいか。それとも、職種自体が変化しているのか。わたしはそれもたずねてみた。--その個人別の生産性の数字かグラフ、もしあったら見せてもらえますか?

「いや、そんなものはありませんよ」が、答えだった。
--じゃあ、どうやって30倍だと分かるんですか?
「そりゃあ、プロが見ていれば分かります。感覚ですけどね。」
--経年変化とかのグラフもない、と?
「佐藤さん。ITエンジニアの生産性って、具体的に測るのは難しいんですよ。」相手は諭すような口調でわたしに言った。

難しいくらいは、わたしにだって分かる。だから、どうやってそれをマネージしているのか興味を持ったのだ。何かをマネジメントしたかったら、まず、それを測って、数値化する。そして、標準値を設定する。その上で、実績が標準に足りない場合はその原因を調べて取り除き、さらに標準値自体を押し上げる改善の努力をする。これが、生産管理の世界での常識、いや、マネジメント全般に共通するやり方だ。

だから、IT分野のマネジメントで人の生産性が問題なら、それを測って数値化する試みから、着手されるはずである。そう、単純に考えたのだった。仕事の実績から、個人単位の生産性を割り出すのが難しいのなら、テスト問題を作ってみて、それで測る手もあるだろう。あるいは、もしプロが見て分かるのなら、5~6人の社内のベテランの目から評価させ、平均値をとる方法も考えられよう。だが、そうした発想は、ここでは通用しないらしい。

--個人の生産性の違いを決める、決めてってのは何ですか?
「そりゃあ、センスですよ。もって生まれたセンス。」
--てことは、生まれつき決まっていて、教育や研修では伸びないものだ、と。
「まあ多少、経験や、あと、誰について仕事を学んだかで、かわってきます。」
ーーふうむ。そうすると、IT開発マネジメントの最大の仕事というのは?
「だから、社内にいる限られた優秀なキーパーソンを、どうやって確保するかで勝負が決まるんです。」

この方は、社内の椅子取りゲームに勝つのがプロジェクト・マネジメントの要点であると信じているようだった。社内全体の椅子の数を増やして、全員が座れるようにするにはどうしたらいいか、は眼中にない様子だ。まあ、それを考えるのはPMOの仕事、ということなのかもしれない。

全体の話は次第に、ビッグデータの方に流れていった。ビッグデータという語の流行(?)とともに、『データ・サイエンティスト』という職種の概念が新たに登場し、急に脚光を浴びるようになってきた。多量のデータを見て、そこから“意味”や“仮説”を汲み出す力。まあ、たしかにエンジニアリングと言うよりもサイエンスに近い。技術は発明が主題だが、科学は発見が重要だからだ。では、そのデータ・サイエンティストはどのように育成するのか。大学はどこの専門を出た人間が適切なのか。いや、これはサイエンスと名付けているが、実際にはかなり「アート」に近い仕事なのではないか、云々。

だが、わたしは次第に話に興味を失っていった。とるべきデータなら、目の前に沢山ころがっているではないか。それは、自分たちIT分野の仕事の実績データである。生産性でもいい。生産性がもし難しいのなら、品質(つまり瑕疵)のデータでもいいし、あるいは受注確率のデータでもいい。自分達の仕事を向上させる手がかりは、データの中にしかないはずだ。なのに、なぜ商品RFIDの移動や、スマフォの緯度経度のデータばかりが重要だと考えるのか。データサイエンスから最も縁遠い業界の一つが、じつはIT業界ではないのか。そんな気がしてきたからだ。

国内外で仕事をしてきた経験から感じるのは、彼我の技術者のマネジメント観の違いである。いや、こういう言い方が大ざっぱすぎるなら、言い直そう。英米社会で教育を受けた技術者と、日本社会で主に教育を受けた技術者の違いはどこか。それは、マネジメントという仕事が独立した科学の対象でありうるかどうか、という意識の差である。

日本の技術者というのは、ほぼ例外なく真面目で、優秀だ。たとえば、最近読んだ調査によると、日本の大企業の基幹情報システムの障害による月間停止時間はわずか1.7時間なのに対し、北米では14.7時間だそうだ。まさに10倍近い信頼性の差である。また、ソフトウェアの不具合数(1年後に発見された1KLOCあたりの不具合数)は、
日本 0.020
アメリカ 0.400
インド 0.263
欧州他 0.225
平均 0.150
だということで、日本のIT技術は格段に信頼性が高い(JUAS=日本情報システム・ユーザー協会「ユーザー企業ソフトウェアメトリクス調査2013」p.291 より引用)。

だが日本の技術者は、(IT分野に限らず機械だろうが建築だろうが)マネジメントは「文系の仕事」だと思っている人が少なくない。自分の仕事と認識している人でも、マネジメントとは“人間力の問題”だととらえることが多い。つまり、いかに出来の良い人をとってくるか、いかに人をモチベートしてやる気を出させるか、いかに明確なビジョンを示して皆を引っ張るか、いかにメンタルな面に気をつけてやるか、etc,
etc… マネジメントとはヒューマン・ファクターの集合であり、個人が修行して悟るしかない。そして、それは自分の固有の技術領域とは無関係のものである、と。

IT業界人こそ、こうした「普通の日本人」の思考法の枠内から、自覚的に離れる努力をしていってほしいと、わたしは願う。もし生産性を測るのが難しいのだったら、そこをブレークスルーできた者は、大きな優位性を得られるはずである。なぜ、そうした方向を目指す企業が少ないのか。なぜ、一山いくらの値段勝負の泥沼から抜け出そうとしないのか。

IT業界には頭の良い人が多い。論理的に思考する能力を持たないと、仕事にならない。しかし、論理性だけでは、何かが足りないのだ。その何かは、「仕事に関するサイエンス」の中にしかないと思うのだが。