アーキテクチャをスマートに。

株式会社ネオジニア代表。ITアーキテクトとしてのお仕事や考えていることなどをたまに綴っています。(記事の内容は個人の見解に基づくものであり、所属組織を代表するものではありません)

マネージメントの大きな勘違い

ある受託開発プロジェクトの現場で実際にあったこと

月曜日。

小春日和で気持ちのいい朝だった。

今日から新しいプロジェクトのスタートだ。

メンバーは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君も不幸になったのである。

もちろん、このマネージャには他にも問題があったが、それはまた別の機会に。