Slide 1

Slide 1 text

いつモブるか 株式会社 あしたのチーム やぐはる 1

Slide 2

Slide 2 text

⾃⼰紹介 • 略歴 • ビール会社のITシステム⼦会社に新卒⼊社 • 友⼈から「⼈⽣壊さない?」とDMが来て起業 • 無職 兼 フリーランスで半年過ごす • ⺟親から「定職に就きなさい」とお達しを受け就活 • 現職でフロントエンドエンジニア 2 Twitterのアイコン→ 会社のアイコン↓

Slide 3

Slide 3 text

会社紹介 3

Slide 4

Slide 4 text

4

Slide 5

Slide 5 text

5

Slide 6

Slide 6 text

6

Slide 7

Slide 7 text

7

Slide 8

Slide 8 text

私の今年の発⾒ いつ モブ るか 8

Slide 9

Slide 9 text

私の今年の発⾒ いつ モブ るか いつ モブプログラミングを やればいいのか 9

Slide 10

Slide 10 text

私の今年の発⾒ いつ モブ るか いつ モブプログラミングを やればいいのか 本⽇は、私が実践してきたモブプロを振り返りながら 「モブプログラミングをやるべきとき」について話します 10

Slide 11

Slide 11 text

モブプログラミングとは • さまざまな開発タスクを複数⼈で取り組むこと • 現職では毎⽇モブプロをやってます(ステマ) (ちなみに社内ではモブワークとかモブって呼んでます) • 右の動画でモブプロの雰囲気をご覧ください! 11 A day of Mob Programming (2012年) https://www.youtube.com/watch?v=p_pvslS4gEI モブプロの1⽇を3分で味わえる動画 ↓ランチタイムにずっと仕事してる⼈が気になる

Slide 12

Slide 12 text

実践してきたモブプロを振り返る 12

Slide 13

Slide 13 text

実践してきたモブプロを振り返る 1. 起業先でのオンボーディング • 単純なタスクのみでモブプロを実施 • 開発の流れに慣れたら1⼈1タスクに分担 • 最初は簡単なタスクから任せて徐々に複 雑なものに取り組んでもらった 13

Slide 14

Slide 14 text

実践してきたモブプロを振り返る 1. 起業先でのオンボーディング • 単純なタスクのみでモブプロを実施 • 開発の流れに慣れたら1⼈1タスクに分担 • 最初は簡単なタスクから任せて徐々に複 雑なものに取り組んでもらった • 結果 • タスクの複雑度が上がるにつれてレ ビューコストが増⼤した • ⾃分のタスク消化時間が減ってしまった • コーディング規約や開発Tipsなどを作っ たが、コストは減らなかったので結局単 純なタスクだけを任せるようになった 14

Slide 15

Slide 15 text

実践してきたモブプロを振り返る 1. 起業先でのオンボーディング • 単純なタスクのみでモブプロを実施 • 開発の流れに慣れたら1⼈1タスクに分担 • 最初は簡単なタスクから任せて徐々に複 雑なものに取り組んでもらった • 結果 • タスクの複雑度が上がるにつれてレ ビューコストが増⼤した • ⾃分のタスク消化時間が減ってしまった • コーディング規約や開発Tipsなどを作っ たが、コストは減らなかったので結局単 純なタスクだけを任せるようになった 2. 副業先での引き継ぎ • 単純なタスクだけでなく複雑なタスクで もモブプロを実施 • モブプロで複雑なタスクをいくつかこな したあたりでほぼ全てのタスクを任せた 15

Slide 16

Slide 16 text

実践してきたモブプロを振り返る 1. 起業先でのオンボーディング • 単純なタスクのみでモブプロを実施 • 開発の流れに慣れたら1⼈1タスクに分担 • 最初は簡単なタスクから任せて徐々に複 雑なものに取り組んでもらった • 結果 • タスクの複雑度が上がるにつれてレ ビューコストが増⼤した • ⾃分のタスク消化時間が減ってしまった • コーディング規約や開発Tipsなどを作っ たが、コストは減らなかったので結局単 純なタスクだけを任せるようになった 2. 副業先での引き継ぎ • 単純なタスクだけでなく複雑なタスクで もモブプロを実施 • モブプロで複雑なタスクをいくつかこな したあたりでほぼ全てのタスクを任せた • 結果 • 複雑なタスクでもレビューコストは⾼く ならなかった • その後は特に問題なく引き継ぎが完了し た 16

Slide 17

Slide 17 text

いつモブるか 17

Slide 18

Slide 18 text

いつモブるか 1. レビューコストが⾼くなっているとき • 例えばタスクの消化よりレビューの時間が多いとき • 更にはレビューしてるタスクが消化してるタスクより単純なとき • 「とりあえず簡単なタスクを任せよう」と思ったらモブるチャンス!!! 18

Slide 19

Slide 19 text

いつモブるか 1. レビューコストが⾼くなっているとき • 例えばタスクの消化よりレビューの時間が多いとき • 更にはレビューしてるタスクが消化してるタスクより単純なとき • 「とりあえず簡単なタスクを任せよう」と思ったらモブるチャンス!!! 2. そもそも任せられないタスクがあるとき • 任せられるタスクだけ任せても任せられるタスクだけしか任せられない • かと⾔って任せられないタスクを任せることは出来ない • 「任せるくらいなら1⼈でやる⽅が速い」と思ったらモブるチャンス!!! 19

Slide 20

Slide 20 text

補⾜:いつモブらぬか • 当社ではオンボーディングとか関係なく⽇常的にモブプロを実施していま す(ステマ)が、全てのタスクをモブっているわけではありません • モブっていないタスク例 • ⾮破壊的なツールのバージョンアップ • パターン化された作業 • 誰がやってもやり⽅や結果が似通うときは不要 • モブプロの恩恵(レビューコスト削減やスキル均⼀化など)がほとんどない 20

Slide 21

Slide 21 text

本⽇のまとめ • いつモブるか • レビューコストが⾼くなっているとき • そもそも任せられないタスクがあるとき • いつモブらぬか • ツールのバージョンアップやパターン化された作業など • モブプロの恩恵がほとんどないとき 21

Slide 22

Slide 22 text

Tips: 今⽇から始めるモブプロ⽣活 • 前提 • 全員が VS Code で開発をしている • 必要なもの 1. Live Share(VS Code 拡張機能) 2. リアルタイムでのコミュニケーションツール(Meet, Zoom, Teams, ハドル, Discord, 出勤など) 22

Slide 23

Slide 23 text

Tips: 今⽇から始めるモブプロ⽣活 1. Live Share ボタンを押してクリップボードにコピーされたURLをメン バーに共有 2. コード書く⼈を15分交代とかしてワイワイしながらタスクに取り掛かる 3. めちゃくちゃ楽しい(個⼈の感想であり効果・効能を⽰すものではありません) 23 交代するためのタイマーとして 拡張機能の Mob Timer がおすすめ↑ Live Share を起動した⼈じゃないと 正常に動かないので注意 Live Share 起動ボタンは VS Codeの左下にあります↑

Slide 24

Slide 24 text

参考情報 ① レガシーコードからの脱却 (オライリージャパン、2019) • TDD、XP、設計、リファクタリングその他諸々について記載されて いるアジャイル開発実践書(タイトルが分かりづらい) • 第8章「協⼒しあう」でモブプロ実践のコツが参考になる 24 ② Harvesting Mob Programming Patterns: Observing how we work (Agile2019) • Lending HomeとIBMによるモブプログ ラミングの実践を研究したレポート • デザインパターンのモブプロ版になって いて進め⽅に困ったら参考にできる 個々の役割と関連を図にしたパターンマップ→ オライリー本だけど表紙が⽣き物じゃないので注意→

Slide 25

Slide 25 text

さいごに • 当社はオンボーディングとか関係なく毎⽇モブプロやってます(ステマ) • ご興味を持った⽅はカジュアル⾯談をお申し込みください! 25 ★ 次 回 作 に ご 期 待 く だ さ い ! あしたのチーム エンジニア・デザイナー採⽤サイト https://career-engineers.ashita-team.com/