Mob programming session guide
A structured recipe for running effective mob programming sessions with your team.
Ingredients
- 4–6 developers in one room or call
- One shared screen with IDE open
- Physical or digital timer visible to all
- Task board with a single well-scoped ticket
- Designated navigator role rotates every 10–15 minutes
Prep
- Pick a ticket small enough to finish in one session.
- Ensure the repo is clean and tests pass on main.
- Agree on the rotation order before starting.
- Set the timer to 12 minutes for the first rotation.
Session flow
- Driver types. Navigator speaks intent at the level of “create a function that takes X and returns Y.” Driver translates to code without editorializing.
- Mob discusses. Anyone can call a timeout to debate approach. Timeout pauses the timer.
- Rotate. When the timer rings, driver steps away. Next person becomes driver. Previous driver becomes navigator.
- Commit often. Push a WIP commit at every rotation boundary.
- Retro for 5 minutes. At session end, each person shares one thing that worked and one thing to improve.
Anti-patterns
- Navigator dictating keystrokes instead of intent
- Driver going rogue and ignoring the navigator
- Skipping rotation because “we’re almost done”
- Silent observers who never call timeouts
Pro tip: Keep a shared notes doc open. Anyone can jot down tangents or follow-up ideas without derailing the driver.