The concept of Software Teaming (Mob Programming) focuses on enhancing collaboration. By improving teamwork, many communication and other problems simply disappear.
In Software Teaming, the whole team works together on much of its work, moving directly from idea to finished and delivered software. This eliminates wasteful activities such as queueing, inventory, and multitasking.
This workshop provides a quick start for teams to apply these ideas directly in their daily work. Proficiency grows over time, and the advantages soon become evident.
This workshop is an introduction, and covers all the basics, with lots of hands-on coding and other activities.
We will use hands-on exercises, presentations, interactive dialogues, simulations, and a few videos in this training.
Agenda
Intro and basic concepts:
- Introduction: Software Teaming (Mob Programming) Introduction, The basics of how it works
- Activity: The nature of software development
- Activity: Teamwork - a good thing
- Driver/Navigator teamwork Roles and Techniques
- Coding Dojo Demonstration: A simple demo of Software Teaming (Mob Programming) with volunteers from the participants.
Exercises:
- Coding Exercise: Working on a Sample Project, learning to work together using a few rules of collaboration
- Advanced Software Teaming (Mob Programming) Concepts - Hands on coding
- Amplified Learning - How to take advantage of learning opportunities
- Continuing the Coding Exercises: Removing the rules
- Retrospective and review, group discussion of what we’ve learned
Advanced concepts
- Question and answer throughout
- Topic: Failure to Communicate, and how to communicate better
- Topic: Make it Easy
- Topic: Turn Up The Good
- Discussion on application of Software Teaming (Mob Programming)
- Presentation on my thoughts about why Software Teaming (Mob Programming) works, which I call "Software Teaming (Mob Programming) and the Power of Flow"
What you will learn
- Teaming (Mobbing) Mechanics
- Tools for team coding
- Workspace setup
- How to "Amplify Learning" and take advantage of continual learning opportunities
- "Real-time" and continuous Retrospectives to reflect, tune, adjust
- Encouraging politeness and kindness of team members
- Reducing or eliminating harmful conflicts
- The theory of why Software Teaming (Mob Programming) is effective.
- Test-Driven Development (TDD) as a team
- Working with Product Owners, Business Experts, Testers, Designers as part of the team
- Refactoring as a team
- Continuous feedback at all levels of granularity
- Thinking about thinking - beyond Software Teaming
Testimonials
There was a lot of learning involved about the effective utilization of people by management. This workshop enhanced my understanding and confidence in coding decisions and in discussing our code architecture at work.
- Sébastien Van De Poel
I have gained a lot of insights over those 2 days. Woody is a developer with a passion for Agile and team dynamics. He is a joy to learn from.
I liked all of it. We had a good group. Likeable, skilled and open minded. Woody is a good coach. I would recommend this workshop to other people who are ready for it.