Technical Leaders and Career Paths
You shouldn't have to stop coding
I came across this question, which is a fairly common concern I have come across with people around me. Here’s the gist of it:
After I became a Tech Lead my work has become more like managing than anything else, I don’t do more code and just a little technical stuff
I’d like to offer an alternative approach.
Technical Leadership part I: Technical
As this person mentioned, the person with a technical leadership role is, in a way, the one who directs the technical approach for their team. This is not entirely different from the work that you might do as a developer. Before you start working on a particular requirement and writing code, you need to design the solution that will solve the problem.
This really depends on the process, the company, and the project you’re participating on. In some of them, developers will have no freedom at all and will receive most of the specifications and the solution already designed. In some others, they will receive very vague requests and have a lot of choices to make decisions on what’s the best way to implement something.
I won’t claim that one of those is better than the other one. They both have their pros and cons.
However, a team with a technical leader has the leader make some of those decisions. So, in a way, a technical leader is still performing part of the developing process – maybe just not writing the code, but indeed ideating solutions.
Technical Leadership part II: Leadership
Still, if this is not what you’re looking for as a technical leader and indeed you’d like to spend more time writing code and pushing commits, not only it is okay that you make time for that, but indeed you should make time for that. See my article stating that Technical Leaders Must Write Code.
The key here is that as a technical leader, you are the one making the decisions on how to use your time, and making the decision on how the time of your team members is used too. Make use of that power to allow yourself to code too along your peers. Keep your planning work to a healthy minimum, or find a way to make it efficient. As someone stated in their own answer, you have the power to delegate too!
If you’re a first timer into leadership, you might be thinking that this is avoiding your responsibilities, but indeed it is not. It’s not your goal to spend more time and work and do more, but rather, balance it correctly. A team should still work if you’re not present, so part of your work is herding the team into the right balance, so that it is still functional even if you remove yourself from it.
Once you make it, spending some time to code is absolutely trivial.
I’d also like to repeat, it’s not only a wish for most developers that become leaders, but it is a duty. Technical Leaders Must Write Code!