A few months ago I made the career transition from Software Engineering Manager to Agile Coach. In case you don’t know what an agile coach does (as I didn’t when I began), it’s a cross-team role that facilitates, educates, mentors, and guides teams in embracing agile principles and applying them to their engineering practice (e.g.: Scrum, XP, Kanban, etc.). Basically, I’m trying to help teams reach their full potential and be the best damn team they can be.
The impact of a good agile coach may be apparent over time, but the specific results are hard to quantify, and thus, hard to measure. If direct managers have indirect influence over results, agile coaches have an even more indirect influence. I’m not responsible to managing anyone directly; that is, I don’t have any direct reports, but I do interact with individuals one-on-one. I’m not in a position to set individual goals of team members, but I’m invested in helping people reach their personal goals, and ensure that their goals are aligned with team’s and product’s goals. For me, it’s not the case of “be the change you want to see.” In fact, it’s quite the opposite — the last thing I should be doing is making changes directly. Instead, my role is to help individuals and teams be intensely introspective, and think critically about how they can get better. Once they identify potential paths forward, my job is to remove systemic roadblocks, work toward extra-team alignment, and clear their runway for success.
I’m still not sure if it was the right move — in many ways it feels like it could be a good step, or a least a temporary detour on a career path. Agile coaching is a strong skill to have, and mastery of it would help round out my skill set in technical leadership. It also feels like a comfortable fit, marrying the worlds of engineering, people management, and business value consideration.
But on the other hand, it’s unclear to me that it’s a necessary role in an organization. Or maybe it’s a necessary role in the right organization, but maybe I’m not in the right organization. Or maybe I’m in the right organization, but I don’t have the full range of support I need to succeed.
Or, as always, maybe I should just stop this charade and go back to being an individual contributor, and finally get on spend some quality time with Scala and Docker and Kubernetes and Ansible and Buildkite and etc., etc., etc.
But I digress.
Ok, so what exactly is the problem? Well, I currently struggle with three big question about agile coaching:
- Do I have enough knowledge and experience to do it?
- If I can do it, will it have the desired effect?
- If it has the desired effect, will that impact be recognized and valued by the organization?
Considering that until this year I’d never even read the twelve agile principles, couldn’t tell you the difference between Scrum and Kanban, and had never been on a dev team that explicitly valued agility and strict commitment to an agile framework, I’m skeptical that I can execute on (1) in a meaningful fashion any time soon.
Ultimately I believe in agile. I believe that software (slash systems, slash hardware, slash network) engineering is creative work, and creative work is unpredictable. The best way to mitigate against unpredictability is to shorten your feedback loop and assess value delivered frequently. I strongly believe in introspection and adaptation. I believe the best engineers are the ones who can cross business lines and interact with product managers, strategists, analysts, PMO reps, and sales teams. I believe in honesty, courage, transparency, compassion, empathy, and sustainable practices. I believe in allowing for, and encouraging those who are willing, to bring their full identity to the work environment, and to be free to make the best choices for themselves.
But do companies need agile coaches to harness the power of agility? And if so, am I suited for it? I don’t know.
I’m going to give it a shot anyway, because fake it ’til you make it, right? There’s certainly no shortage of reading material and training (both on the job about outside) out there. I got my scrum master certification. I read Lyssa Adkins’ “Coaching Agile Teams,” Jurgen Appelo’s “Management 3.0,” Diana Larsen and Ainsley Nies’ “Liftoff,” Marshall Rosenberg’s “Nonviolent Communication,” (I highly recommend this book for everyone, not just engineers!) and have tons more in my reading list. Gawd, will I ever finally just read The Toyota Way, or am I just gonna keep faking it forever? Bye-bye pleasure reading, I’ll see you in 2018!!!
At work, I’m encouraging sprint reviews, standups, backlog grooming & prioritization, and more. I’m facilitating retros, health checks, post-mortems, and more. I coordinated and kicked off a company-wide Product & Engineering showcase series. I started an Agile Community of Practice. And this is just the beginning — I’m still have the feeling I’m basically just three paces out of the starting gate.
But will it have the desired effect? Hard to say. As the first agile coach at my company, will my initiatives be welcomed? Hmmmmm. Will I do any better than the training that a once-a-year agile consultant could provide? Probably. Will I do any better than a CTO or head of engineering, who could align with managers to ensure development teams strictly adhere to a formalized process? No clue.
So yeah, it’s hard to say if this is going to work out well. But I’m fighting to stay optimistic, and I’m hopeful that I might be able to influence positive change, one person at a time.