ブログは死なず、ただ放置されるのみ。

終わっちゃいましたね。

プログラマのスキルレベルに依存しない体制ができたらプログラマはいらないような気がする件について

ところで まなめはうすさんのところで、おそらく今年最後のひっかかり。

個人的に大規模ではSEに依存し、小規模ではプログラマに依存すると思う。だから、大規模でしか仕事したことのない私はSEが重要だと思っているんだよね。プログラマのスキルレベルに依存しない体制を作り上げることが最強なのです。

あえて悪いほうに解釈すると『プログラマのスキルレベルに依存しない体制』って例えば、マニュアルどおりの対応しかできない人が頭数だけそろっても大丈夫な体制ってことでしょうかね。じゃあもしそういう体制ができたら、べつにプログラマじゃなくてもいいですよね。だってスキルに依存しないんだから。まあ、そこまでじゃなくて、じゃあ最低ラインスキルのプログラマさんたちだけ来ていただくことになるんですかね。

SEとなってしまった自分にとって、プロジェクトでもっとも重要なことは「メンバの個々のスキルを適切に判断し、適材適所に配置すること」と「チームにとってもっともクリティカルなスキルのメンバはだれで、そのリスクヘッジをどうするか」の2点です。

まれにオールマイティーなスーパーマンもいますが、ふつう、あいつはガリガリ書くけど脇が甘い。あいつはきっちりやるけどアウトプットがでるまで時間がかかる。あいつは普段はきっちりこなすが想定外の状況になるとパニくる。あいつは普段はいい加減だけど、トラブル解析では右に出るものはいない。あいつの行動はわけわかんないけど、誰も気付かなかったリスクを見つける。と、人にはそれぞれ得手不得手があるもんじゃないでしょうか。

プログラマは日々勉強し、自分の強みをさらに高めるとともに、弱みを無くすか代替手段を作り、自分の得意分野では他人の仕事にもくちばしをつっこんで「アレについてはやつにまかせておけば心配ない」と思われる人になって欲しい。だから私はメンバ一人一人を見て、得意なところは「お願いする」。危険を感じたら「相談してもらえるようにする」というやりかたで、実際やっててうまくいってるし、お客さんも評価してくれてるんで、間違ってないと思います。

それは小規模だからできることでは? と思うかもしれません。はい。大規模になれば、そのプロジェクトの上位のSEはメンバ一人一人まで見ることはできないでしょう。じゃあ、そんな状況で、プロジェクトのメンバをプログラマのスキルに依存せずアサインして、問題が発生したときどうなるのか? 彼ら自身が解決できると信じることができるんでしょうか。

そしてその「後始末の計画」はSEが(本業もやりながら)立てるのでしょうが、「後始末の実施」は当然現場がやるわけですよね。しかしその「後始末」を計画どおりに、ちゃんとできるんでしょうか。だってスキルに依存しないんですもの。そういう人が実施した「後始末」は中途半端もしくは的外れで、さらに問題を拡散させたりしないんでしょうか?

そういうのがデスマーチって言うんじゃないでしょうか?

というわけで「プログラマに必要なスキルレベルが明確な体制を作り上げることが最強なんじゃないですか?」と言わせていただきたいと思った次第でございます。

まあ、もし開発環境にとんでもない変革が起こったら「プログラマのスキルレベルに依存しない体制」ができる日がくるのかもしれませんが、その体制に入れるのはプログラマじゃなくていいんじゃないでしょうか。とりあえず私がプログラマなら、そんなところに入るのはお断りです。