What is an Agile Coach?
Teams that are adopting or facing challenges with Agile development often turn to an Agile Coach for help. Agile Coaches are usually someone more experienced with Agile process and techniques who can guide the team through rough patches until they can find their own way. Like a sports coach, an Agile Coach may show inexperienced teams how Agile practices work, or may do more listening and asking questions to help the team improve. Traditionally, however, Agile Coaches spend all of their time focused on the coaching role and are not a team member. An alternative variation, the Player-Coach, addresses this limitation.
Player-Coach as an alternative
The Agile Player-Coach can pick up regular development tasks like any other team member, but also spends time coaching the team and others on improving Agile practices. Being “on the team” helps to foster trust from the other team members. Also, a Player-Coach is better positioned to help address problems of Architecture, Design, and Implementation. Further, because a Player-Coach works more directly with the rest of the team, there is more ability to discover problems that fail to surface from briefer observation and questioning.
Before I continue, I must detour for a quick discussion around names. We have struggled to find the right name for the role of Agile Player-Coach. Alternatives include Embedded Coach, Technical Team Coach, and Embedded Player-Coach. Ideally, the name should convey that the role includes coaching on Agile practices, but also that the person contributes to the workload of the team and is a team member with technical skills to help deliver working software, even if only for a few months. For now, I will stick with Player-Coach, but I welcome input on a better name.
To be sure, the Player-Coach role can be difficult. It is challenging to jump in and be productive as a team member while also balancing workloads to find time to coach. A more traditional Agile Coach tends to work with multiple teams, with different roles, and across the organization and is more able to suggest changes to “optimize the whole“, while a Player-Coach will be more focused on team related optimizations.
However, a Player-Coach can bring technical expertise the team does not have, which can be leveraged while they are there. This means the Player-Coach can implement technical solutions that will improve the team’s efficiency (things like DB change management or centralized logging), but which are not really Agile practices. Of course, the Player-Coach should also mentor other team members through code reviews and mentoring and generally “leading by example”.
Which is right for you?
Each Team is different…with their own project challenges. That means that how you coach a team depends on what they need from you. — Agile Coaching, Rachel Davies and Liz Sedley
The choice between a more traditional Agile Coach and a Player-Coach depends on the situation. Each brings a unique set of strengths and abilities. In general, a more experienced and mature development team might not benefit from a Player-Coach as much as a less experienced team. Also, a more traditional Agile Coach can focus solely on helping improve a group’s Agile practices. However, a Player-Coach is a good alternative when a team needs help with both Agile and technical problems.
Most of the teams Agile Velocity works with have some experience with an agile framework. We work with a team to evaluate what they’re doing, how they’re doing it and identify where they can improve. From there we serve as coaches/guides embedded with the teams we’re helping. Our Technical Player-Coaches accelerate the team’s journey to high performance.
We’re interested in helping your team adapt and improve. Contact us today and talk to a Player-Coach about what kind of improvements you want to make!