Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ub_tech18_ペアプロ.pdf
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
taroAsahina
February 17, 2025
0
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ub_tech18_ペアプロ.pdf
taroAsahina
February 17, 2025
Featured
See All Featured
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
460
Paper Plane
katiecoart
PRO
5
54k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
430
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
850
Designing for Timeless Needs
cassininazir
1
530
What's in a price? How to price your products and services
michaelherold
247
13k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
640
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
Thoughts on Productivity
jonyablonski
76
5.4k
Transcript
ペアプログラミングの基本と スピーダプロダクトチームの実践方法 2024/09/27 1 ~ XPにおけるペアプロの真髄 ~ スピーダ Product team
朝比奈 太郎
名前: 朝比奈太郎 経歴: 琉球大学卒業後、2024年4月にユーザベースにソフトウェアエンジニア として入社 やってること: FlashOpinion/Expert Interview エキスパートの知見を届けるサービスの開発 自己紹介
2
ペアプロとは アジャイルべデベロップメントより スピーダプロダクトチームにおける ペアプロガイドライン 新卒目線のペアプロのメリット 01 02 03 3
| 01 | アート・オブ・アジャイルデベロップメントより ペアプログラミング 4 https://www.oreilly.co.jp/books/9784873113951/
ドライバーとナビゲータ ペアプログラミングとは ドライバー - コードを書く人 - ナビゲータが先回りして考えてくれているおかげで、ドライバーは全体像を気にせず、厳密で 構文的に正しいコードを書くことができる ナビゲータ -
考える人 - ナビゲータはコーディングの詳細に気を取られることなく全体を俯瞰し、課題を検討すること ができる 5
ドライバーとナビゲータ ペアプログラミングとは ドライバーとナビゲータの交代 理想は、数分ごと。少なくとも30分ごとに交代。 はじめはピンポンペアリングを導入 1. Aがテストを書く 2. Bが1で書いたテストをパスさせて、新たなテストを書く 3.
Aが2のテストをパスさせ、また別のテストを書く 1 ~ 3の繰り返し 6
ペアプロのメリット - 難しく、重要なタスクを遂行するのに、前向きなプレッシャーをもらえる - コーディングに関する知識やヒントをチーム全体に広めることができる - コードに完全に集中して、生産性が高いフローのなかで時間を過ごすことができる - 割り込みに対してかなりの抵抗力がある 7
ペアの組み方 アジャイルデベロップメントでは、すべてのプロダクトコードをペアプロで作ることを推奨している ペアは一日を通して代わり、チーム全員とペアを組むことになる -> チームの結束を強くし、チーム全体へ設計スキルや知識を広げることができる ペアチェンジするタイミング 新たな視点が必要になったとき、行き詰まりを感じたとき これらが発生しない状況下でも、一日に数回ペアチェンジをすることを薦めている -> チーム全員に情報を伝えて、チームが素早く動き続けることに役立つ
8
スピーダプロダクトチームが 実践するペアプログラミング | 02 | 9
ペアプロガイドライン スピーダプロダクトチームでは、ガイドラインに沿った形でペアプロを実践しています ペアプロガイドラインとは Product Teamでは、テンポよく作業を進めていき、最終的にはコードが 2人の手によってレビューされ続け、あたかもひとりのプログラ マーがコードを実装しているような状態を目標としている。お互いの良さを掛け合わせ、お互いの苦手な部分を補完し合うことで、相乗効 果を生み出し1+1が3になるかのような成果を生み出せる。このガイドラインはその理想に近づくことを手助けするものである。 どういうときに活用しているか NewJoiner(新たなメンバー)がチームに加わったとき
改めてチームでペアプロに挑む姿勢を確認したいとき etc. 10
ペアプロガイドライン 一例 ペアプロかモブプロか 通常、2人ずつのペアを作り作業するが、時と場合によってはモブプロを行うべきだ。新規の開発で詳細な設計が必要な場合や、不確 定な事項が多い調査などは、チーム全員が一堂に会しておこなったほうが効率がよい場合がある。 チームメンバーの数が 3人や5人など奇数になることもある。 2人以上のペアを必ず作らないといけないという先入観にとらわれず、状 況に応じて1人作業かモブプロかを選択しよう。今までのストーリーと実装が近く、認識のズレが発生しにくいストーリーや、簡単な調査 などは1人作業に適している。
固定観念にとらわれず常にチームにとっていま何が最善かを考えて選択しよう。 11
実際どんな働き方してるのか オフライン編 8時間ペアプロ 60 ~ 90分ごとに休憩。 ペアチェンジをするタイミングは2回ほど。2コマやってチェンジ。 基本的に1チーム4人で構成されており、2ペアに分かれてプログラミングを行う。 1つのマシンにキーボードを繋いで、1つのモニターを見ながら行う。 もう一方のペアとコミュニケーションが取りやすいように座席の配置は以下のようにしている
12
実際どんな働き方してるのか オンライン編 8時間ペアプロ 60 ~ 90分ごとに休憩。 ペアチェンジをするタイミングは2回ほど。2コマやってチェンジ。(ここまではオフラインと同じ) Gatherを使って、作業中はカメラ・マイクONでペアプロを行っている 他チームの人も同じスペースにいるので、すぐに聞きに行くことができる Live
Share(VSCode), Code with me(IntelliJ)を発行し、片方のマシンに接続し、ペアプロをしている 13 https://ja.gather.town/
新卒目線のペアプロ メリット | 03 | 14
新卒目線のペアプロをするメリット 他メンバーの技術、考え方を盗み放題 設計を行うときにそういう考え方するんだ 調査を行うときにそういう問題の切り分け方ができるんだ そして、これらは人それぞれちょっとずつやり方が違う 色んな人の良いところを取り入れることができる 15
新卒目線のペアプロをするメリット わからないを放置しない(できない) 常時ペアプロをやっているので、わからない点があればすぐ相談できる ペアプロをやっている以上、ドライバー, ナビゲータを繰り返し行うので、理解していない点があればいず れ止まってしまう できれば、止まる前のタイミング(自分がドライバーしているが次ナビゲータできるか不安だなといった場 面)で、まだ次どう動くかのイメージができていませんや、そもそもここがどうなっているかわかりません などとペアに伝えるようにしている 16
新卒目線のペアプロをするメリット フィードバックが迅速かつ正確にもらえる ペアで作業を行っているので、先程の考えや進め方、コードの書き方はどうでしたか等のフィードバック を求めることができる そこで得たフィードバックをもとに、1つずつ修正し、自身の成長につなげることができる 17
新卒目線のペアプロをするメリット 言語化をすることにより、思考の整理ができる 頭の中ではやりたいことのイメージがついているが、コードに落とし込めないという場面がたまにある それを言語化し、ペアにやりたいこと、考えていることを伝える過程で、思考の整理をすることができる 言語化すらもできないときは、まだコードに落とし込むのに必要な情報が足りていない状態なので、ペア に図で表現してもらうなどをして、理解できるように努めるようにしている 18
以上になります。どうでしたか? さあ、明日からペアプロやるぞ。チームに導入するぞ。と言う気 持ちになったのではないでしょうか! いきなり、常時ペアプロを導入するのはハードルが高いので、ま ずは30分など時間を決めて始めてみるのが良いと思います 19
最後までご清聴ありがとうございました。 Thank you 20