四十三庵

蔀の雑記帳

SIer(受託開発)がダメな構造的理由

はてな界隈を中心としたネット上では散々SIerはDisられている。

SIerの闇・Excelにエビデンス貼付け

まあ、Excelエビデンス貼り付けみたいなんは僕もさすがにどうかと思うが…

最近では本屋にまでこんな本が並び始めた。


なぜ日本のSIerはクソなのだろうか。

(※SIerってなあに? っていう方は読んでもあんま楽しくない記事かも)

  • SIerがダメな構造的理由

SIerがクソみたいなビジネスをやるのは、頭と手が分離しているからだと僕は考えている。
どういうことなのか説明する前に、業界構造を見たいと思う。


受託開発の構造はこんな感じになっている。
ある会社が、あるSIerにシステムの開発を依頼する。
その依頼をもとにSIerはシステムを作って、納品する。
委託会社はシステムを買っているわけだ。

この構図において、「システムが欲しい人間」と「システムを作る人間」はわかれている。
これが「頭と手の分離」だ。

この業界構造は、本当に正しい姿なのだろうか
同じような構造になっているビジネスは他にも存在する。
たとえば建設業。
建設会社も、誰か「こんな家が欲しい!」と言った客に対して、
自分で使うわけではないが、実際に手を動かして家を建てている。*1

製造業にも、頭と手が分離している場合はある。
Appleは台湾のEMS企業大手鴻海(ホンハイ)を使って自社の製品を製造している。
そういう意味では、SIerの業界構造は、伝統的なビジネスモデルなのかもしれない。

しかし、SIerがダメなのは、根本的にはこの業界構造にある。

  • マネジメントされたクリエイティビティとは

本来プログラミングは創造的な作業だ。
形のないものをイメージして、それをプログラミングによって形にしていく作業だ。
その点では、小説を描いたり、音楽をつくったりするのに近い。

しかし頭と手が分離した構造にあるSIerでは、創造性を発揮する余地はない。
さらに、委託会社がIT知識が全くないと悲惨である。
「全くないと」と書いたが、そもそも自分の会社の中にIT要員が居ないから、
外部の会社に委託するのだから、普通委託する側は「IT知識がない」と考えても良い。

製造業や建設業では、依頼する側も、実際に釘を打ったりネジを締めたりはできないかもしれないが、
それなりの知識を持っているのではないだろうか。
建設会社なら依頼してくるナントカ不動産の社員には、
「これぐらいの工事ならこれぐらい大変だろう」
という感覚を持った人間がいるだろう。
そういう訳で、頭と手が分離していても、さほど問題は起きない。

SIerというのは、いわば映画をつくろうとしているのに、
映画制作会社が委託企業に
「何つくったらいいですかね?」
とワンシーンワンシーン聞きながら、つくっているようなものだ。

(企画段階)
客「うーんそうだな…この戦闘シーンは迫力がほしいな…」
営業「迫力ですか! なるほど〜。じゃあ火薬を使いましょう!」
客「火薬か! いいね!」
営業「ちょっと予算の方がこの程度かかるんですが、迫力を出したいという御社の希望にはそえるかと思います!」

(撮影段階)
バイト「……なんかこの流れで爆発するの、おかしくないっすか?」
監督「あ〜、なんか設計段階で、クライアントが迫力欲しかったらしいんだよね」
バイト「でも、ここで爆発してもなんかマヌケですよ」
監督「そうだなあ。もっといい方法ある気がするけど…」

(納品)
客「なんだこれ…」

(上映)
観客「なんだこれ…」

「頭と手」が分離した状態でつくったシステムは、
往々にしてエンドユーザーを無視した作りになるので、
お世辞にも使いやすいとは言えないものが出来上がる。

日本で動いている悲劇的なシステムたちは、こんな受託開発の頭と手が分離したものから生まれた。
委託会社としては、舐めたモノをつくられないように、監視を強めるしかない。
その中で、エビデンスExcelスクショという悲劇的な行為もおこなわれる。


  • 利益至上主義

頭と手が分離している、と書いたが、実際は手となっているSIerにも頭がある。
しかし現在の業界構造では、その頭は、主にどうやって委託会社から金をとるか、
自社の利益を最大化させるかに費やされる。
もっといいコードを書こうとか、もっとすげーシステム使って客を喜ばせようとかいう発想にはならない。

また、案件の取り合いになったときに、他社よりもいい条件を提示するために、
予算的・人員的に厳しい条件でプロジェクトが始まることにもなる。

  • 技術力不足

建設業とIT業界は非常によく似ている。
工事を行う人間は、体さえ頑丈ならば誰でもいい。
同じように、プログラムを書く人間も、コードさえ書けるなら……

上記の利益至上主義から生まれた独特の業界構造も、SIerの問題とされる。
「頭と手」と書いたが、厳密に言うと、SIerはコードを書いていない場合が多い。
設計だけ行って、更に下請けに投げるからだ。
IT土方」と呼ばれるのは、こういう投げられた仕様書をコーディングしてゆく奴らだ。

元請けのSIerはコーディングをぶん投げたので、技術的なスキルが蓄積されない。
ぶん投げられた方の会社は、言われたとおりに実装してゆくだけだし、
労働環境が過酷すぎてどんどん人が辞めていくので、
こちらもスキルは蓄積されない。

  • 子会社なら?

SIerには、

1)メーカー系子会社
2)ユーザー系子会社
3)独立系
(詳しい解説が欲しければこの辺を参照)

という三分類がある。

子会社と独立系ではだいぶ違うのではないか、と思うかもしれない。
確かに、前述の利益至上主義のところで書いたような、
競合相手に負けないために現場にとって過酷な条件で受注する問題は、
子会社の場合ならばなくなるだろう。

しかし、委託会社と受託会社の間で発生する利益相反については、やはり同じ問題が起こる。
頭と手が分離しているのは同じだ。
「独立系よりはマシ」かもしれないが、独立系で起こっているような問題がなくなっているわけではない。

  • 「社内SEを置けばいいのに」という意見に対して

SIerが叩かれるたびに、社内SEをおけという意見が出る。
そうしている企業もある。
けれどなかなか、一般化はしていない。

なぜなのか。
色々な要因があるとは思うのだが、僕は一番大きいのは、

優秀なSEであればあるほど、日本の企業文化と馴染まない

という点ではないかと思う。

優秀なSEというのは、多くはオタクだし、コミュニケーションに問題がある。
もちろんそうでない人もいる。
すごく優秀なエンジニアで、かつコミュニケーション能力も高い人も居るだろう。
ただそんな人は、シケた日本企業の社内SEでレベルの低い仕事したいとは思わないだろう。

酷い言い方をしてしまえば、
日本の大企業のおっさんどもは、コンピューターに詳しいオタクと同じオフィスで働くのを拒んでいるのだ。

受託開発のデメリットがこれほど言われているのに、
未だに日本の大企業が受託開発にこだわるのは、そういう理由なのではないかと、
最近はわりかし真剣に思うようになってきた。

  • まとめ

SIerの「頭と手」が分離したビジネスモデルでは、クオリティの高いシステムは作れない。
また、利益至上主義・技術力が蓄積されないという問題も発生することになる。
(了)

*1:SEのことを「IT土方」と呼ぶ蔑称があるが、あれを考えた人はなかなか真理を突いている。SIerと建設業の業界構造・働き方は、驚くほどよく似ている。