「組織のボトルネック」を見抜いて転職を極めようITエンジニアの価値を貶める『人月商売』の功罪を読んでみて。「人月商売」がエンジニアにとってどのような問題点があるかというと、エンジニアの価値を低下させる事になってしまう、という点です。端的に言うと、「人月」で見積もりを出しているという事は、すなわち自らの価値を、提供価値に対して値段を付ける「知識集約型」ではなく、稼働に対して値段を付ける「労働集約型」へと貶めてしまっているからです。ITの良い点の一つとして、ルーチンワークをプログラミングで自動化できる点があります。一度システム化してしまえば人の代わりに永続的に価値を生み出し続けられるメリットがあるわけですが、労働集約型モデルで働いていると、永続的に生み出される価値に対する対価は得られず、何人月で作ったかという時間の切り売り部分にしか対価が支払われません。これはどう考えてもITエンジニアのもたらす価値の安売りであり、自らの価値を下げていることに他なりません。たしかに知識集約vs労働集約とか言われていて、単なる人月商売ではエンジニアが大事にされないとか、そういう議論は昔からずっとされているんだけど。小規模ソフトハウスなんかで、最初の方は人月でどんどん高く売れて非常に技術者を大事にしている会社が、どっかのタイミングでガラッと変わってだめに成ってしまったりする。そのとき、別に知識集約から労働集約に明確に切り替えたわけではない。勝手に切り替わるのだ。それについては社員20人から先に進めない小規模ソフトハウスなどという記事を昔書いたことがあるが、簡単に結論の出ない話で、わりと「夢のない話」と言われたりもした。問題にすべきは、どんなモデルを持っているか、というのもそのとおりなのだが、何がモデルを決定するか?ということではないだろうかと思っている。実は、ようやくそれについての解答を得たと思っているので今回書き記したい。「その組織のボトルネックがどこにあるか」だ。ソフトウェア業界の組織のボトルネックを決めるものソフトウェア業界といっても非常に広い。言われるエンタープライズ系とWeb系というくくりなんかがあるが、漠然としていてつかみどころがない。スーツはスーツ、ギークはギーク、エンタープライズ系とWEB系の溝などという記事も最近書いたが、Web系かどうかなどという判定方法はあまり見当たらないし、ましてや騎兵/歩兵という分類も、見分ける方法が難しい。ボトルネックが何かということに着目すると、実はかなり簡単に説明できる。ソフトウェア業界組織のボトルネックって?という話だが、ここでは以下の2種類の視点を取り上げたい。需要過多か供給過多か。ここで需要とは、SIでいうところの「案件」の多寡だと思ってほしい。供給はエンジニアによる「生産力」だ。生産力に対して収入が少ない、あるいは少なくなる可能性が高い会社が供給過多、一方やるべきことのほうが圧倒的に多いところが需要過多だ。組織の効率が高いか低いか効率というのは、ここでは構成員一人ひとりの生産性が有能で高いか、あるいは普通の人が普通に働いている程度で低いか、というのを問題にする。小規模ほど効率が高いが、それは効率を高める最強の手段が、少数精鋭化というところだからである。ボトルネックによる類型化これで、2*2=4種類の会社を考えることができるが、それによって何がボトルネック化が大きく変わる。