In 2013, I wrote a post on how continuous deployment helps developers avoid getting stuck. Figuring out that you’re stuck and how to get unstuck is probably the single most important thing you can do as a developer to improve your own productivity.
Friend of the blog Camille Fournier just published a post on the same topic that I really enjoyed – How Do Individual Contributors Get Stuck? A Primer – in which she lists some common ways people get stuck. I have gotten stuck in all these ways at one time or another. She also observes that helping people understand how and when they get stuck is one of the most useful forms of feedback you can give.
What I’d add is that this ability falls under the general category of coaching. Anyone who would aspire to be a good leader (as a manager or individual contributor) would benefit from building theirt coaching skills. Coaching is more than just helping people, and it isn’t applicable to every problem. When somebody is stuck and they’re super stressed because they are on deadline, it’s probably not a great time for coaching. Just get them unstuck and save the coaching for a more appropriate time.
What individual coaching is about is teaching people how to instill the habits or instincts that enable them to improve their own performance. In sports, an individual coach observes someone’s performance, identifies ways that performance can improve, and then gives the person the mental cues needed to improve their performance in the future. The main thing about coaching is that a coach can’t help when the skill is being applied, they can only help prepare the person they’re coaching for next time.
One tricky aspect of coaching is that unless you are, in fact, a coach, your job is always more than coaching. Maybe you’re a manager, or a tech lead on a project. You have your own goals and deliverables, and it can be really easy to forget to incorporate coaching other people into your job. In fact, spending time on coaching is usually not the fastest way to get things done in the short term. It’s a lot easier to just tell people who are struggling what to do.
However, if your goal is to build a strong team for the long term, coaching is essential. If you care about the personal development of the people on your team, coaching is also essential. The beautiful thing about coaching is that it’s what enables you to help develop people so that they’re ultimately better at their job than you could ever be. Track world record holder Usain Bolt runs faster than any human alive, and coaches who could never hope to run that fast helped get him there. I’ve had the privilege of helping people whose skills vastly eclipse my own through coaching.
How do you get better at coaching? First and foremost, you have to hone your powers of observation. You can’t be a good coach unless you evaluate people’s performance effectively through observation. Great coaches notice things that are imperceptible to regular people. From there, you have to find people willing to be coached by you. Finally, you have to take an experimental approach. The most important part of coaching is giving people feedback in a way that they can apply when they need it. Many times you have to deliver the same message in many different ways before people can turn it into a cue that works for them.
Finally, I’d add that one of the best way to get better at coaching is to be coached by a good coach yourself. It doesn’t have to be coaching for your job, you can learn a lot from being coached by a fitness trainer, a music teacher, or a cooking instructor. Getting better at coaching is worth the effort, nobody ever forgets a great coach.