Ever since I became involved in helping others Agile for their software and business needs, I have seen articles published on “What does a coach actually do?” It seems obvious to me that many of the people who author these articles (and I am sorry if I offend anyone here) has little or no experience actually coaching. Maybe training, maybe mentoring, maybe even implementing Agile practices, but little experience actually coaching.
I did say sorry…
This post concerns my opinion on what coaching is all about – and these opinions have been formed over several decades of being coached in both business and sports venues, and coaching others in soccer, rugby union, curling, as well as Agile and other business disciplines. My coaching style is greatly influenced by advice I received years ago when I first started coaching soccer. In many ways, what you’re coaching is secondary to how you coach, because coaching is ultimately about helping individuals be their best – it doesn’t matter at what.
Below (in no particular order) are 8 key tenets that help me be a better coach.
1. Fundamentals First
If you cannot teach the basics of the game (or approach) to the very people you expect to participate, you are doing them a huge disservice. This usually focuses on the outcome of the game, the goal, the way to win, and less on the techniques involved. As a coach you should be able to clearly articulate the fundamentals. Until the coachee follows you and understands explicitly what the fundamentals are, without necessarily understanding how to apply them, you’ll be wasting time trying to accomplish anything more advanced.
2. Draw From Personal Experience
In sports, you do not have to be a superstar at the game itself to be a great coach. Indeed most of the top managers and coaches in most (all?) sports were not top players during their careers. But they did “get it”, often learning from failure. As a result, they know how to minimize the chances of failure in those they now coach. That’s because these sports managers and coaches once played the game themselves and have tons of experience to draw from as they coach their teams. To be an effective coach, you have to dig into your personal experiences and help communicate how they affected you and helped you see a different perspective or stop making the same mistake over and over again. When you coach the team, for example on how to plan, how to pair, how to be effective during their daily stand-up, remember your own experiences (however painful) and be frank about them. What false assumptions did you make? What bad habits inhibited your own growth and stymied team progress? Chances are, your coachee is experiencing challenges similar to those you faced starting out.
Personal experience is great, obviously, but don’t teach only the techniques you are personally familiar with; expand your world too, learning skills outside your comfort zone to the point where you can teach these to your team as well.
Key learning (and sorry again for the sensitive readers): if you have never delivered projects as part of a team using an Agile approach, stop trying to coach others on how. The least effective coach is the one who knows the textbook but doesn’t have any experience to draw from.
3. Stay Positive
This is especially true when communicating with the team and others in the organization(s) you are coaching. Do not “run down” others, but use their failings to explain what you want the team to do, and why you want them to do it. Be positive in the face of failure, focusing more on the learning from the failure than the result of the failure itself. And insist the rest of the team maintain the same air of positivity – it becomes infectious!
4. Provide a Safe Environment
The team consists of people – and we need to encourage these people to express themselves and their beliefs. This is especially true when sharing bad news.
As a coach, we need to work with individuals to allow them to tell others on the team what they think and feel, but in a positive way. Telling a developer “your code sucks” doesn’t provide any actionable feedback on what to change to make the code suck less. There is no indication in this statement about what or how to improve. Instead, use examples of poor coding practices and provide constructive feedback. For example: “I see you cut-and-pasted the same lines of code four times here. Would it help to write a method instead?. Maybe I can help you with that?”
5. Provide Direction During Sprints
I don’t especially like to direct people – I much prefer to enable people to do what they think is most appropriate. But during the first few Sprints, it is important that we bring some structure to the development effort and put in place consistent practices for the team to use. Once people understand these approaches, the coach can (and should) back off, creating a safe place for the team to assume responsibility for their actions. Coaching is as much about knowing when to shut up and watch as it is about leading, so practice providing input only where necessary.
6. Focus on Character Development
Once the team understands the basics, the rules, and the practices, you need to switch your approach to helping them develop personal responsibility for delivery. Some people are naturally gregarious, others may be shy. You need to find a way to allow these people to communicate and work together as equals, by developing their inner confidence, and allowing their innate character to shine through.
Introverts have it harder than extroverts, but the software world is full of introverts who, through sheer force of passion for continuously improving software systems, provide key talents and skills, even if they aren’t the type to prattle on about what they do or how. Part of creating a safe place is ensuring individuals with different personalities aren’t inadvertently neglected in a room full of extroverts. Character development doesn’t mean that everyone assumes the “best” character type (e.g., extrovert, introvert, shy, gregarious, etc.); it means that the actual characters in the room are able to contribute to the work without feeling disenfranchised. And it’s your job as a coach to help the team strike that balance.
7. Grow Some Thick Skin
As a coach, you are changing the work rules, not just for your team(s), but for everybody around them. For that reason you will hear lots of negatives, and experience people trying to stop what you are doing both actively and using their best passive-aggressive approach. If you give in to this negativity and let it affect how you work, the entire team will also let it limit them. If you do not have the ability to be positive in the face of these obstacles, your success will similarly be limited.
Growing thick skin doesn’t mean abandoning your values or being cold-hearted; it does mean that sometimes you’ll be the only one who believes that what you’re doing is right. With perseverance and dedication, powered by data and clear objectives, over time you can transform the jeers into cheers and turn opponents to change into proponents. You know it (whatever “it” is) works because you’ve experienced it before. Your opponents most likely haven’t seen it work before, so they doubt. But you shouldn’t let yourself — and above all your team — give into that doubt. Be the example of belief that acts as a beacon in the dark of uncertainty.
And the best way to shut doubters up is by producing results.
8. KISS Me
The US Navy have a saying: “Keep it simple, stupid.” It’s called the KISS principle now. I rather like Sir Alex Ferguson’s viewpoint on this matter:
“You see those training sessions where the coach is talking all the time and the message is lost – the words get lost in the wind. Talking too much is a big danger for a coach.”
A large part of a coach’s work is communication, true – but learn when to shut up!
Perhaps the best piece of advice was one I was given at the start of my working career a long (long…) time ago, which I’ll leave you with here:
You are there to get people to communicate with one another
This simple statement holds true no matter what type of team I am coaching, as no matter their individual skills, they cannot work together unless they communicate. If you do nothing else, get people talking to one another, learning from each other, helping each other. And once you get them rolling, get out of the way…