@ITにこんな記事が載っていた。
http://www.atmarkit.co.jp/farc/rensai/heaven01/heaven01a.html
「優秀な技術者を集めることは、プロジェクト成功への確実な要素ではない」
そこには、「優秀」な技術者を集めたにも関わらず失敗してしまった
プロジェクトの例が挙げられていた。
確かにこの記事は一見正しいように思える。
が、僕に言わせれば根本的な間違いが一つある。
プロジェクトが失敗してしまったような技術者を何故「優秀」と呼べるのだろうか。
--- 優秀って? ---
おそらく、彼らの意見は「技術スキルがある = 優秀」というものだろう。
いくら技術スキルがあっても、それを有効に活用してくれるマネージャ等がいなければ
彼らの力は発揮されないという。
そんなのが本当に「優秀」な技術者と言えるだろうか?
そういった輩は、常に優秀な人物の元で働いてきたのだろう。
自分がやるべき内容を指示され、それに従って忠実に動く。
しかし、それによってどのような結末が待っているかを判断する能力が無い。
その結果、彼らは月350時間という強制労働を強いられたらしい。
--- プロジェクトを成功に導くには ---
優秀だと言われている彼ら技術者に、最も欠けている部分がある。
プロジェクトを完成させるために必要な作業の全体像が見えていない。
それは全ての事項よりも優先して考えられるべきなのに
誰もその事を考えていない。もしくは、考えるだけの能力が無いと言った方が正しいか。
--- 技術者の役割 ---
そういった作業はプロジェクトマネージャ(以下PM)がする事だから
技術者は全く気にする必要が無いって?
甘いね。
PMは、ピラミッドの先端に位置する人物だ。
大まかなスケジュールを決めるのは彼だが、
それを実現できるかどうかは実際に作業する技術者でないと判断できない。
今回の例では、PMはそれを判断することが出来なかったようだ。
最初の3ヶ月間では「理想的」な設計書が作り上げられた。
しかし、その設計をコーディングするのにどの程度の工数が掛かるかという事を
誰一人として判っていなかった。
そしてこれは、「実装」を軽く見ている奴らがよく陥るトラブルだ。
--- 現実を見る力 ---
こんな初歩的なミスをおかすPMが、果たして優秀と言えるのだろうか?
僕から言わせれば、彼はとんでもない無能PMだ。
理論や過程なんかどうでもいい。
ただ単に、彼は「結果」を残せなかった。
それだけの理由だ。仕事とは、そういうものだと思う。
だから、僕がPMに一番必要だと思う条件はたった一つ。
それは「現実を見る力」だ。
緻密な設計書大いに結構。しかしそれも、プロジェクトが成功してはじめて意味をなす。
現実が見えていれば、そのプロジェクトを成功に導くための道がきっと見えてくる。
「何とかなるだろう」。PMが決して口にしてはいけない最悪の言葉だ。
PMが発する言葉はこうであるべきだ。
「何とかする」。その為にPMがいるのだ。全力を尽くし、プロジェクトを成功に導くために。
--- 先生 ---
この現場は、もともとハード系テストの作業をする人たちが多いので
そもそもプログラマが少ない。
周りから「先生」と呼ばれている人ですら、相当レベルの低いことが判明。
笑っちゃいかんが、その程度の実力で先生と呼ばれてて恥ずかしくないのかねぇ。