A new team that needs to work remotely in a high-stakes environment decides to try mob programming. It helped them form, storm, norm, and perform quickly. Through mobbing, the team learned new technology, found solutions for dealing with others in stressful situations, and discovered how to collaborate effectively remotely.
Giovanni Asproni spoke at XP 2023 about remote mob programming in high-stakes environments.
The team had strong constraints on quality, security, and accessibility, and failures were so visible that they ended up making the news. Asproni said Mob decided programming was the way to go because he was in a high-stakes environment.
During the first mob programming session, the team worked together to understand the goals and how to proceed. Initially, there was very little code and a lot of brainstorming, Asproni said.
Along the way, they faced different types of challenges. The team was spread across five countries and three time zones. The time difference was up to two hours, which was enough to cause some problems, as Asproni explained:
We both had to agree on core time and solo work that the only person in the earliest time zone could do while waiting for others to come online.
Asproni said the team members didn’t know or had even heard of each other. Mobbing allowed teams to form, storm, norm, and perform very quickly, within days.
The team learned a lot from technology to teamwork to dealing with others in stressful situations. They also experienced, as Asproni explained, how they can work remotely with people they’ve never worked with before and still feel like they’re in the same place as people they’ve known for a long time. did.
After this experience, I am now convinced that people who claim that working in an office is more productive or better suited for learning and training are talking nonsense. This is only true if you try to replicate remotely what you do in the office. Working productively remotely requires you to be more intentional with your actions, but it’s definitely possible and often better.
Asproni said it released the system on schedule with zero bugs in production. They accomplished that without cutting any corners by implementing fully automated deployment and extensive testing, he said.
We used TDD as one of our core practices. It was a tough job with a lot of overtime, but I learned a lot from not cutting corners on quality.
InfoQ interviewed Giovanni Asproni about remote mob programming.
InfoQ: What were your expectations for remote mob programming? What benefits were you aiming for?
Giovanni Asproni: We thought we could achieve better quality, higher resilience, and faster and better learning. This last point was equally important, as we started with insufficient knowledge of the technology we were to use and little time.
InfoQ: What challenges did you face?
Asproni: There was only one other senior engineer on the team, so he was busy meeting most of the time and not doing any real work. Fortunately, the others proved to be very capable and learned very quickly.
We had limited experience with the tools we had to use. Fortunately, we were able to borrow experts from other teams. With one of her experts, he had several 16-hour mob sessions with only a few breaks in between. This was very tiring but very helpful.
InfoQ: How does the team feel about what they have accomplished?
Asproni: The team was exhausted but very happy and proud. Despite the hard work, the team had so much fun that they wanted to stay together and work on the same project for as long as possible. Personally, despite all the stress and numerous meetings, I have very fond memories.