A coaching structure, iteration 1

Steve_Hayes
Unruly Engineering
Published in
4 min readMar 12, 2018

At Unruly we’re proud of our long term adoption of agile practices — we have a strong engineering culture and we’ve found Extreme Programming (XP) particularly valuable, but we’ve also pulled ideas from Lean and Kanban. As we grow we really want to preserve some of the things that make us Unrulies, and continue to adapt to new challenges.

To support this we are working to build a strong agile coaching team — a team that can contribute to the growth of our development team in terms of both size and skill. We have identified three distinct, but overlapping, roles:

  • Agile Coach
  • Agile Testing Coach
  • Engineering Coach (Developer Enablement)

This is potentially confusing, so let’s try to provide some clarity.

All three of these roles will be involved with coaching the team at some level, and there won’t be any particular coaching actions that are out of scope for any of these roles. In practice they will need to collaborate, but each will have a particular focus, at least as a starting point.

The last name was a bit of a struggle — we initially went with “Developer Enablement”, but the market seemed to associate that with people from a human resources background, and we wanted people with a software development background. We tried “Developer Coach”, but that got us (not unreasonably) the same candidates as “Agile Coach”, so we tried “Engineering Coach”. It’s not ideal, but it seems to get us roughly the right candidates so far.

Agile Coach

This is the traditional, well understood agile coaching role, working closely with teams and individuals to build a broad understanding of what happens day-to-day at a detail level and using that knowledge to determine a course of action that might include some or all of the following kinds of things: training, individual mentoring, changes in team practices, refinement of existing techniques, or even changes in organisational structure.

Agile Testing Coach

This person identifies as a specialist in improving testing values and practices within and across agile teams, but also guides teams in other areas either as a way to create a fertile environment for testing improvement, or simply because their investigation of testing leads them to other opportunities.

Engineering Coach

This person is focussed on improving both the mix and skills of developers across the development team as a whole. In collaboration with the People Team they manage the hiring pipeline, ensuring that pipeline matches development team needs and the process is both painless for the candidate and provides insight into life at Unruly. They ensure that our technical interviewing practices are filtering as desired and are structured to showcase a candidate’s skills with challenges they would encounter in the role, that on-boarding is smooth and effective, and that developers continue to grow as individuals over time. They have worked hands-on in a development team in the past, have a strong understanding of agile, and this influences their development of on-boarding materials, acquisition of training material, and their direct mentoring and coaching.

Overlaps

All three of these roles are able to provide general agile coaching. There are no clear demarcation lines between the three roles, the distinction is how each of these people spends their time. In principle they could exchange roles, but in practice we want to hire people who have different preferences and spend their time in different ways.

The distinctions between these roles are only supplied to help guide hiring — there’s nothing to stop the coaches self organising to remove any or all of these distinctions by choice. What’s important is that we have people who will willingly focus on each of these areas when required.

Although we describe individual success below, it’s important to understand that the coaching team cannot succeed, or fail, as individuals — they succeed or fail as a team of mutually interdependent specialists.

Success — Agile Coach

  • The agile coach is successful when teams are working effectively and sustainably as a whole, in isolation and in conjunction with other teams.
  • This means understanding team level processes, how teams interact, and the individuals on the team
  • The agile coach has input into hiring and on-boarding, but it’s not their primary focus
  • The agile coach gets involved with testing, especially as it fits into overall team activity, but it’s not their primary focus
  • The agile coach understands and supports the career development of individuals, but it’s not their primary focus

Success — Agile Testing Coach

  • The agile testing coach is successful when our continuously improving testing approaches have become a proactive part of how we deliver value to the business, not just a defensive measure to prevent defects in production. This should be true at the team and cross-team level
  • This means understanding team level processes, how teams interact, and the individuals on the team
  • The agile testing coach has input into hiring and on-boarding, but it’s not their primary focus
  • The agile testing coach has input to every part of the agile process, but it’s not their primary focus
  • The agile testing coach understands and supports the career development of individuals, but it’s not their primary focus

Success — Engineering Coach

  • The engineering coach is successful when we are finding and hiring the right people (including improving our diversity), those people become productive as quickly as possible, and they continue to grow, as individuals, over time
  • This means understanding the overall operation and needs of the development team, and the needs of the individuals
  • The engineering coach should have some understanding of how teams work on a day-to-day basis, but they spend less time on this than other coaches
  • The engineering coach spends more time coaching and training individuals than other coaches
  • The engineering coach understands and supports the career development of individuals

We’re not suggesting this as a general model, just one that will work for us. As mentioned earlier, we expect this group to self organise, and we also expect to add some other people to the coaching group, but we’ll let this core sort that out for themselves.

And yes, we’re still hiring.

--

--

Steve_Hayes
Unruly Engineering

Agile advocate, ruby programmer, entrepreneur, perfectionist. Dad, husband, introvert (compensating)