What Does an Agile Coach Do? (Part 1)

I’m passionate about Agile coaching and I’ve therefore decided to write a series of posts on the subject. In this first post I’ll lay the foundation by discussing what an Agile coach does.

Agile coaches work at many different levels within organizations. At Ugilic, we differentiate between Transformation Coaches, Team Coaches, and Technical Coaches. Transformation Coaches work with management to introduce Agile to an organization. This typically includes teaching and coaching managers in Agile leadership mind-set and practices. Team Coaches are the classic Agile coaches that help teams of 3-9 people adopt Scrum or other Agile frameworks. Technical Coaches focuses on craftsmanship, by helping teams adopt a refactoring mindset, Test-Driven-Development, Continuous Delivery, SOLID, etc. They help teams produce better software faster and make it easier for them to handle changing requirements.

In short, I define Agile coaches (at all levels) as people who help individuals and teams deepen their understanding and use of Agile values, principles, and practices. In this series, I focus on the Team Coach role; however, many of my points will also apply to the other two types of coaching.

Do We Really Need an Agile Coach?

Agile is lightweight and very easy to understand. It is common to get a team up and running in only a few days or weeks. Therefore, it’s fair to ask, “Do we really need an Agile coach when it’s that simple to get started?”

The simplicity of Agile can be deceptive; teams often struggle to gain the full benefits of Agile. There’s an important difference between “doing Agile” and “being Agile”. “Doing” refers to adopting the events, artifacts, and roles of an Agile framework (like Scrum), whereas “being” means truly understanding and living Agile values and principles. “Being” often requires a change in behavior and mindset, which can be very personal (and difficult). Instead of engaging in the constructive conflicts often necessary to change, a team can be tempted to sweep their problems under the rug. This is where an Agile coach can help the team focus on the hard issues and on finding solutions that matures the team towards “being Agile”.

What Does an Agile Coach Do?

When a team is new to Agile, the coach often starts out by acting as a teacher, explaining the values, principles, roles, events, practices, and artifacts of the framework the team will be using. This helps the team gain a common vocabulary and a shared understanding of Agile.

After teaching the team about Agile, the Coach often acts as a facilitator during the first few iterations of each event. This allows the Scrum Master and the rest of the team to get a sense of how events should be run before running them on their own. I don’t mean to suggest that there’s only one way of facilitating events. Ultimately, each combination of Scrum Master and team has to find their own way, but their coach will inspire them and help them understand how they can work together effectively.

As the Scrum Master takes over as the main facilitator and the team becomes more and more comfortable with Agile, their coach takes on different roles. A coach can help team members resolve conflicts, solve hard problems, and help stakeholders collaborate constructively with the team. They can also coach and mentor team members to reach their full potentials.

The goal of an Agile coach is not just to teach teams about Agile practices. Coaches help teams adopt Agile values and ultimately become self-coaching. Once team members get comfortable challenging each other to grow, the coach’s job is done and she can move on to help the next team.

In my next post in this series, I will take a closer look at the hardcore skills required of Agile coaches.

And as always, I’d love to hear your thoughts in the comments.

Photo: Golden State Warriors head coach Steve Kerr at the  post-game interview after winning the Warriors first NBA championship in 40 years. Credit: Ken Blaze-USA TODAY Sports via: azcentral.com

Leave a Reply

Your email address will not be published. Required fields are marked *