An Agile Coach is not just about coaching (part 2)

In part 1 of this blog post, we explained that coaching is a 4-stage process which reflects the team's agile maturity. The stages are Educate, Show, Mentor and Support. Let's now focus on why delivery-oriented coaching is more valuable than coaching teams from the sidelines. Delivery-orientated coaching means showing things rather than talking about them.

You see, coaching a team in 'advisory mode' (ie. not being hands-on in delivery) is a difficult and long path to proper agile delivery. If the team hasn’t seen what ‘good agile’ looks like, how would they know where they are heading? Hands-off advice from a coach doesn't usually help. It is just as difficult to learn how to ride a bike based on advice alone without ever seeing anyone else ride a bike.

An Agile Coach is a practitioner, someone who gets things done and teaches the team how to learn and do it themselves.

Agile is a collection of lots and lots of small details that by themselves might not look important. But all done together can make magic happen. Showing how to do it by doing it is a lot more effective than just telling someone why or how it should be done.

Juliano Bersano - Preparing Agile Framework

Showing is more valuable than advising

If you were teaching a child how to get home from school for the first time, would you show them or advise them?

Show. You walk the way with them a couple of times.  When they feel confident, you let them lead the way with you following. You can explain shortcuts and alternative routes when asked.

Advise. You take a map and explain the route. You drag your finger across the streets and talk them through all the turns to get home. You tell them about all possible shortcuts and alternative routes and have them decide everything by themselves.  It may take them about 3 hours to find their way home - or worse, be hit by a car when crossing the road in the wrong place.

Arguably both ways will lead to the child learning how to get home from school. But the 'advisory option' is painful and could lead to the child being traumatised and giving up. Taking the lead and showing them the way first will be a quicker, safer and better way to learn.

An agile coach is about delivery

 

The value of seeing agile done properly first is significant:

Better understanding. It makes it easier to understand the underlying mechanics when explaining them later.

Achieve quick wins. It shows the team how delivery can immediately be better just by using the right principles and techniques. The coach accompanies the team a couple of times through the process until the  team is comfortable enough. It is then time for the coach to step back and let the team apply what they learned. The coach will take on a guiding and supporting role rather than a leading one.

Provide a benchmark. And it provides the team with a benchmark of good agile practices. We see it happen too regularly that teams settle for mediocre agile when they don't have anything to benchmark it against.  Although usually still better than what they had before, it is far from the agile performance they could achieve.

A good coach knows which battles to pick

What about letting them decide and fail so they can learn for themselves? Wouldn't that be better in the long run? Absolutely. But a coach should know what battles to pick and when letting the team fail is the best way to teach. Forcing the team to learn everything through failure (versus by example) is often not the right approach. It will likely take too long and make them write agile off as too painful and not a solution to their problem. Not because it doesn't work but because they never had a chance to experience how it could work.

An agile coach is about delivery. About teaching a team how to be successful, to know what 'good or great or proper' could look like. And  about making the team think for themselves, to be independent. The best agile coaches we have seen have a combination of real delivery experience, leadership and coaching skills. They know when to do it themselves and when to step back and just coach. The ultimate goal should always be that the team learns through successful delivery.

So the definition of 'agile coach' depends on the stage of maturity the team is in. Purely advising and 'talking agile' is not as effective at improving a team as delivery leadership can be. And what if the agile coach has read all the books and knows all the theory about it but couldn't deliver the project themselves? Well, then they have no business in coaching others how to do it. After all, agile is about practice and not theory.