並行プロジェクトは問題ではない。環境だ


うちの会社をやめて独立した人に、久しぶりに会って話をした。
彼が言うには、ウチの会社の問題は、全員が複数のプロジェクトを並行して進めなくてはならないような、受注の仕方をすることにあるのだそうだ。並行プロジェクトは効率が悪いことを営業サイドが理解していないのではないか、とか言っていた。そんなアホな。


受託開発はお客の都合で納品時期が決まるので、来た仕事を普通に受注していたら、複数のプロジェクトを並行して進めなくてはならない時期が必ず発生する。それがいやなら、ウチの一方的な都合で決めた納品時期をお客に飲ませる技術を、営業サイドに開発してもらわなくてはならない。


並行プロジェクトが開発効率を下げる、なんてことは誰でも知っている。が、ウチの一方的な都合で納品時期を決められないのも、おんなじぐらい分かりきったことだ。
「並行プロジェクトは開発効率が悪いからやめよう」なんてのは「開発サイドは難しいことをやりたくないから、営業サイドが難しいことやりなよ」と言っているだけだ。
それは陰でこっそりと言うべきことであって、人前で自信満々に言うようなことではない。

はてなアイデアの場合

何かいつもおんなじことを書いているが、プロジェクトを複数掛け持ちでやってみたら効率が悪かった->じゃあ止めよう、では小学生と同じだ。
おっさんなら、効率よく掛け持ちする方法を考えなくてはならない。
何かをやってみて問題が出たら、止めてしまうのではなくて、何か変えてみるのだ。


近藤氏の「へんな会社」のつくり方 (NT2X)のP-104に、はてなアイデア誕生の経緯が書かれていた。
だいたい以下のような議論を経て、今の「はてなアイデア」の形になったのだそうだ。

はてなの各種サービスに寄せられる要望が増えた。
要望を投稿する窓口を作る必要がある
    ↓
そんな窓口をつくって、さばき切れないほどの要望が来てしまったらどうするの。
「要望を出したのにぜんぜん叶えられない」となって、かえってユーザが不満に思うでしょ
    ↓
要望に対して、別のユーザが「これはよい」と思ったら投票できるようにしたらどうか。
得票数の多い要望が優先されることにすれば、ユーザの納得感が増すだろう
    ↓
ユーザに投票させて、「有料オプションを半額にしてほしい」みたいな要望がトップになったらどうするの。
トップなのに実現されなかったらユーザは納得しないよ
    ↓
アイデアを銘柄とした市場を作って、ユーザに売買させたらどうか。
採用された要望を買っているユーザが儲かる仕組みにすれば、はてなに不利な要望は支持されなくなる

これを読むまで、はてなアイデアがどうしてああいう形になっているのか、さっぱりわからなかった。「はてなアイデアは、仮想的な市場の仕組を使って、ユーザーの皆さんから要望や不具合報告を効率的に頂くことを目的とした試験的サービスです。」というトップページの謎の一文を見て、よくわかんねえなと思って見なかったことにしていた。
あれは、次々と現れる問題を一つ一つつぶしていった結果の姿だったのね。
「企画があったんだけど、問題が見つかったから止めました」という小学生思考との何という違い。
自分に当てはめるなら、並行プロジェクトで開発効率が下がったのなら、下げない技を考えるのが俺の仕事、という話。

何を環境と考えるか

ゼロベースで考えるなら、並行プロジェクトを発生させない方法を考えてもよい。「受託を極力減らしてパッケージの開発をメインにする」とかを答えにしてもいい*1
が、我々はまず並行プロジェクトありきで考えなくてはならない。寝る時間なのでここまでにするが、続きを書くかも。

*1:「ソフト開発はやめてラーメン屋を始める」でもいい。ゼロベースだもの