Slide 1

Slide 1 text

モブの旅︓チームの進化と1年間の歴史 〜私達が「モブの皆さん」と呼ばれるまで〜 Jul 1st, 2023 Yui Yoshida Yu Hashimoto Shogo Kinjo Rakuten Group, Inc

Slide 2

Slide 2 text

3 Learning Outcome チームでモブプロを採⽤して ⼀つの事に皆で取り組むことの価値を知ってもらえる。

Slide 3

Slide 3 text

4 モブプロのやり⽅ 楽天ラクマにおけるシステム事例 私達のモブプロの歴史 私達なりの⼯夫や活動紹介

Slide 4

Slide 4 text

5 ⾦城 翔悟(きんじょう しょうご) 所属 楽天グループ株式会社 ラクマ開発課・Savannaユニット 職種 Application Engineer 好きな⾔葉 真にカルチベートされた⼈間になれ︕ 趣味 最近マインドフルネス瞑想始めました

Slide 5

Slide 5 text

6 吉⽥ 唯(よしだ ゆい) 所属 楽天グループ株式会社 ラクマ開発課・Savannaユニット 職種 Application Engineer 好きな⾔葉 ぐんま 趣味 ゲームで敵をたくさんキルすること

Slide 6

Slide 6 text

7 橋本 優(はしもと ゆう) 所属 楽天グループ株式会社 ラクマ開発課・Savannaユニット 職種 Application Engineer 好きなもの 猫 スクラムの概念はrakumaにやってきて初めてまともに出会いま した。初⼼者です。

Slide 7

Slide 7 text

8

Slide 8

Slide 8 text

9 私たちのモブ歴史年表

Slide 9

Slide 9 text

10 チーム発⾜、モブ導⼊初期 Hashimoto⼊社 2021年9⽉ Hashimotoが別チームに武者修⾏へ 2021年10⽉ Kinjo⼊社 現チーム発⾜ 2021年11⽉ モブプロを導⼊ 2022年1⽉ モブプロの振り返りを実施 2022年3⽉ 初期メンバーが異動 隣のチームからメンバーが異動してくる 2022年5⽉ YoshidaがJOIN 2022年6⽉

Slide 10

Slide 10 text

11 ⼤いなる別れの時期 Break out room活⽤ TDD輪読会開始 2022年7⽉ 新メンバー加⼊、卒業 タスクの優先度が頻繁に変わって混乱 2022年8⽉ 中堅メンバーが退職 2022年9⽉ 上司が退職する事が伝えられる 2022年10⽉ 組織のEngineerから3名のCSMホルダーが 誕⽣ 2022年11⽉ 上司が退職 新しい上司と合流 初めての障害報告 2022年12⽉

Slide 11

Slide 11 text

12 モブプロとチームについて向き直った時期 タスクの優先度などに追われる モブプロについて改めて向き直る 2023年1⽉ RTOが増えてリアルモブに挑戦し 始める 2023年2⽉ モブプロ情報共有会を部署内 で開催 2023年3⽉ チームで共通の⽬標を作成する KinjoがDevOpsDaysTokyoに参加 2023年4⽉ DevOpsDaysTokyoの視聴会を複 数回開催 2023年5⽉ 上司が退職する 新しい上司と合流 2023年6⽉ Scrum Fest Osaka 2023!!!! 2023年7⽉

Slide 12

Slide 12 text

13 モブを始めるきっかけ

Slide 13

Slide 13 text

14 チーム発⾜当初の状況 メンバー間で 業務に偏りが出てる レビュー出来る⼈が いない フルリモート 1⼈で開発が不安 育成問題 チームの半数がRails 未経験

Slide 14

Slide 14 text

15 当時のマネージャー モブでやってみたら どうですか︖

Slide 15

Slide 15 text

16 よくわからないけど モブプロやってみるか︕

Slide 16

Slide 16 text

17 役割交代ほぼなし タスクが終わらない とにかく疲れる モブプロやっていくぞー︕ ドライバー以外はただ 意⾒を⾔うだけ

Slide 17

Slide 17 text

18 ちょっとこの状況まずくないですか︖︖ モブプロについて改めて 振り返りません︖︖︖

Slide 18

Slide 18 text

19 我々のモブ⽅法論

Slide 19

Slide 19 text

20 ドライバー ナビゲーター モブ 役割交代のルールは 決めてない 役割交代のルールを決めてなかった事で こんな事が... • 1時間以上役割が交代しない時もあった • ダラダラ⻑時間やることがある • 各々の役割に対する⾃覚があまりない 疲れる︕︕ モブの良さを 活かせてない︕ 役割交代のルールについて

Slide 20

Slide 20 text

21 ドライバー ナビゲーター モブ タイマー&役割導⼊でこんな良いことが︕ • 交代が活発になった • それぞれの役割について深掘りするよう になる • 休憩を定期的に取るようになる • 役割交代がタスクに⾒切りをつけるきっ かけになる 10分タイマーを導⼊ モブタイマー︓https://mobti.me/ 役割交代のルールについて

Slide 21

Slide 21 text

22 今⽇やることなどを貼っていく • 何をすべきかが把握しやすい リンクの共有 • PRや依頼Slackのリンクなど コマンドの共有 • ナレッジの共有が捗る 調査タスクの実況 • 後で同じ問題にぶつかった時に⾒返しやすい • スレッドを⾒てた他のメンバーが「今からZoomで話しましょうか」など 毎⽇モブ専⽤のスレッドを⽴てる

Slide 22

Slide 22 text

23 Aさん Bさん Cさん リリースまで あと1週間ある から⼤丈夫そ うだな リリースまでも う1週間しかない けどここまでし か終わってない DSで毎⽇タスクの検査はしているはずなの に、メンバー間でタスクの進⾏度に対する 認識のズレが起きていた

Slide 23

Slide 23 text

24 Aさん Bさん Cさん 1⽇の最後に振り返って どれくらい予定通り進んだ かを確認しましょう。 • 今⽇どれくらい予定通りだったか • 次の⽇(週明け)に何をすべきかが思い出しやすい • 休みをもらっていても進捗が追いやすい 1⽇の終わりにチームで振り返る

Slide 24

Slide 24 text

25 〇〇の件、調査をお願い できますでしょうか︕ プロデューサー陣 割り込みタスクについて

Slide 25

Slide 25 text

26 “些末な仕事は、決して重要性が低いわけではなく、単純な反復作 業である。” 些末な仕事とは なぜ問題なのか “単純な反復作業のためにモブ全体のエネルギーを集中 させてもあまり意味はない。考え⽅を切り替える必要 がある。” マーク・パール(2019)モブプログラミング・ベストプラクティス ソフトウェアの品質と⽣産性をチームで⾼める ⽇経BP社 些末な仕事の例 • 調査⽅法が確⽴してるログ解析 • QA⽤のデータ作成 • ⼿動バッチ実⾏ • 事業者様向けに必要な設定対応 割り込みタスクについて

Slide 26

Slide 26 text

27 どうすべきか 誰かが倒す事にすれば良い ただし、モブから離れる必要はなく 場は共有することは必要 タスクが発⽣したときにモブ 担当だった⼈がやろう︕ 割り込みタスクについて

Slide 27

Slide 27 text

28 他チームとの交流を増やすためにZoomのBreak Out Room活⽤ 元々はSlackのHuddleを開いてモブをしていた ⼿軽だし使いやすく チャンネルがワイワイし てすごく良いツールだけ ど、他のチームとの交流 が活発になりにくいな

Slide 28

Slide 28 text

29 他チームとの交流を増やすためにZoomのBreak Out Room活⽤ Room1 Room2 Room3 ちょっとRoom3に 質問してくるね︕ 他チームも ワイワイしてるの が⾒えていいなぁ

Slide 29

Slide 29 text

30 他チームとの交流を増やすためにZoomのBreak Out Room活⽤ Room1 Room2 Room3 何か困ってそうですね ⼒になれることありま す︖ さっきレビュー コメントした件 ⼝頭でも説明させて ください 雑談しましょうよ

Slide 30

Slide 30 text

31 試練の訪れと振り返りのきっかけ

Slide 31

Slide 31 text

32 上司の退職 モブワークの 盾になってくれていた上司 これからは⾃分たちで 戦っていかないといけない 退職

Slide 32

Slide 32 text

33 上司の退職 私たちにとってのモブワークとは何か︖を振り返るきっかけに

Slide 33

Slide 33 text

34 メンバーの⼊れ替えが何度か発⽣ メンバーの相性やモブへの適性 チーム異動や退職

Slide 34

Slide 34 text

35 メンバーの⼊れ替えが何度か発⽣ メンバーの⼊れ替えが発⽣したら ⇨その都度、⾃分たちにあったモブワークの⽅法に変えていく モブワークが合わないと感じたメンバーがいたら ⇨合わなかったらモブワークから離れる 他のメンバーは無理やり引き⽌めないことが⼤切

Slide 35

Slide 35 text

36 個⼈の成⻑とモブ モブワークをやっていると 個⼈の成⻑がわかりにくい気がする︖

Slide 36

Slide 36 text

37 個⼈の成⻑とモブ 「モブではなくても、個⼈の成⻑は悩むものではないか︖」

Slide 37

Slide 37 text

38 個⼈の成⻑とモブ 振り返りの⼿法を変えてみるのはどうだろうか︖

Slide 38

Slide 38 text

39

Slide 39

Slide 39 text

40 個⼈の成⻑とモブ 試してみる Fun Done Learn ⾒えてくるものがあるかも︖ Fun Done Learn 今後色々な振り返り手法を 試してみるぞ︕︕︕

Slide 40

Slide 40 text

41 個⼈の成⻑とモブ 「⾃分はモブワークに貢献できていないのかもしれない…」 ⇨得意なこと、不得意なことを共有し、 お互いが補い合ってモブワークをすることが分かっていれば この悩みは減るのではないだろうか︖

Slide 41

Slide 41 text

42 モブワークについての周囲からの理解 ・リソース効率 各リソースが最⼤限稼働することに焦点を当てている ・フロー効率 各タスクが効率よく進むことに焦点を当てている タスクA タスクB タスクC タスクB タスクC タスクA

Slide 42

Slide 42 text

43 モブワークについての周囲からの理解 「顧客に素早く価値を提供する」ことに価値を置いている

Slide 43

Slide 43 text

44 モブワークについての周囲からの理解 モブ導⼊当初 ⇨モブワークの⽣産性に疑問を持たせてしまった チームを複数ラインに分ける事を検討することもあった 1年経った現在 ⇨「モブの皆さん」と呼ばれるようになった モブチーム1単位で仕事をするのが当然として受け⼊れてもらっている

Slide 44

Slide 44 text

45 モブワークについての周囲からの理解 ⾃分たちが理解して説明し、実⾏し、実感してもらう

Slide 45

Slide 45 text

46 そして「モブの皆さんへ」

Slide 46

Slide 46 text

47 私たちは「モブの皆さん」になった 基本的に作業依頼や問い合わせは全て「@savanna_mob」にきます。 We are @savanna_mob!

Slide 47

Slide 47 text

49 私たちは「モブの皆さん」になった 「モブの皆さん」と呼 ばれて、何が嬉しいん ですか︖ 「属⼈化がないこと」 です

Slide 48

Slide 48 text

50 私たちは「モブの皆さん」になった ⾃他ともに「モブチーム」と認識する ↓ 属⼈化が減る ↓ • 常に誰かが対応できる。(急な休みに困らない) • チーム編成の変化に対応が可能です。(引き継ぎ問題の解消) • チーム意識の形成(私たちは同じチームである︕) We are @savanna_mob!

Slide 49

Slide 49 text

51 外から⾒た「モブの皆さん」 • 窓⼝がわかりやすい • 担当者の休みを気にしないでタスクを依頼できる • チームで動いているので、ある程度⼤きいボールが渡せる。 • イレギュラーがあっても⼀⼈でやる時よりタスクの⼿戻りが少ない • 他チームへの作業引き継ぎもチーム単位だと依頼しやすいようだ • 若⼲ブラックボックスっぽくなっている (モブ内での共有で満⾜して「細かく外に報告する」⾏為が減っている︖) • モブの良さはわかっているけど、モブを選ぶということについて、「良さを経験 した⼈とそうでない⼈の腹落ち度が違う」いうのはあるかも。 • ↑のギャップを埋めるには、⾒積もりの正確性が⼤事そう。 作業依頼者(Producer)から⾒たモブ

Slide 50

Slide 50 text

52 外から⾒た「モブの皆さん」 レビュアー︓ • モブじゃなかったプロジェクトと⽐べて、「レビュー待ち」ストレスが少ない • レビューコメントがしやすい(多少厳しいコメントでも、複数⼈に相⼿に⾔って るから1対1より気を遣わなくてよい) マネージャー︓ • チームとして動いている感じがすごくある • トラブル報告なども⾃律的に動いている • モブスレによって「⾒に⾏けば」現状が開⽰されている。 • モブ内で完結しているからか、PullRequestのDesriptionなどが薄いのかも︖ (チーム外から⾒た時に説明やドキュメントが薄くなりがち︖) レビュアー、マネージャーから⾒たモブ

Slide 51

Slide 51 text

53 これからの私たち #1⽬標設定とその評価についての悩み • これまでの⽬標設定と評価環境の変化 • 被評価者として • 評価者の視点

Slide 52

Slide 52 text

54 我々は⽬標設定と評価から逃れることはできない

Slide 53

Slide 53 text

55 我々は⽬標設定と評価から逃れることはできない

Slide 54

Slide 54 text

56 ⽬標設定とその評価の悩み 〜我々は⽬標設定と評価から逃れることはできない〜 「モブとして」⽬標設定と評価にどう取り組むべきだろうか︖ ︖

Slide 55

Slide 55 text

57 ⽬標設定とその評価の悩み ■これまでの⽬標設定と評価環境の変化 2022上期、2022下期 ↓ 2023年上期 ↓ 2023年下期 /PX ⽬標設定・評価ともにOさん ⽬標設定はOさん 評価はIさん ⽬標設定はIさん 評価はTさん イマ ココ

Slide 56

Slide 56 text

58 ⽬標設定とその評価の悩み ■これまでの⽬標設定と評価環境の変化 2022上期、2022下期 ↓ 2023年上期 ↓ 2023年下期 ⽬標設定・評価ともにOさん ⽬標設定はOさん 評価はIさん ⽬標設定はIさん 評価はTさん 共通の⽬標を設定 してみる 3⼈が同じような ⽬標を設定してい ることが判明

Slide 57

Slide 57 text

59 ⽬標設定とその評価の悩み ■被評価者として (今期)共通の⽬標をたて、それを個⼈⽬標に組み込むと⾔うTry チームとして達成したいものは同じ︕ 共通の⽬標A 共通の⽬標B • 共通⽬標A … 30% • 共通⽬標B… 20% • それ以外の⽬標… 25% • それ以外の⽬標… 25% • 共通⽬標A … 30% • 共通⽬標B… 30% • それ以外の⽬標… 30% • それ以外の⽬標… 10% • 共通⽬標A … 40% • 共通⽬標B… 30% • それ以外の⽬標… 20% • それ以外の⽬標… 10%

Slide 58

Slide 58 text

60 ⽬標設定とその評価の悩み 共通のチーム⽬標を⽴てるTry ①まずは共通⽬標を 何にするか案を出す 実際に案を出してい る時のボード

Slide 59

Slide 59 text

61 ②選んだテーマに対して掘り下げる • Summary • What…何を達成したいのか • How…どうやって実施するのか • KPI…どうやって測るのか 実際に案を出してい る時のボード ⽬標設定とその評価の悩み 共通のチーム⽬標を⽴てるTry

Slide 60

Slide 60 text

62 実際に案を出してい る時のボード この⽬標にXXと いう形で貢献し ます。 この⽬標におい てXXという役割 で実⾏します。 この⽬標にXXと いう形で活躍し ます。 ③個⼈⽬標に組み込む ⽬標設定とその評価の悩み 共通のチーム⽬標を⽴てるTry 了解です。

Slide 61

Slide 61 text

63 ⽬標設定とその評価の悩み ■評価者の視点 2022上期、2022下期 ↓ 2023年上期 ↓ 2023年下期 /PX ⽬標設定・評価とも にOさん ⽬標設定はOさん 評価はIさん ⽬標設定はIさん 評価はTさん

Slide 62

Slide 62 text

64 ⽬標設定とその評価の悩み ■評価者の視点 2022上期、2022下期 Oさん 私たちにモブを勧めた Scrumおじさん 「モブチームを評価することが難しいと感じたことはない。 チームで同じことをやっているから、むしろ全員同じ作業し てるはずということ。その点で把握はしやすかった。」 • 被評価者と認識のずれがないかということを注意していた • エピソードとして活躍の事例が振り返りに含まれていると評価しやすい • 組織との⽬標に対する関連性があると良い

Slide 63

Slide 63 text

65 ⽬標設定とその評価の悩み ■評価者の視点 2023上期︓評価 2023下期︓⽬標設定 /PX Iさん 「モブとしてどう⽬標を ⽴てるべきだろう︖」 を⼀緒に考えてくれた マネージャー 「モブの評価って難しいですね」 ・評価のシステムが個⼈単位である以上、個⼈の成果物を⾒て⽐較する のだが、モブだと「個⼈の成果」を計測するのが難しい。 ・モブそのものに参加できない場合、メンバーがどういう活躍をしたのか実 際の様⼦がわからない。 ・チーム単位で平均化されることで、⾒えなくなってしまった個⼈の突出し て良い部分、悪い部分がないか︖気になる。

Slide 64

Slide 64 text

66 ⽬標設定とその評価の悩み ■評価者の視点

Slide 65

Slide 65 text

67 ⽬標設定とその評価の悩み ■評価者の視点 「個⼈単位」の評価が難しい

Slide 66

Slide 66 text

68 ⽬標設定とその評価の悩み ■評価者の視点 2023下期︓評価予定 /PX Tさん 新しいマネージャー モブワークを実際に ⾒にきてくれる 各個⼈がモブの中でどう活躍したのか︖がやっぱり重要そう。 • 評価振り返りの時にちゃんと⽂章化することも⼤事 • 定量的な部分(KPIなど)は共通になるので、定性的な部分が重要になりそう。 • 同じ⽬標でも、ただモブの⼀員としてそこにいただけなら良い評価はできない モブそのものに参加してくれるので、 メンバーがどういう活躍をしたのか 実際の様⼦を⾒てもらえそう︕😄 ظ ଴

Slide 67

Slide 67 text

69 ⽬標設定とその評価の悩み ■評価者の視点 2023下期︓評価予定 /PX Tさん 新しいマネージャー モブワークを実際に ⾒にきてくれる 難しそうな点 • モブの評価は未経験 → 経験がない難しさはあるかも • スキルが低めの⼈がいた場合 • 「その⼈がいなくてもこの⽬標達成できていた」と想定される状況など Q:モブじゃなくても、プロジェクトって複数⼈ でやって⽬標を達成するけど、なぜモブだと評 価が難しくなるのでしょうか︖ モブじゃない仕事では「ロール」がはっきりし ていて、完全に同じことをする⼈がいません。 作業(とその成果)を個⼈で分けることができ るので評価がしやすいのですが…

Slide 68

Slide 68 text

70 ⽬標設定とその評価の悩み ■引き続きの課題 • 「どう⽬標を⽴てて、どう評価するか」の合意の⼤事さ モブメンバーと評価者全員で話し合いを続けるのが重要 • チーム⽬標に対して各⾃がどのように貢献したか︖をつたえる努⼒ ⼀緒に参加してもらうのがおそらくベスト。しかしマネージャーは基本的に多忙… 理解を求めるだけではなく、⾃ら理解してもらうための⾏動が必要 • ⽬標と評価って難しい 全員でプロダクトを作るのに、⽬標と評価は個⼈単位なのがスタンダード ⼈ 類 に 評 価 は 早 す ぎ る … ! ! ! ! X

Slide 69

Slide 69 text

71 これからの私たち #2 モブの情報交換活動

Slide 70

Slide 70 text

72 モブの情報交換活動 /PX ■他のチームでもモブにトライしている モブをやっていると⾊々疑問とか悩みがあって… @savanna_mobはどうやってモブやってる︖ 他のチームで モブをやっている⽅ モブのやり⽅に正解はないけれど、みんなで 情報交換をしてモブをより良くしていきま しょう。 Let’s 情報交換会︕

Slide 71

Slide 71 text

Full-image

Slide 72

Slide 72 text

Full-image • ⽉1開催 • 参加は⾃由(毎回開発全体チャンネルで呼びかけ) • 第1回テーマ︓なんでもモブ相談&情報交換会 • 第2回テーマ︓評価者に聞くモブの評価 • 第3回テーマ︓モブに後ろ向きな⼈の意⾒、コストの観点での悩み モブの情報交換活動

Slide 73

Slide 73 text

75 まとめ

Slide 74

Slide 74 text

76 まとめ その時の⾃分たちのチームにあったモブをやろう 今⽇の話は「@savanna_mobのケース」のお話です。 その時の案件、環境、組織、メンバー、さまざまな変数によって「良いモブ」は変わります。 ⼤事なのは • 互いにリスペクトを持つこと • ⾃分たちにあった形を探すこと • 検査と適応を続けること /PX

Slide 75

Slide 75 text

77 興味のある⽅はモブを始めてみてはいかがでしょうか。 すでにモブをされている⽅は、ぜひ、お互いのモブについて語ってみましょう︕ まとめ

Slide 76

Slide 76 text

78

Slide 77

Slide 77 text

79