Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
モブの旅:チームの進化と1年間の歴史〜私達が「モブの皆さん」と呼ばれるまで〜
Search
yui-yoshida
July 04, 2023
Programming
0
75
モブの旅:チームの進化と1年間の歴史 〜私達が「モブの皆さん」と呼ばれるまで〜
yui-yoshida
July 04, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
ONE WEDGE_company_guide
1wedge_one
0
500
"config" ってなんだ? / What is "config"?
okashoi
0
240
はてなにおける CSS Modules、及び CSS Modules に足りないもの / CSS Modules in Hatena, and CSS Modules missing parts
mizdra
7
940
Java 22 Overview
kishida
1
190
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
7
1k
VS Code をプロダクトにどう取り込むか
onomax
1
440
Fragment Composition of GraphQL
quramy
7
1k
TCAとKMPを用いた新規動画配信アプリ 「ABEMA Live」の設計
tomu28
1
120
Apache Hive 4 on Treasure Data
ryukobayashi
0
350
Milestoner
bkuhlmann
1
410
ゆるい個人開発のススメ
kuroppe1819
10
990
使ってみよう Azure AI Document Intelligence
kosmosebi
2
330
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
Fireside Chat
paigeccino
21
2.6k
Being A Developer After 40
akosma
57
580k
[RailsConf 2023] Rails as a piece of cake
palkan
23
4k
Code Reviewing Like a Champion
maltzj
514
39k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Clear Off the Table
cherdarchuk
84
310k
Building Adaptive Systems
keathley
31
1.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
17
6.4k
Transcript
モブの旅︓チームの進化と1年間の歴史 〜私達が「モブの皆さん」と呼ばれるまで〜 Jul 1st, 2023 Yui Yoshida Yu Hashimoto Shogo
Kinjo Rakuten Group, Inc
3 Learning Outcome チームでモブプロを採⽤して ⼀つの事に皆で取り組むことの価値を知ってもらえる。
4 モブプロのやり⽅ 楽天ラクマにおけるシステム事例 私達のモブプロの歴史 私達なりの⼯夫や活動紹介
5 ⾦城 翔悟(きんじょう しょうご) 所属 楽天グループ株式会社 ラクマ開発課・Savannaユニット 職種 Application Engineer
好きな⾔葉 真にカルチベートされた⼈間になれ︕ 趣味 最近マインドフルネス瞑想始めました
6 吉⽥ 唯(よしだ ゆい) 所属 楽天グループ株式会社 ラクマ開発課・Savannaユニット 職種 Application Engineer
好きな⾔葉 ぐんま 趣味 ゲームで敵をたくさんキルすること
7 橋本 優(はしもと ゆう) 所属 楽天グループ株式会社 ラクマ開発課・Savannaユニット 職種 Application Engineer
好きなもの 猫 スクラムの概念はrakumaにやってきて初めてまともに出会いま した。初⼼者です。
8
9 私たちのモブ歴史年表
10 チーム発⾜、モブ導⼊初期 Hashimoto⼊社 2021年9⽉ Hashimotoが別チームに武者修⾏へ 2021年10⽉ Kinjo⼊社 現チーム発⾜ 2021年11⽉ モブプロを導⼊
2022年1⽉ モブプロの振り返りを実施 2022年3⽉ 初期メンバーが異動 隣のチームからメンバーが異動してくる 2022年5⽉ YoshidaがJOIN 2022年6⽉
11 ⼤いなる別れの時期 Break out room活⽤ TDD輪読会開始 2022年7⽉ 新メンバー加⼊、卒業 タスクの優先度が頻繁に変わって混乱 2022年8⽉
中堅メンバーが退職 2022年9⽉ 上司が退職する事が伝えられる 2022年10⽉ 組織のEngineerから3名のCSMホルダーが 誕⽣ 2022年11⽉ 上司が退職 新しい上司と合流 初めての障害報告 2022年12⽉
12 モブプロとチームについて向き直った時期 タスクの優先度などに追われる モブプロについて改めて向き直る 2023年1⽉ RTOが増えてリアルモブに挑戦し 始める 2023年2⽉ モブプロ情報共有会を部署内 で開催
2023年3⽉ チームで共通の⽬標を作成する KinjoがDevOpsDaysTokyoに参加 2023年4⽉ DevOpsDaysTokyoの視聴会を複 数回開催 2023年5⽉ 上司が退職する 新しい上司と合流 2023年6⽉ Scrum Fest Osaka 2023!!!! 2023年7⽉
13 モブを始めるきっかけ
14 チーム発⾜当初の状況 メンバー間で 業務に偏りが出てる レビュー出来る⼈が いない フルリモート 1⼈で開発が不安 育成問題 チームの半数がRails
未経験
15 当時のマネージャー モブでやってみたら どうですか︖
16 よくわからないけど モブプロやってみるか︕
17 役割交代ほぼなし タスクが終わらない とにかく疲れる モブプロやっていくぞー︕ ドライバー以外はただ 意⾒を⾔うだけ
18 ちょっとこの状況まずくないですか︖︖ モブプロについて改めて 振り返りません︖︖︖
19 我々のモブ⽅法論
20 ドライバー ナビゲーター モブ 役割交代のルールは 決めてない 役割交代のルールを決めてなかった事で こんな事が... • 1時間以上役割が交代しない時もあった
• ダラダラ⻑時間やることがある • 各々の役割に対する⾃覚があまりない 疲れる︕︕ モブの良さを 活かせてない︕ 役割交代のルールについて
21 ドライバー ナビゲーター モブ タイマー&役割導⼊でこんな良いことが︕ • 交代が活発になった • それぞれの役割について深掘りするよう になる
• 休憩を定期的に取るようになる • 役割交代がタスクに⾒切りをつけるきっ かけになる 10分タイマーを導⼊ モブタイマー︓https://mobti.me/ 役割交代のルールについて
22 今⽇やることなどを貼っていく • 何をすべきかが把握しやすい リンクの共有 • PRや依頼Slackのリンクなど コマンドの共有 • ナレッジの共有が捗る
調査タスクの実況 • 後で同じ問題にぶつかった時に⾒返しやすい • スレッドを⾒てた他のメンバーが「今からZoomで話しましょうか」など 毎⽇モブ専⽤のスレッドを⽴てる
23 Aさん Bさん Cさん リリースまで あと1週間ある から⼤丈夫そ うだな リリースまでも う1週間しかない
けどここまでし か終わってない DSで毎⽇タスクの検査はしているはずなの に、メンバー間でタスクの進⾏度に対する 認識のズレが起きていた
24 Aさん Bさん Cさん 1⽇の最後に振り返って どれくらい予定通り進んだ かを確認しましょう。 • 今⽇どれくらい予定通りだったか •
次の⽇(週明け)に何をすべきかが思い出しやすい • 休みをもらっていても進捗が追いやすい 1⽇の終わりにチームで振り返る
25 〇〇の件、調査をお願い できますでしょうか︕ プロデューサー陣 割り込みタスクについて
26 “些末な仕事は、決して重要性が低いわけではなく、単純な反復作 業である。” 些末な仕事とは なぜ問題なのか “単純な反復作業のためにモブ全体のエネルギーを集中 させてもあまり意味はない。考え⽅を切り替える必要 がある。” マーク・パール(2019)モブプログラミング・ベストプラクティス ソフトウェアの品質と⽣産性をチームで⾼める
⽇経BP社 些末な仕事の例 • 調査⽅法が確⽴してるログ解析 • QA⽤のデータ作成 • ⼿動バッチ実⾏ • 事業者様向けに必要な設定対応 割り込みタスクについて
27 どうすべきか 誰かが倒す事にすれば良い ただし、モブから離れる必要はなく 場は共有することは必要 タスクが発⽣したときにモブ 担当だった⼈がやろう︕ 割り込みタスクについて
28 他チームとの交流を増やすためにZoomのBreak Out Room活⽤ 元々はSlackのHuddleを開いてモブをしていた ⼿軽だし使いやすく チャンネルがワイワイし てすごく良いツールだけ ど、他のチームとの交流 が活発になりにくいな
29 他チームとの交流を増やすためにZoomのBreak Out Room活⽤ Room1 Room2 Room3 ちょっとRoom3に 質問してくるね︕ 他チームも
ワイワイしてるの が⾒えていいなぁ
30 他チームとの交流を増やすためにZoomのBreak Out Room活⽤ Room1 Room2 Room3 何か困ってそうですね ⼒になれることありま す︖
さっきレビュー コメントした件 ⼝頭でも説明させて ください 雑談しましょうよ
31 試練の訪れと振り返りのきっかけ
32 上司の退職 モブワークの 盾になってくれていた上司 これからは⾃分たちで 戦っていかないといけない 退職
33 上司の退職 私たちにとってのモブワークとは何か︖を振り返るきっかけに
34 メンバーの⼊れ替えが何度か発⽣ メンバーの相性やモブへの適性 チーム異動や退職
35 メンバーの⼊れ替えが何度か発⽣ メンバーの⼊れ替えが発⽣したら ⇨その都度、⾃分たちにあったモブワークの⽅法に変えていく モブワークが合わないと感じたメンバーがいたら ⇨合わなかったらモブワークから離れる 他のメンバーは無理やり引き⽌めないことが⼤切
36 個⼈の成⻑とモブ モブワークをやっていると 個⼈の成⻑がわかりにくい気がする︖
37 個⼈の成⻑とモブ 「モブではなくても、個⼈の成⻑は悩むものではないか︖」
38 個⼈の成⻑とモブ 振り返りの⼿法を変えてみるのはどうだろうか︖
39
40 個⼈の成⻑とモブ 試してみる Fun Done Learn ⾒えてくるものがあるかも︖ Fun Done Learn
今後色々な振り返り手法を 試してみるぞ︕︕︕
41 個⼈の成⻑とモブ 「⾃分はモブワークに貢献できていないのかもしれない…」 ⇨得意なこと、不得意なことを共有し、 お互いが補い合ってモブワークをすることが分かっていれば この悩みは減るのではないだろうか︖
42 モブワークについての周囲からの理解 ・リソース効率 各リソースが最⼤限稼働することに焦点を当てている ・フロー効率 各タスクが効率よく進むことに焦点を当てている タスクA タスクB タスクC タスクB
タスクC タスクA
43 モブワークについての周囲からの理解 「顧客に素早く価値を提供する」ことに価値を置いている
44 モブワークについての周囲からの理解 モブ導⼊当初 ⇨モブワークの⽣産性に疑問を持たせてしまった チームを複数ラインに分ける事を検討することもあった 1年経った現在 ⇨「モブの皆さん」と呼ばれるようになった モブチーム1単位で仕事をするのが当然として受け⼊れてもらっている
45 モブワークについての周囲からの理解 ⾃分たちが理解して説明し、実⾏し、実感してもらう
46 そして「モブの皆さんへ」
47 私たちは「モブの皆さん」になった 基本的に作業依頼や問い合わせは全て「@savanna_mob」にきます。 We are @savanna_mob!
49 私たちは「モブの皆さん」になった 「モブの皆さん」と呼 ばれて、何が嬉しいん ですか︖ 「属⼈化がないこと」 です
50 私たちは「モブの皆さん」になった ⾃他ともに「モブチーム」と認識する ↓ 属⼈化が減る ↓ • 常に誰かが対応できる。(急な休みに困らない) • チーム編成の変化に対応が可能です。(引き継ぎ問題の解消)
• チーム意識の形成(私たちは同じチームである︕) We are @savanna_mob!
51 外から⾒た「モブの皆さん」 • 窓⼝がわかりやすい • 担当者の休みを気にしないでタスクを依頼できる • チームで動いているので、ある程度⼤きいボールが渡せる。 • イレギュラーがあっても⼀⼈でやる時よりタスクの⼿戻りが少ない
• 他チームへの作業引き継ぎもチーム単位だと依頼しやすいようだ • 若⼲ブラックボックスっぽくなっている (モブ内での共有で満⾜して「細かく外に報告する」⾏為が減っている︖) • モブの良さはわかっているけど、モブを選ぶということについて、「良さを経験 した⼈とそうでない⼈の腹落ち度が違う」いうのはあるかも。 • ↑のギャップを埋めるには、⾒積もりの正確性が⼤事そう。 作業依頼者(Producer)から⾒たモブ
52 外から⾒た「モブの皆さん」 レビュアー︓ • モブじゃなかったプロジェクトと⽐べて、「レビュー待ち」ストレスが少ない • レビューコメントがしやすい(多少厳しいコメントでも、複数⼈に相⼿に⾔って るから1対1より気を遣わなくてよい) マネージャー︓ •
チームとして動いている感じがすごくある • トラブル報告なども⾃律的に動いている • モブスレによって「⾒に⾏けば」現状が開⽰されている。 • モブ内で完結しているからか、PullRequestのDesriptionなどが薄いのかも︖ (チーム外から⾒た時に説明やドキュメントが薄くなりがち︖) レビュアー、マネージャーから⾒たモブ
53 これからの私たち #1⽬標設定とその評価についての悩み • これまでの⽬標設定と評価環境の変化 • 被評価者として • 評価者の視点
54 我々は⽬標設定と評価から逃れることはできない
55 我々は⽬標設定と評価から逃れることはできない
56 ⽬標設定とその評価の悩み 〜我々は⽬標設定と評価から逃れることはできない〜 「モブとして」⽬標設定と評価にどう取り組むべきだろうか︖ ︖
57 ⽬標設定とその評価の悩み ▪これまでの⽬標設定と評価環境の変化 2022上期、2022下期 ↓ 2023年上期 ↓ 2023年下期 /PX ⽬標設定・評価ともにOさん
⽬標設定はOさん 評価はIさん ⽬標設定はIさん 評価はTさん イマ ココ
58 ⽬標設定とその評価の悩み ▪これまでの⽬標設定と評価環境の変化 2022上期、2022下期 ↓ 2023年上期 ↓ 2023年下期 ⽬標設定・評価ともにOさん ⽬標設定はOさん
評価はIさん ⽬標設定はIさん 評価はTさん 共通の⽬標を設定 してみる 3⼈が同じような ⽬標を設定してい ることが判明
59 ⽬標設定とその評価の悩み ▪被評価者として (今期)共通の⽬標をたて、それを個⼈⽬標に組み込むと⾔うTry チームとして達成したいものは同じ︕ 共通の⽬標A 共通の⽬標B • 共通⽬標A …
30% • 共通⽬標B… 20% • それ以外の⽬標… 25% • それ以外の⽬標… 25% • 共通⽬標A … 30% • 共通⽬標B… 30% • それ以外の⽬標… 30% • それ以外の⽬標… 10% • 共通⽬標A … 40% • 共通⽬標B… 30% • それ以外の⽬標… 20% • それ以外の⽬標… 10%
60 ⽬標設定とその評価の悩み 共通のチーム⽬標を⽴てるTry ①まずは共通⽬標を 何にするか案を出す 実際に案を出してい る時のボード
61 ②選んだテーマに対して掘り下げる • Summary • What…何を達成したいのか • How…どうやって実施するのか • KPI…どうやって測るのか
実際に案を出してい る時のボード ⽬標設定とその評価の悩み 共通のチーム⽬標を⽴てるTry
62 実際に案を出してい る時のボード この⽬標にXXと いう形で貢献し ます。 この⽬標におい てXXという役割 で実⾏します。 この⽬標にXXと
いう形で活躍し ます。 ③個⼈⽬標に組み込む ⽬標設定とその評価の悩み 共通のチーム⽬標を⽴てるTry 了解です。
63 ⽬標設定とその評価の悩み ▪評価者の視点 2022上期、2022下期 ↓ 2023年上期 ↓ 2023年下期 /PX ⽬標設定・評価とも
にOさん ⽬標設定はOさん 評価はIさん ⽬標設定はIさん 評価はTさん
64 ⽬標設定とその評価の悩み ▪評価者の視点 2022上期、2022下期 Oさん 私たちにモブを勧めた Scrumおじさん 「モブチームを評価することが難しいと感じたことはない。 チームで同じことをやっているから、むしろ全員同じ作業し てるはずということ。その点で把握はしやすかった。」
• 被評価者と認識のずれがないかということを注意していた • エピソードとして活躍の事例が振り返りに含まれていると評価しやすい • 組織との⽬標に対する関連性があると良い
65 ⽬標設定とその評価の悩み ▪評価者の視点 2023上期︓評価 2023下期︓⽬標設定 /PX Iさん 「モブとしてどう⽬標を ⽴てるべきだろう︖」 を⼀緒に考えてくれた
マネージャー 「モブの評価って難しいですね」 ・評価のシステムが個⼈単位である以上、個⼈の成果物を⾒て⽐較する のだが、モブだと「個⼈の成果」を計測するのが難しい。 ・モブそのものに参加できない場合、メンバーがどういう活躍をしたのか実 際の様⼦がわからない。 ・チーム単位で平均化されることで、⾒えなくなってしまった個⼈の突出し て良い部分、悪い部分がないか︖気になる。
66 ⽬標設定とその評価の悩み ▪評価者の視点
67 ⽬標設定とその評価の悩み ▪評価者の視点 「個⼈単位」の評価が難しい
68 ⽬標設定とその評価の悩み ▪評価者の視点 2023下期︓評価予定 /PX Tさん 新しいマネージャー モブワークを実際に ⾒にきてくれる 各個⼈がモブの中でどう活躍したのか︖がやっぱり重要そう。
• 評価振り返りの時にちゃんと⽂章化することも⼤事 • 定量的な部分(KPIなど)は共通になるので、定性的な部分が重要になりそう。 • 同じ⽬標でも、ただモブの⼀員としてそこにいただけなら良い評価はできない モブそのものに参加してくれるので、 メンバーがどういう活躍をしたのか 実際の様⼦を⾒てもらえそう︕😄 ظ
69 ⽬標設定とその評価の悩み ▪評価者の視点 2023下期︓評価予定 /PX Tさん 新しいマネージャー モブワークを実際に ⾒にきてくれる 難しそうな点
• モブの評価は未経験 → 経験がない難しさはあるかも • スキルが低めの⼈がいた場合 • 「その⼈がいなくてもこの⽬標達成できていた」と想定される状況など Q:モブじゃなくても、プロジェクトって複数⼈ でやって⽬標を達成するけど、なぜモブだと評 価が難しくなるのでしょうか︖ モブじゃない仕事では「ロール」がはっきりし ていて、完全に同じことをする⼈がいません。 作業(とその成果)を個⼈で分けることができ るので評価がしやすいのですが…
70 ⽬標設定とその評価の悩み ▪引き続きの課題 • 「どう⽬標を⽴てて、どう評価するか」の合意の⼤事さ モブメンバーと評価者全員で話し合いを続けるのが重要 • チーム⽬標に対して各⾃がどのように貢献したか︖をつたえる努⼒ ⼀緒に参加してもらうのがおそらくベスト。しかしマネージャーは基本的に多忙… 理解を求めるだけではなく、⾃ら理解してもらうための⾏動が必要
• ⽬標と評価って難しい 全員でプロダクトを作るのに、⽬標と評価は個⼈単位なのがスタンダード ⼈ 類 に 評 価 は 早 す ぎ る … ! ! ! ! X
71 これからの私たち #2 モブの情報交換活動
72 モブの情報交換活動 /PX ▪他のチームでもモブにトライしている モブをやっていると⾊々疑問とか悩みがあって… @savanna_mobはどうやってモブやってる︖ 他のチームで モブをやっている⽅ モブのやり⽅に正解はないけれど、みんなで 情報交換をしてモブをより良くしていきま
しょう。 Let’s 情報交換会︕
Full-image
Full-image • ⽉1開催 • 参加は⾃由(毎回開発全体チャンネルで呼びかけ) • 第1回テーマ︓なんでもモブ相談&情報交換会 • 第2回テーマ︓評価者に聞くモブの評価 •
第3回テーマ︓モブに後ろ向きな⼈の意⾒、コストの観点での悩み モブの情報交換活動
75 まとめ
76 まとめ その時の⾃分たちのチームにあったモブをやろう 今⽇の話は「@savanna_mobのケース」のお話です。 その時の案件、環境、組織、メンバー、さまざまな変数によって「良いモブ」は変わります。 ⼤事なのは • 互いにリスペクトを持つこと • ⾃分たちにあった形を探すこと
• 検査と適応を続けること /PX
77 興味のある⽅はモブを始めてみてはいかがでしょうか。 すでにモブをされている⽅は、ぜひ、お互いのモブについて語ってみましょう︕ まとめ
78
79