https://techplay.jp/event/699906 の登壇資料です。
SkyWayの開発現場いつの間にか最高のアジャイルチームになっていた件について@Tech-on MeetUp#03@iwashi862018.11.12
View Slide
そもそも最高とは何か?・あるアンケートでのチーム評価が由来
そもそも最高とは何か?・あるアンケートでのチーム評価が由来 ↓ 仕事のストレス判定図(労働省が作成)
参考: https://mental.m.u-tokyo.ac.jp/jstress/hanteizu/zukanni.htm 実際にはもう1つグラフがあるが、説明の簡略化の都合上、割愛読み方・100が全国平均・110だとメンタルヘルス 不調リスクが10%上昇
参考: https://mental.m.u-tokyo.ac.jp/jstress/hanteizu/zukanni.htmでは、SkyWayチームはどの辺?
参考: https://mental.m.u-tokyo.ac.jp/jstress/hanteizu/zukanni.htm答え:余裕の圏外でした(43)
結果的にこうなった…では、何をしてきたらこの結果に到達したか?
今日のゴール何かしらの取り組みを1つでも持ち帰って試す気分になっていること
・岩瀬 義昌 / @iwashi86・NTTコム所属 WebRTCプラットフォームである SkyWayのTech Lead・fukabori.fmの人
・Web Real Time Communication・Line通話機能とかadd-on実装できる・開発/運用は沼
SkyWayはWebRTCのめんどくささを解消するマネージドプラットフォーム
本題
前提・開発はスクラム ・1 week sprint ・各種イベントは水曜日に集中
前提・開発はスクラム ・1 week sprint ・各種イベントは水曜日に集中・メンバ ・専任スクラムマスタ ・プロダクトオーナ / プロダクトマネージャ ・開発チーム 8人
前提・開発はスクラム ・1 week sprint ・各種イベントは水曜日に集中・メンバ ・専任スクラムマスタ ・プロダクトオーナ / プロダクトマネージャ ・開発チーム 8人・チームメンバの志向からリモートワーク多め ・(水曜日だけは極力集まる)
本日のお品書き1. プロセス2. 技術3. 人・チーム
スクラムの実装(スクラムガイドに無い点)
スプリントプラニング・キャパシティ管理 ・各メンバの予定から使える時間を算出
スプリントプラニング・キャパシティ管理 ・各メンバの予定から使える時間を算出曜日 Aさん Bさん水曜日 0 0木曜日 4 2金曜日 4 0月曜日 3 0火曜日 0 4合計 11 6
スプリントプラニング・見積りは Planning Poker + Reference Task
プロダクト・スプリントバックログ管理・リモート前提なので物理的な道具は無し
プロダクト・スプリントバックログ管理・リモート前提なので物理的な道具は無し・ツール ・Trello、Huboardなど色々と試して Taigaに落ち着いている
Taiga カンバンはこんな感じ
プロダクト・スプリントバックログ管理・Taigaのこの辺が好み ・Story -> Task の階層構造がわかりやすい ・Sprint毎に専用URLを切り出せるので Sprintのゴール/タスクに集中しやすい
スプリントレトロスペクティブ・リモート前提なのでGoogle Slidesを使用
Google Slides KPT イメージ
スプリントレトロスペクティブ・リモート前提なのでGoogle Slidesを使用・KPTのみだとProblem/Tryが出にくくなる
スプリントレトロスペクティブ・リモート前提なのでGoogle Slidesを使用・KPTのみだとProblem/Tryが出にくくなる ⇒ レトロスペクティブを改善というTryが出る
スプリントレトロスペクティブ・リモート前提なのでGoogle Slidesを使用・KPTのみだとProblem/Tryが出にくくなる ⇒ レトロスペクティブを改善というTryが出る・今は タイムライン + 555(Triple Nickels)改
手順1: タイムラインを全員で作成
手順2: 各個人で重要な出来事を書く
手順3: 他メンバがアイデア/コメント追記
手順4: メンバで投票が多いものを深掘り+ アクション抽出
デイリースクラム・もちろんオンライン
デイリースクラム・もちろんオンライン、こんな感じ
デイリースクラム・もちろんオンライン・SMチームのデイリースクラムの前に全体朝会
デイリースクラム・もちろんオンライン・SMチームのデイリースクラムの前に全体朝会 ⇒ 他チーム(e.g. Developer Relations)らと プロダクト全体のトピックを共有/相談
デイリースクラム・もちろんオンライン・SMチームのデイリースクラムの前に全体朝会 ⇒ 他チーム(e.g. Developer Relations)らと プロダクト全体のトピックを共有/相談 e.g. プロダクトマネージャの ユーザヒアリング結果を開発に説明 ⇒ユーザの声を即時反映していく!
技術・XPのプラクティスを併用 ・テスト駆動開発 ・ペアプロ ・リファクタリング ・継続的インテグレーション など
スタンドを召喚していくhttps://developer.ntt.com/ja/blog?page=1
技術・XPのプラクティスを併用 ・TDD ・ペアプロ (XPじゃないけどモブプロ) ・リファクタリング ・継続的インテグレーション など
スタンド以外(及部さん)も召喚していく!https://developer.ntt.com/ja/blog/8c2deb0d-5523-4816-b666-3603e4548a20
チームでのモブの様子
技術・XPのプラクティスを併用 ・TDD ・ペアプロ ・リファクタリング ・継続的インテグレーション など・その他、世の中のベストプラクティスを採用 ・クラウドネイティブな設計 ・12 Factor Apps など
参考: SkyWayチームの技術スタック・その時々のチームにベストなものを選ぶ
透明性と心理的安全性・スクラムの3本柱の1つは「透明性」
透明性と心理的安全性・スクラムの3本柱の1つは「透明性」・人と人の間の透明性を担保するには 高い心理的安全性がどうしても必要
透明性と心理的安全性・スクラムの3本柱の1つは「透明性」・人と人の間の透明性を担保するには 高い心理的安全性がどうしても必要・どうやって高めていくか?
チームビルディング合宿
チームビルディング合宿・普段とは違う場でメンバ個人の モチベーションなどを共有し合う
こんな感じ
チームビルディング合宿のトピック ・16Personalities 性格診断テスト ・ムービングモチベーターズ ⇒ 人となりを知る
チームビルディング合宿 ・16Personalities 性格診断テスト ・ムービングモチベーターズ ⇒ 人となりを知る ・「半年、1年後に何がやりたいのか?なぜか?」 ⇒ その人のモチベーションを最大化
チームビルディング合宿 ・16Personalities 性格診断テスト ・ムービングモチベーターズ ⇒ 人となりを知る ・「半年、1年後に何がやりたいのか?なぜか?」 ⇒ その人のモチベーションを最大化 ・あとはアンカンファレンスで自由に ・今転職したいか?
チームビルディング合宿 ・16Personalities 性格診断テスト ・ムービングモチベーターズ ⇒ 人となりを知る ・「半年、1年後に何がやりたいのか?なぜか?」 ⇒ その人のモチベーションを最大化 ・あとはアンカンファレンスで自由に ・今転職したいか? ⇒ 転職する人が出る!(笑) それで構わない!
ポエム
ポエムによる自己開示 – なぜ今この仕事を?
心理的安全性のニワタマ心理的安全性のためには自己開示が必要自己開示するためには心理的安全性が必要
心理的安全性のニワタマ心理的安全性のためには自己開示が必要自己開示するためには心理的安全性が必要誰かが先陣を切る & 強制しない
もう1つの合宿
開発合宿
・開発だけじゃなくてPOやDevRelも参加
・開発だけじゃなくてPOやDevRelも参加・開発テーマは自由 ・C++のBoostをひたすら勉強する人 ・botを作り込んでいる人 ・リーンキャンバスを書いている人
これらの取組みを組み合わせていった結果
参考: https://mental.m.u-tokyo.ac.jp/jstress/hanteizu/zukanni.htm余裕の圏外でした(43)
振り返ってみれば…
なぜこんなことが出来たのか?
なぜこんなことが出来たのか?・スクラムチームの身近なステークホルダー ・つまり采配権限をもつ上司・上長
なぜこんなことが出来たのか?・スクラムチームの身近なステークホルダー ・つまり采配権限をもつ上司・上長・この人の理解度がとても重要 ・権利と責任をセットでくれる人 ・こういう人を擁護者/支援者になってもらう
なぜこんなことが出来たのか?・スクラムチームの身近なステークホルダー ・つまり采配権限をもつ上司・上長・この人の理解度がとても重要 ・権利と責任をセットでくれる人 ・こういう人を擁護者/支援者になってもらうどうしても難しい場合は? -> fukabori.fm ep10で
まとめ1. プロセス2. 技術3. 人・チームおしまい!