フルスタックチームへの進化 〜クロスファンクショナルの実現〜
はじめに
こんにちは!株式会社ブロードエッジ・ウェアリンク CTOの高丸です。
今回は、Qiita Advent Calendar 2024の23日目の記事です。
今回は、弊社のスクラム開発チームがクロスファンクショナルなチームに成長した経験について共有していきます。
実は、このチームの成長ぶりには自分でも驚かされることが多く、「偶然だったのかな」と思うことも少なくありません。
しかし、結果としてチームは確実に進化を遂げ、今では互いの領域を理解し、補い合える関係性が築けています。
この記事では、我々が心がけてきたことや、その過程で得られた気づきについて詳しくお話ししていきたいと思います。
スクラムにおけるクロスファンクショナル
スクラムでは、クロスファンクショナルなチーム、つまり機能横断的なチームを作ることが求められています。フロントエンド、バックエンド、インフラなど、それぞれ異なる専門性を持つメンバーで構成されることが理想とされているのです。
しかし、私の経験上、本当の意味でのクロスファンクショナルの実現は容易ではありません。
異なる専門性を持つメンバーを揃えること自体は難しくありません。
ただ、それぞれの分野の知識がチームメンバー全員に共有され、メンバーひとりひとりの技術的視野が広がっている状態を作り出すのは、簡単ではないと思います。
実際のところ、多くのチームでは、特定のメンバーが得意分野の作業だけを担当する傾向があります。
これ自体は必ずしも悪いことではありませんが、私自身の過去の経験でも、そういった状況が多かったように思います。
理想を言えば、ある特定の分野に長けたメンバーが一時的に不在となっても、他のメンバーで同等のパフォーマンスを維持できる状態。それが真のクロスファンクショナルチームの姿だと思います。もちろん、そのようなチーム作りは並大抵の努力では実現できません。
弊社のスクラムチームでは、最近チーム主導の技術勉強会を開催しました。
その内容が非常に充実したものだったことは、22日目の記事でもご紹介した通りです。
この成功は、まさにメンバーがクロスファンクショナルな行動力とスキルを身につけた証だと、私は確信しています。
どういうことが功を奏したか
我々のスクラム開発で、クロスファンクショナルなチームへの進化に貢献しただろう主な要因をご紹介します。
モブプログラミングによる知識共有の促進
開発初期、外注協力会社のメンバーを中心としたチームでは、ペアプログラミングによるコーディング手法の共有を試みていました。決して悪くはなかったものの、継続的な実施には至りませんでした。
その大きな要因の一つは、フロントエンド開発に長けたメンバーが少なく、適切なリードができる状態ではなかったことだと考えています。
現在のモブプログラミング体制では、フロントエンド開発のスキルを持つメンバーが増え、より実践的な知識共有が可能になっています。体系的なコーディング手法が各メンバーのスキルとして着実に定着してきているのを実感しています。
現在は、私を除くとエンジニアは6名で、3:3のチームに分かれてモブプログラミングを実施しています。
また、スプリントごとにチームを組み替え、前回フロントエンド開発を担当したメンバーが今回はバックエンド開発を行うなど、意図的なローテーションも取り入れています。
なお、9日目の記事でも紹介しましたが、これらのモブプログラミングセッションはGather上で実施しています。
心理的安全性の確立
我々のチームの特徴は、コミュニケーション能力の高いメンバーが揃っていることです。
さらに、大学インターン生など、異なる視点や新鮮な発想をもたらすメンバーの存在も、チームの活性化に貢献しています。
スクラム開発の経験者も多く、優れたフォロワーシップを発揮するメンバーにも恵まれています。
そのため、一方的な指示出しではなく、全員が積極的に議論に参加できる雰囲気が醸成されています。
振り返り
開発中のコミュニケーションはもちろんですが、スプリント終了後の振り返りも非常に重要な役割を果たしています。
KPTをベースとした振り返りでは、良かった点は継続できるように、うまく行かなかった点はryで改善できるように、全メンバーが積極的に発言しています。
ファシリテーションは弊社のプロジェクトマネージャーが行っていますが、うまく全員の意見を聞き出しており、誰でも改善を提案しやすい雰囲気を作っています。
オフラインでのコミュニケーション
リモートワークを中心とした開発体制ではありますが、半年に1回程度は地方在住のメンバーにも弊社のワインバーに集まってもらい、対面でのコミュニケーションの機会を設けています。
画面越しでは気づかない身長の大きさに驚いたり、冗談を交わしたりと、和やかな雰囲気でのコミュニケーションが、チームの結束力をさらに高めています。
さいごに
クロスファンクショナルなチーム作りは、決して一朝一夕には実現できません。
我々のチームも、モブプログラミングの導入から心理的安全性の確立、そして実効性の高い振り返りの実施まで、様々な取り組みを重ねてきました。
スクラムの目的は、メンバーのコミュニケーションを増やすこと 。
それを意識してチーム作りをしていくことが大事だと思います、
Discussion