システム開発で機能するチームの作り方
「みんな嫌々仕事としてて責任逃れな言動ばっか…」
「前のプロジェクトはうまくいったんだけど、何が良かったんだろう?」
「チームが機能する」って言いますが、それは何を表しているのでしょうか?
チームは個人の集まりです。チームが機能する前に個人が機能する必要があります。
そう考えると見えてくるものあります。
そんなわけで、今回は「システム開発で機能するチームの作り方」を紹介します。
Contents
メンバーを評価する2つの観点
個人が機能する = 個人の能力が発揮される
そのためにまずは、メンバーの能力を把握します。
- AさんはUIのデザインが得意
- Bさんはバックエンドのロジックを構築するのが得意
- Cさんはインフラ構築に長けている
- Dさんはデータベースが得意でチューニングが出来る
このような個々人の特性に加えて、今興味を持っていることを把握します。
たとえば、DBに詳しいDさんが今DBの仕事に興味があるとは限りません。「DBは十分やったので今後はUI周りをやってみたいなぁ」と考えているかもしれません。
これを考慮しないと「またDBの仕事かよ、やる気しねぇ…」と思われてしまいます。
これでは、個人の能力が最大限に発揮されず、チームが機能してるとは言えません。
ですから、
- 能力的な特徴(何が得意か?)
- 趣向的な特徴(何をやりたいか?)
の2つを考慮することが重要なんです。
やりたい仕事を担当させるべき?
メンバーの能力と趣向を見た上で、能力とやりたいことが一致してるなら、その仕事を任せるのが一番です。
一致していない場合、やりたい方の仕事をさせるか否かの選択になります。
やりたい仕事を割り当てた方がメンバー個人にとっては良いのですが、チームにとっては良いとも限りません。
その人がやりたい仕事にどれほど習熟しているかを見ます。
「やりたいと思って以前から勉強していて、仕事で使えるレベルの知識を十分に持っている」ならば、その仕事を任せていいでしょう。
スキルの水準は充分ではないけれど、その仕事へのモチベーションがとても高く短期間で戦力になりそうだという場合も、任せられます。
スキル水準もモチベーションも十分ではないけれど、プロジェクトには人員や納期的に余裕があり、教育的投資としてその人に任せてみるという選択もあり得ます。
つまりは、その人にその仕事を任せてもプロジェクトが成功しうると考えられる場合はやらせてあげた方が良いということです。人はやりたい仕事をやっている時に一番やる気が出ますからね。
やりたくない仕事を担当してもらう時に伝えるべきこと
状況的に今その人にやりたい仕事を担当させてもうまくいかなそうだという場合は、得意な仕事を担当してもらいます。
その際に「今回はプロジェクト的に余裕がなくて、今までやってきた得意分野である□□の仕事を担当してもらうけれど、今後はあなたが興味を持っている○○の仕事を頼めるようにしたいと思っているので今回は□□の仕事をお願いします。」と説明をします。
説明することってとても大事です。
同じ仕事を担当させられるのでも、説明があって納得した上でやるのとそうでないのとでは、仕事への気持ちが全く異なります。
「本当はこっちの仕事をやりたいんだけど、状況的にしょうがないよな」と納得できれば、任された仕事に対して前向きに取り組めます。
逆に納得感がないとやらされてる感が強まります。ですから説明はとても大事です。
メンバーの能力と趣向、どちらにも合わないタスクはどうする?
メンバーの特性や趣向に合わせて割り振った上で余ったタスクはどうしましょうか?
自分がやるのもいいですか、その仕事を得意になってもらいたいメンバーに担当してもらうという選択もあります。
その際にも、
「この仕事はあなたにとって未経験だけど、今社内にこの分野に強いメンバーがいなくて、今後重要になっていく分野なので、ぜひこの分野のエキスパートになってほしいと思ってます。こちらでもフォローするのでぜひがんばってください。」
のような説明をすると、苦手な仕事を押し付けれらたと感じるのではなく、
「私は重要な仕事を任されたんだ!」
と感じてモチベーションが湧きます。
人は期待されると、それに応えようとします。
心理学の実験で、無作為に選んだ生徒に「君は数学の才能がある」と伝えたグループとそうでないグループとでは、その後の成績の伸びに大きな違いがあったそうです。もちろん伸びたのは伝えた方のグループです。これをピグマリオン効果といいます。
ですから「あなたに重要な仕事を任せたいんです。」と伝えることはモチベーションを高める効果があります。
このようなやり方で担当タスクを割り振ると、とてもよく機能するチームが生まれます。
それぞれのメンバーが得意なこと or やりたいこと or 期待されてることをやるからです。
これに加えて、得意でない仕事を担当させる際の良い方法があります。
その分野が得意なメンバーをサブ担当者として付ける
例えば、DBが得意なAさんとUIが得意なBさんがいるとします。
BさんにはDBも覚えてもらいたいので、DBの仕事を担当してもらいます。その際にDBが得意なAさんをサブのDB担当者としてアサインします。
Aさんには自分のメイン担当作業をやりながら、余裕のある時にはBさんに仕事を教えていきます。
そうやっていく内にAさんのDBノウハウがBさんに伝わってBさんもDBのエキスパートになれます。
こうやって、技術の伝承がなされる作業割り振りをすることでエキスパートを量産できます。
作業分担こそがチームを機能させる肝です。ぜひ、うまく機能するチームを作ってください!