Advanced Software Teaming the Mob Programming Way

Software Teaming (Mob Programming) is a cost-effective, collaborative approach to software development. It’s a whole-team approach to development, where coding, designing, testing, and working with the “”customer”” (partner, Product Owner, User, etc.) is all done as a team.

Mob Programming is a software development approach where the whole team works on the same thing, at the same time, in the same space, and at the same computer. This extends the concept of pair programming from two people working together to the entire team continuously collaborating at a single computer to deliver a single work item at a time. In addition to coding, teams practicing Mob Programming works together on almost all the work of a typical software development team including defining stories, working with customers, designing, testing, and deploying software. This work is accomplished in workshops or “working meetings.”

The team consists of everyone involved in creating the software, including customers. The Mob Programming approach relies on concepts such as face-to-face and side-by-side communication, team alignment, collaboration, whole team involvement, continuous code review, and self-organizing teams in order to be effective.

This presentation cover some of the important ideas that you can use as guidelines in conceptualizing creating software as a team. The 4 main points I’ll touch on are:
1 – Make it Easy for everyone to excel
2 – Turn Up The Good on the things that are going well
3 – The Failure to Communicate (and a little on how to deal with this)
4 – Leading from Within – the need for each of us to lead and follow dynamically

With these things in mind, we were exploring ways to improve our ability to collaborate, and landed on the idea of Mob Programming / Software Teaming. However, these ideas have been meaningful to me in finding ways to improve our work environment.

Video producer: https://agileindia.org