ITデューディリジェンスと開発ベンダー評価の本質
DXアドバイザリーをミッションとする私たちが手がける仕事の一つに、ベンダーの選定がある。この「選定」を因数分解していくと、どういう因子に分かれるだろうか。企業・組織でのIT活用に関わる皆様にとっても関心事ではないだろうか。
ドラマ「ハゲタカ」で描かれた世界
開発ベンダーの業務特性について書いた以前のブログにもあるが、ベンダーには大きく分けて3種類のスペシャリストがいる。コーディングをするプログラマー(PG)、顧客とのやり取りをしながらシステムの設計をするシステムエンジニア(SE)、そしてプロジェクト全体を統括するプロジェクトマネージャー(PM)だ。大きい会社の方が人数が多いので人材も豊富だが、大きければいいとも言い切れない。なぜなら、この世界では「属人性」がモノを言うからだ。
2007年に放映されたNHKの連続ドラマ「ハゲタカ」はご記憶にあるだろうか。ハゲタカたる外資系ファンドが、経営危機に陥った中小電機メーカーの買収に乗り出すエピソードがある。買収の際のデューディリジェンス
(以下、DD)で、初老のベテラン男性社員のレンズを磨く技術が高く、その会社の価値は、事実上その社員の技術に尽きるとの評価になる。つまり、エンティティとしての会社にはあまり価値がなく、従って、そのエンジニアを引き抜けば......というストーリーだった。このような属人性は、エンジニアリングの世界では当たり前の出来事である。
同じことが前述のITやソフトウェアのスペシャリストにも言える。おそらく、最もセンスが問われるのはPGだ。あまりプロジェクトの前面に出てくる機会がないので、意外とベールに包まれている。前述のレンズ磨きの技術者と同様、属人性が高いのは想像がつくと思う。例えばある機能をコーディングする際、人によってそのコードの書き方には癖がある。また、一般論として、コードは同じ動作が実現できるのであれば短ければ短いほどいい。理由は、どんなにコンピューターの処理速度が上がっても、コンピューターはコードの指示に従うからである。他の人の1/5の長さのコードを書ける人のPGとしての能力は、他の人の5倍とも言える。当然仕事のスピードも速いが、では人事上、5倍で評価されているかというと、今のところ多くの日本の大企業ではそうではない。この人事評価視点のトピックは別のブログを参照して頂きたい。
優秀なPGの在籍を見抜く力は、ベンダー選定の重要な能力
私がこの世界に入った1997年ごろは、サーバーやコンピューターの処理速度が今よりだいぶ遅かったので、コードを短く書くという「技」は今以上に価値があった。そうこうしている内に、どんどんコンピューターの処理速度が上がり、5行のものを、その1/5の1行で書けても、利用者の人間からすると、コンピューターのとてつもなく速い処理によって、その差が分からなくなりつつある時代に突入した。では、だからといって、怠惰なダラダラとしたコードを書いても良いということにはならない。例えば、Amazonのように、天文学的なトラフィックがあるサービスには、どんなに処理速度が速いコンピューターを使っても、その処理速度以上に負荷がかかるため、結果として一行一行の完結なコードが最終的に大きな差につながる。未だに、メガサイズのサービスにおいても、たまに私たちが「くるくる」に阻まれるのはそんな理由だ。どんなに処理速度が上がっても、やはりシンプルに短くコードを書けることは、依然評価されるべき能力と言える。
また、別のブログでは、ベンダーロックインの話をした。ベンダーロックインを避けるために、仕様書や設計書のようなドキュメントを、お金と時間をかけてでも残した方が中長期で有利になることは、このブログやウェビナーでお伝えしてきた通りだ。加えて、既存ベンダーのPGが書いたコードが、短く適切で分かりやすく、その上で、プログラムの間に適切なコメントが書いてあれば、それを引き受けた次のベンダーのPGが一目瞭然で理解できる。コンピューターに無理難題のコードを理解させるPGではなく、「人にも分かるコード」を書けるPGが優秀な技術者であり、結果、そういったPGを抱えるベンダーを選ぶことが、事業会社にとっては、後のベンダーロックインの回避にもつながる。
ベンダーロックインに陥った顧客を正常化させるには、そのソフトウェア資産を引き継いでくれる次のベンダーが必要である。しかし、複雑怪奇なコードの塊だと「作り直した方が安い」というお決まりのひと言が返ってくることになる。だからこそ、5行ではなく1行で書けるPGがそのベンダーにいることが重要となる。前述の通り、綺麗なコードであれば、そのまま引き継げる可能性が高く、資産の継承もでき、余分な投資も不要になる。
ベンダー評価の際、一般的に組織図に書かれたPGの「人数」を重視する節がある。個人的にこれはDDとしてまったく意味がないと思っている。一つの実現すべき動作に対して最短のコードが1行だとした場合、5行でしか書けない人が複数名いるチームより、1行で書ける人が1人ちゃんといた方がいい。また、アジャイル開発は多くの先行研究が示している通り、少人数のチームを前提としているため、例えば一つのプロジェクトで数百人が同時に仕事をすることはない。大人数をアサインすることが、必ずしも問題解決や安心にはつながらないのだ。これはかつてTSA(Transition Service Agreement)についての対談やウェビナーでもお話をさせて頂いた通りだ。
つまり、求められるPGの能力というのは、最後まで因数分解すると「短く分かりやすく書く力」とも言える。いかに贅肉なく書けるか。そこがクオリティーとソフトウェアの資産性担保の勝負となる。
PGの仕事は外からは見えにくい
私たちがITDD(IT資産に限ったDD)をする際のベンダー評価は、そこまで因数分解している。
開発ベンダーに何かを開発してもらうとき、最終的な成果物を作るのは、コードを書くPGだ。だが、プロジェクトの前面に出てくるのはPMやSE、営業だったりする。多くのプロジェクトにおいて、依頼する側は、PGには会うことなく物事が進む。だから多くの場合、PGはベールに包まれている。
だが、大きなシステムを流暢に動かすためには優秀なPGの存在が不可欠だ。だから、私たちのITDDでは、組織や人数といった表層だけを見るようなDDではなく、どんな経歴の人がどのように関わるか、人数だけではなくネームの入った組織図や、それぞれの人の経歴書まで確認する。経歴書を見れば、その人がどんなスキルセットで、どんな言語が書けて、どんなプロジェクトに関わってきたかが分かる。さらに必要な時は面談までしてきた。そうやって、5行かかるものを1行で書く人がいるかどうかまでしっかりと見極めて、ベンダーを決めることが重要なのだ。
仕事が速い人を育てるのは「副業」ではなく「複業」社会
ところで前回、四半期決算開示に関するブログで、本当はIT導入で仕事が1/5になって楽できるはずが、追加で5倍仕事をさせられて、結果として楽になっていない、という話を書いた。それと同じことが、プログラミングの世界でも起こっている。人の5倍の速さでコーディングができる人は、早く終わったので寝ている訳にいかず、早く終われば会社組織はその5倍仕事量を要求する。
私は著書『続・まったく新しい働き方の実践〜なぜ働き方は自由にならないのか。DX(Digital Transformation)未完了社会の病理〜』で、国が推進しようとしている「副業」と、私が「まったく新しい働き方」の文脈で使う「複業」との違いを述べた。「主」があった上で、残りの時間を「副」に充てるのではなく、スキルの高い人が、スピード感を持って働く場所を同時に複数持つことで自分の仕事上の価値を高めようとする機会が増えれば、つまり「副業」ではなく「複業」を由とする社会であれば、翻って、多くのベンダーが、仕事が速いPGを抱えることができることにつながり、そういう世界ならば一人ひとりのPGのスキルの全体的な底上げにもつながるのではないだろうか。つまりベンダーが強くあるためには、ベンダーの働き方改革も求められているのである。
ガーディアン・アドバイザーズ株式会社 IT前提経営®アーキテクト
立教大学大学院 特任准教授
高柳寛樹
----
高柳の著書はこちらよりご参照ください。
続・まったく新しい働き方の実践〜なぜ働き方は自由にならないのか。DX未完了社会の病理〜
(ハーベスト社)2022
「IT前提経営」が組織を変える デジタルネイティブと共に働く
(近代科学社digital)2020
まったく新しい働き方の実践:「IT前提経営」による「地方創生」
(ハーベスト社)2017
----