Mob Programming 101

Mob Programming is a development practice where the whole team works on the same thing, at the same time, in the same space, and on the same computer. It is a whole-team approach to doing all the work the team does including designing, coding, testing, and working with the customers, users and other stakeholders.

This is an evolutionary step beyond pair programming, and accentuates face-to-face communication, team alignment, collaboration, and self-organizing team concepts of the Agile approach to software development.

Using techniques and ideas such as the "Driver/Navigators" collaboration practice, one-piece flow, sustainable work habits, continuous learning, and a philosophy of "getting along", Mob Programming can be a highly effective approach to software development. Whether done "all day, every day", or in a more limited way for special problems, kick-offs, and learning sessions, it can be a fun way to get work done.


Companies and teams all over the world are using this team-based approach to software development. Please join me as I share how the concept got started, the benefits, techniques we use, and some of the problems we've faced.