スウォーミングをはじめよう
強いチームになるために #2
これはウイングアーク Agile and DevOps Stories のAdvent Calendar 2020、第2弾(2020年12月2日)の投稿です!
良いチームの特徴
私はプロセス改善エンジニアとしてウイングアークの様々なチームと関わっていますが、どのチームにも個性や特色があって日々発見があります。
最近注目しているチームは、機能担当制からチーム制にチャレンジしているチームで、これまで1機能に1担当者を割り当てて開発していましたが、特定のメンバーにしかできないタスクが増えている課題を解決するために今期から1機能をチームで開発し、仕様検討、設計もチーム全員でディスカッションしたりモブにチャレンジしながらすすめるようになっています。
これにより、傍からみてもチームのコミュニケーション、透明性、フィードバックサイクルが早くなり成長を続けている良いチームだなと感じています。
このように1つの機能、タスクをチーム(または複数人で)取り組むことをスウォーミング(Swarming)と言います。F1のレースでピットに入ってきたレーシングカーをみんなで一斉にメンテナンスするあのイメージです。
今日はこのスウォーミングについて紹介していきたいと思います。
リソース効率 vs フロー効率
チーム開発が主体のウイングアークの中でもスウォーミングをしているチームはまだ少数です。チームとは言いつつ、個の活動が強く機能ごとに担当が割り当てられます。
こういったチームでは、リソース効率(メンバー全員が100%稼働している)ことを重視しており、「何人もで同じことをするなんで無駄だ。」「分担すると時間がかかる。一人でやったほうが早い」ということが言われるため、並行して複数の機能開発が進みます。
一方で、スウォーミングに取り組んでいるチームは結果的にフロー効率(無駄を省きリードタイムを短く、早く完成させる)が高くなっています。最初の課題は新メンバーへのOJTだったり、特定の人しか担当できずに進みが悪い機能の引き継ぎ要素が強かったですが、1つの機能に全員が取り組むことでメンバーのタスクの切り替えや思い出し作業に時間をとられることがなくなり、全員で効率のよい進め方を考え分担することでリードタイムが短く早く完成するようになります。
スキル面でも、個々の専門性がチーム全体に共有され、特定分野の専門性と全体を広く理解するT型人材が育ちます。
確かに、誰でもできるような作業は専任で進めたほうが早いこともありますのでどんな作業でもチームで取り組むのがよいというわけではありませんが、私は1人でこなせない規模の仕事に素早く対応するためにチームがあり、チームの能力を最大化させる方法の1つがスウォーミングだと考えます。
複雑、不確実、大規模な仕事でこそ有効
私自身がメンバーとスウォーミングをする中で、スウォーミンングは複雑、不確実または、大規模な仕事においてこそ有効であり、実際に以下のようなメリットを実感しています。
- 自分の考えを整理、可視化できる
1人で焦っているとこの作業を飛ばして迷走しがちだが、メンバーと共有するための準備をすることで、自身の思考と段取りが整理できメンバーとの認識合わせも容易になり、以降の作業がスムーズに進む - 1人では思いつかなかったようなアイディアがでる
そのため、1人で作業するよりもチームとして満足度の高いものができあがる - 日々の活動の中でナレッジ、考え方、プロセスを共有できる
そのため、誰かが抜けても作業が止まることはなく安心して任せられる
結果として1人で取り組むよりも早く、質の高いものができていると感じています。
チームの関係性を高める
スウォーミングをするということは、チームで何をするのか、なぜするのか、どのように進めていくのかということを話し合うことになり、これらの活動を通じてお互いの理解を深め、自然とチームの関係性が高まっていきます。
ウイングアークはテレワークが基本の業務となっていますが、テレワーク環境での課題として、新メンバーとの関係構築があります。私は新メンバーがチームメンバーや業務内容を理解し、早くチームに馴染むためにもスウォーミングは効果があるのではないかと考えています。
より強いチームになるためにスウォーミングをはじめてみるのはどうでしょうか。