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
モブワークを進化させていった話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
katzumi
October 09, 2023
Technology
500
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
モブワークを進化させていった話
リモートワークになる前からモブワークを実践していって、コロナ禍を経て進化させていった話
katzumi
October 09, 2023
More Decks by katzumi
See All by katzumi
設計原則、アーキテクチャパターン、アーキテクチャスタイルの違いって何?いつどう向き合ったらいいの?を考えてみる
katzumi
0
220
『eg-r2』のご紹介
katzumi
0
30
runn開発者会議福岡2024
katzumi
0
36
リリース戦略を支えるCI/CDパ イプライン
katzumi
0
29
APIテストでもカバレッジ測定 したい!
katzumi
0
26
Slidevのテンプレートリポジトリについて
katzumi
0
160
OSSへの感謝を伝える
katzumi
0
660
ActiveRecordパターンの呪縛を学びほぐして挑むクリーンアーキテクチャへの入り口
katzumi
0
64
実装と乖離させないスキーマ駆動開発フロー / OpenAPI Laravel編
katzumi
0
290
Other Decks in Technology
See All in Technology
AIがAPIを書く時代に、私たちは何を設計すべきか
nagix
0
190
LLMリーダーボードアップデートに向けたAgentic Math_SWEのトレースについて
nejumi
0
180
なぜ、あなたのAPIは使われないのか? AX時代の設計原則、ガードレール、運用体制
yokawasa
1
870
AIエージェントの知識表現と推論に なぜグラフが使われるのか - 記号的AIの復権とニューラルAIとの統合
yohei1126
1
250
LangfuseによるLLMOps基盤の構築と活用事例
zozotech
PRO
1
220
AIツールを導入しても生産性はあがらない? カオナビが直面した 3つの壁と乗り越え方。/ Overcoming 3 Barriers to AI-Driven Productivity at kaonavi
kaonavi
0
1k
AI駆動開発は個人技からチーム戦へ:組織でAIを使いこなすための実践設計
moongift
PRO
0
370
「休む」重要さ
smt7174
7
1.8k
論語・武士道・産業革命から見る かわるもの、かわらないもの
ichimichi
8
2k
データ組織の転換期 一足飛びしない段階的戦略
leveragestech
PRO
0
130
ガバメントクラウドでのランサムウェア対策
techniczna
1
430
クラウドセキュリティ入門 ~安全なクラウド利用のための基礎知識~
lhazy
6
4.1k
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
15k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Facilitating Awesome Meetings
lara
57
7k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
420
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
430
Claude Code のすすめ
schroneko
67
230k
Designing Powerful Visuals for Engaging Learning
tmiket
1
470
Chasing Engaging Ingredients in Design
codingconduct
0
250
Fireside Chat
paigeccino
42
4k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
200
Building AI with AI
inesmontani
PRO
1
1.1k
Transcript
モブワークを進化させていった 話 Press Space for next page PHP Conference Japan
2023 懇親会LT Oct 8th, 2023. v0.0.1
自己紹介 「障害のない社会をつくる」をビジョンに掲げている「りたりこ」という会社に所属しています 以下のアカウントで活動しています 2 / 22 katzumi(かつみ)と申します katzchum k2tzumi katzumi
お願い 励みになるので是非ともご意見やご感想など、フィードバック頂けると助かります mm あとでスライドを公開します 3 / 22 写真撮影、SNSでの実況について 🙆♀📷 🙅♂📹💸
🙅📸👨👦👦 #phpcon #phpcon2023
4 / 22 What’s mob work?
5 / 22 GPT曰く ペアプロもモブワークの一種 モブワークとは、複数人で何かしらの作業(資料作成、プログラミング、事務作業など)を一緒にやっていく作業スタイルの ことを指します。 ペアプログラミングという言葉は聞いたことがあるかもしれませんが、モブプログラミングの一種です。 ペアプログラミングは2人1組でプログラミングを行うことで、モブプログラミングはそれを2人と決めずに複数人で行うこと らしいです。
このモブプログラミングを、プログラミングに限らず、色々な作業(資料作成、プログラミング、事務作業など)でやってし まうことを モブワーク と呼ぶことがあります。 この作業スタイルは、テレワークにおいても有効であるとされています “
6 / 22 モブワークのロール Driver コードをタイプする人。Navigatorの指示どおり動く ゴールを目指して手を動かし、実況しながら進めていく Navigator Driverに指示を出す人。 先回りして調査をしたりする
プログラミングの例で説明すると
7 / 22 ラリーのドライバーとコ・ドライバーとの関連に近い 今だとAIのCopilotとも近いかも コ・ドライバーとコ・パイロットは、ラリーにおいてドライバーと密接に協力する役割を担う人物です。 コ・ドライバーは、ナビゲーションを担当し、ドライバーに次の方向や曲がり角、障害物などを伝えます。 また、車両の状態を監視し、必要に応じて修理やメンテナンスを行います。 “
8 / 22 モブワークを実践し ている人! 🙋♀
9 / 22 2020年からモブワ ークのスタイルで開 発を続けています
10 / 22 モブワークを進化させ ていったお話
11 / 22 モブワーク遍歴 リアル期(2020年1月〜2020年3月) フルリモート期(2020年4月〜2021年12月) 安定期(2021年1月〜2022年3月) プロジェクト立上げ期(2022年4月〜2022年6月) チームビルディング期(2022年7月〜2022年12月) シン共同開発期(2023年1月〜)
12 / 22 リアル期(2020年1月〜2020年3月) 対面にチームメンバーがいる中でzoomを繋げてモブプログラミングを行っていました 声は直接届く感じで、相手のデスクトップが画面共有で見れる感じ モブタイマーはリアルなストップウォッチ モブは初めてでしたが、複雑な業務で個人的にはありがたかったです 技術的な課題もモブで解決するので、立ち上がりが早かったです。 はいった職場がモブスタイルでした
13 / 22 フルリモート期(2020年4月〜2021年12月) 引き続きzoomで繋いでモブプログラミングをしていました この当時は時間制限がなくてzoomは神でした 音声もzoom越し経由。カメラOFF進行 すでに見知った顔なのでそんなに不安感なし 開発未経験の新人もモブワークに参加した モブタイマーをSlack
bot化した 最初はデスクトップアプリで行っていたけれどタイマーを押せなかったり、気づかなかったり、テンポが良 くなかったので改善しました フルリモートになっても仕事のスタイルは変わらず
モブワークに関するアウトプット 14 / 22 記事にしました リモートモブプログラミングを9ヶ月間やってきたので 振り返ってみる mob-timerを作りました https://github.com/k2tzumi/mob-timer-bot
15 / 22 安定期(2021年1月〜2022年3月) メンバーの増減がありつつつもzoomで継続してモブワーク バーチャルオフィスを導入して、そこで画面共有を行う zoomの無料期間が終わるなどもあった 途中でslack(haddle)に浮気したりしました 大きなリリース&不具合についてもモブでこなす 暖簾分けしたチームで開発
16 / 22 プロジェクト立上げ期(2022年4月〜2022年6月) はじめはソロで開発をスタート 徐々にメンバーが増えていく 最初は一人。モブですらない。。 新規プロジェクトを立ち上げを行いました
17 / 22 チームビルディング期(2022年7月〜2022年12月) 大分足回りが揃ってきた 不安だったメンバーの受け入れもモブで1ヶ月程度で立ち上げれる手応えがあった 複雑な業務知識を独自ドメインで定義して、特化型フレームワークで実装できるようになった 具体的な実装イメージは各メンバーの共通認識としてもてるようになった ある意味定型業務化したものはソロ活動で実装するようになった 複雑なフレームワーク自体もモブで実装するようになった。
モブタイマーで交代制で実装するのではなく、LiveShareやCodeWithMeといった共同プログラミングで行 うようになった。 各メンバーのドメイン知識が溜まり、ドライバーやナビゲーターといった分担ではなく、全員がドライバー で実装するようになった。 各メンバーの得意不得意があるなかで、ゴリッとと実装する人、サポートする 人といったメンバーの特性を活かして進められるようになってきた チームメンバーが一気に6名体制に
18 / 22 モブワークの振り返り 合う合わないは結構人次第 疲れるのは確か。過集中になりがちなので、ブレークタイム重要 → モブタイマーの活用 複雑系の仕組みは多くの目が必要なのでマッチしていた そもそも一人で挑むには心が折れる。法律の条文を読み進めるのが難しい。書籍が出ているぐらい 個人解
釈すると危険。業務が回らない自体になりかねない 雑談が重要。ナビゲーションやツッコミがないと、理解が浅いまま進んでしまったり、最大のメリットであ る多くの目を活かすことができない 20%ルール(非モブ作業で自由に使える時間)があるのも重要 改善系を意識して行うようになる。非効率な開発を行うと、人数分のコストがかかる 多様な人が扱うので、わかりやすさ優先な設計になる
19 / 22 現時点での課題 まだ知識の偏りはある チーム内のコミュニケーションがハイコントラストになりがちで、新しい人が苦労する 知識量が同じぐらいの人がいないと挫けがち メンテナンスし続けるDocumentsとそうでないものの線引が難しい 作るものがある程度見えてない、リードする人がいないと迷走しがちで効率が悪い 急に組織はスケールできない。
徐々にしか人は増やせない。株分けしてチームを増やしていくイメージ
20 / 22 最後に モブワークを実践しているチームの方とお話をしたいです。 リモートワークを継続して行われている方もお声がけください。 複雑な業務を行われている方、どう複雑性と向き合っているか?お話させてください
宣伝 全国制覇目指す?w 21 / 22 PHPカンファレンスに登壇しました! 福岡 APIシナリオテストを書くべき10の理由 沖縄 ActiveRecordパターンの呪縛を学びほぐして挑むクリ
ーンアーキテクチャへの入り口
22 / 22 ご清聴ありがとうございました