開発チームマネジメントについて 202306

この記事は 個人Qiita と同じ内容です

qiita.com/sekiyaeiji

開発チームをどのように運営すればよいか

開発組織を直接的に任される職能名、役割名は各企業の規模やフェーズによりさまざまだと思いますが、EM(エンジニアリングマネージャー)やPO(プロダクトオーナー)、TL(テクリード)やチームリーダー、SM(スクラムマスター)、開発責任者をはじめ、CTOやVPoEも状況に応じて、開発チームを直接的に任される機会はあるでしょう。

開発チームは組織された後、どのように運営されるべきなのでしょうか。

理想のチーム

チーム運営について考察するにあたって、チームが目指すべき状態、理想のチーム像について明らかにしておきます。

タックマンモデル

タックマンモデルとは、ブルース・タックマン(Bruce Wayne Tuckman、 1938–2016、心理学者)が組織の成長の段階を示したもので、組織は以下の4つの段階を経ることによって成長できる理想の組織になるというモデルです。

  1. フォーミング期 (Forming、形成期)
    • 様子見、表面的な関係
    • 否定が少ない
    • とりあえずやってみる
  2. ストーミング期 (Storming、混乱期)
    • ジレンマ、否定的な感情
    • 意見や価値の対立、議論
  3. ノーミング期 (Norming、統一期)
    • ジレンマの解消、規律の明確化、役割や手順の確立、共通理解、共通言語
    • 信頼感が増す
    • チームとして機能し始める
  4. パフォーミング期 (Performing、機能期)
    • チームへの自信
    • 臨機応変、柔軟対応、次の課題へ

チームは大小さまざまのタックマンモデルの機会を繰り返し得ています。
メンバーの増減や組織の方針変更、体制変更、組織目標の変更、プロダクトロードマップの変更、短期間なものではプロジェクトストーリーの1つ1つや1イテレーション、1スプリントに対しても、タックマンモデルの機会が発生します。

ここでマネジメントの採るべきスタンスは、タックマンモデルのプロセスを上手に活用することによりチーム成長の機会を最大化することです。

タックマンモデルでもっとも重要なステップは「ストーミング期」です。メンバー同士の価値観の衝突によりコンフリクトが発生します。これをチーム成長の機会と捉え、メンバー同士のコミュニケーションによる納得解の創造へと導くことが大切です。このときに必要なのは、メンバー同士が尊重し合うことと、前向きなディスカッションを心がけること、心の安全が担保されていることです。そのコンフリクトの中で、安易な妥協を選択せず、対立を超越した止揚アウフヘーベン、aufheben)による高次元の解を目指すことが、ストーミング期の目標になります。

ストーミング期で発散、収束を経た解を模範解答として、成功・失敗を繰り返した試行錯誤の上でメンバー個々に暗黙知を育てるのがノーミング期です。失敗を含めトライを称賛する風土が必要になります。

パフォーミング期では、個々の暗黙知をチーム共通の認識である形式知に変換し、発散したチームを創造的に再結合することによって、メンバー同士の1+1が3や4になっていることを目指します。安易な仲良し集団ではない真のチームワークの醸成が目標になります。

一方で、形式知は創出されると直ちに陳腐化しますので、パフォーミング期が形成されたときが、新たなフォーミング期へ向かうべきタイミングになります。

現在の不確実性が高く正解のない環境においては、改善のサイクルを継続的に実行することによってチームは成長することができます。これはつまり、停滞することはチームの退化と同義であるということです。

チーム改善の本当の解

現在のマネジメントの文脈で必ず言及される「傾聴」において感じることの一つに、対話のなかで加工コストが高い、あるいは採用するのが困難なアイデア、というものが一定数あります。

  • WILLやゴールが存在しないアイデア
  • HOWを決め打ちしたアイデア
  • 見聴きしたまま受け売りのアイデア
  • 幻影に惑わされたアイデア
  • 他人や外部要因にフォーカスしたアイデア

これら一つ一つへの詳細な言及はここでは割愛しますが、これらに共通して言えることは、いまのチームの現状の生の問題点から自力、あるいは自チームメンバーの力で考え抜いて導き出した課題になっていない、ということです。過去のどこかの価値観やバイアスを通して、それがいまのチームの問題であるかのように感じて持ってきてしまった課題であると感じることが少なくありません。

チームの継続的な改善においては、チームの現在の本質的な問題点に言及し、そこからチーム全員で改善案を導き出し解決に取り組むことによってストーミング期の効果を最大限に活かすことができます。過去や他者の成功事例や価値観は参考にしつつも、自チームの問題は自チームのメンバーにしか深掘り、解決することはできません。

リーン開発、アジャイル開発系の書籍において、解決方法・解決事例に言及しているが解は与えてくれないものがありますが、私はそういう書籍は信頼に足ると思っています。なぜなら、解はチームごとに異なるからです。

チーム運営の実践

笑いの重要性

私がもっとも大切にしている価値観があります。

  • 明るくほがらかに
  • 楽しむ気持ちとユーモアを大切にできる
  • 常にポジティブ

表現はさまざまですが、チームについて論じている情報に多く言及されている、チームコミュニケーションの基本であり極意と感じます。ほがらかな笑いが絶えないチームはさまざまな局面でキャパシティが大きく耐性が高いと感じます。オンラインの音声だけのコミュニケーションが増えた昨今ではなおさらです。先述の通り、メンバー同士のコンフリクトを意識的に創り出す必要がある現状において、常にポジティブであるということはもっとも価値がある行為であり、意識的に実践することが必要です。

メンバー成長への向き合い方

チーム成長を促進する要因の一つに、個々のメンバーの成長があります。

かつて「育成」と表現した行為を現在では「成長支援」と呼ぶそうです。成長は他者からは影響できず、「成長」できるのは本人自身のみだからだそうです。成長支援で実践できることは、環境づくりや課題提案などでしょう。

現在のマネジメントにおいて、メンバーに最も伸ばしてもらいたいスキルは「創造性」と「自律性」です。人は本来自律的に行動できる状態を好む性質があり、自ら主体的に達成した自己実現において強い満足感を得るためです。タックマンモデルによる成長を促進するためにも、開発チームにおいてはメンバー一人一人が楽しむ主体になり、主役になる必要があります。マネジメントの仕事として、チーム成長と同じくらい個々のメンバーの成長支援が重要になります。

チーム成長において目指すべき方向性

以上で述べた通り、チームは成長の過程で発散と結合を繰り返すのが理想の状態です。よって、チームの発散力と結合力が両方とも高い状態において、チームの成長量はより大きくなります。どちらかが低い状態では、チームは硬直しているか、バラバラであり、良好なコンディションとは言えません。これらは、チームメンバーのチームに対する満足度で測ることができそうです。以下にチームの現状を測る指標の例を挙げます。

  • チームのユーザー価値提供に対する満足度
  • チームのアウトプットに対する満足度
  • チーム自体に対する満足度

たとえばこれらの向上を目指すことによって、チーム成長の状態を把握することができるかもしれません。

まとめ

あらゆることに正解が見えない現在、プロダクトやチームが大切にすべき価値や解決したい問題について、外から何かを提示してくれることは期待できないと腹を括って、自らの脳をフル回転して指標を設定したり方針を決定すると考えると、タスクは増加するかもしれませんが気持ち的には楽になります。メンバーと自分を信じ、勇気をもって進んでいきましょう。