マネージメントの大きな勘違い
ある受託開発プロジェクトの現場で実際にあったこと
月曜日。
小春日和で気持ちのいい朝だった。
今日から新しいプロジェクトのスタートだ。
メンバーは4人構成で、以下のとおり
全員初対面だった。
お決まりのパターンで顔合わせと業務説明を受け、早速スケジュールの話になった。
とりあえず最初は、みな同程度のボリュームの作業を割り当てられ、数週間先までスケジュールが引かれていた。
1週間が経過。
どうやらB君の作業が遅れはじめているようだ。
マネージャは苛立ちながら、B君に対し作業の見通しを聞き出している。
というより、「いついつまでに終わらせます」と言わせているだけだった。
A君は順調に作業をこなし、とりあえずは予定通りに進めているようだった。
C君はスケジュールよりも前倒しに進められていて、1日程度の余裕がある状態だった。
その週の金曜日。
B君の作業は昨日の朝からほとんど進んでおらず、また怒られていた。
マネージャは、B君に対して休日出勤をして挽回するよう指示をした。
午後、メンバーは突然ミーティングに召集され、急な割り込み仕事が3件発生した事をマネージャから伝えられた。
さて、あなたがマネージャなら、この仕事を誰を割り当てますか?
よく見かけるやりかたは、能力の高いメンバーに作業を集中させるやりかただ。
この例では、現時点でスケジュールに余裕のあるC君に追加作業をお願いすることになる。
もっと公平?なやりかた。
ところがその現場のマネージャはとんでもなく公平(?) というか短絡的な発想で割り当てを行った。
なんと、3人それぞれに1件ずつ作業を割り当てたのだ。
一見、平等に仕事が振られているので公平だと思うかもしれない。おそらくそのマネージャ本人もそう思ってやったことだろう。
全員揃ってのミーティングで、C君ばかりに作業を頼むのが心苦しかったのかもしれない。
でもこれ、実はぜんぜん公平じゃないし、全く平等でない。
B君がかわいそうとか、そういう人権問題的なことじゃない。
マネージメントという仕事の観点から平等でないということだ。
では自分ならどうしたか。
その開発メンバーの能力は、A君は平均レベルで、B君とC君には大きな差があった。
間違いなく自分なら、A君に1件の仕事、C君に2件の仕事割り当てると思う。
割り当てる仕事量は、能力によって調節するべきだ。
ITエンジニアという職業は、個人の能力差によって作業スピードに大きな差がでる。
どれぐらい差が出るかというと、一概には言えないが、最大で6倍だとか10倍だとか言われている。
したがって、能力が高いエンジニアにはより多くの仕事を、そうでないエンジニアには、それなりの仕事量を。
そうすることで、みんなが丁度いい仕事量となり、円滑にプロジェクトが回り始める。
現場のマネージャは、メンバーの実力を見極め、それに応じて仕事量を調節していかなくてはならない。
そんなのあたりまえの話じゃないの?
そうなんです。
能力に応じて仕事を割り当てるという手法は、すごく単純明快で理にかなっている。
当たり前すぎて、「何を今さら」みたいに思われるかもしれない。
でも実際の開発現場では、それがわかっていないマネージャが本当に多い。
だからスケジュールは遅れるのが当たり前、残業・徹夜・休日出勤が当たり前になっている。
現場のエンジニアも、そんなマネージャしかいないので、そういうやりかたしかないのだと思っている人もいる。
違う。それが当たり前じゃない。もっとうまくやれるはずだ。
現場のエンジニアは、それが当たり前じゃないことに早く気づいてほしい。
その後
B君は日々みんなと同じように割り当てられ、残作業は山積状態、
とりあえず与えられた仕事を終わらせるのに忙殺される。
品質もへったくれもあったもんじゃないので、当然、他のメンバーが手助けに回るが、時すでに遅し。
プロジェクトは炎上した。
これが間違ったマネージメントの結末だ。
B君だけでなく、A君もC君も不幸になったのである。
もちろん、このマネージャには他にも問題があったが、それはまた別の機会に。