4 ms·
> The amount of time these tech leads spend coding necessarily expands and consumes the time they have available for management. I call this being a "dev++", a
by jdmichal 9y ago
> The amount of time these tech leads spend coding necessarily expands and consumes the time they have available for management.
I call this being a "dev++", and I think it's an unhealthy mindset for leadership. Moving into leadership means advancing beyond the tasks you used to do. This is true everywhere, and lack of promoting yourself beyond those tasks will drag you down. This goes all the way up to c-suite level, where people fail due to focusing too much on their old group and job, and neglect all the new groups they inherited in the promotion.
I've been an individual tech lead for a few years now, and am about to take on a team while still maintaining the technical leadership role. I'm basically going to be a blended technical lead, project manager, and people manager. The only way I could do this was to stop coding myself. If I'm coding, it's to investigate an issue that has stumped others, or do a proof-of-concept for a particular technology or pattern.
Otherwise, my time is entirely devoted to helping individual developers increase their understanding of our stack or engineering in general. Or, on the other side, sitting with business and understanding requirements so that I can determine how engineering will approach the problem. I then delegate that vision to the engineers to implement, with code review closing the loop.
- tboyd47 9y agoThank you, this is exactly what I'm getting at. I have been a non-coding tech lead before, and I do not understand how a person can both code and manage others without working overtime. Coding requires hours of uninterrupted focus time every day. Management requires making yourself available to help people. You cannot be both available and not available.
- heurist 9y agoIt's taken me a while to get to this point, but I enjoy the challenge of managing both sides of the house. I've learned that if I participate in a non-tech meeting, there is a high probability that I will be useless at coding the rest of the day. For that reason, I arranged my schedule to have almost all meetings on Mondays and Tuesdays. I've also learned that coffee helps me express my vision more effectively but can ruin my concentration, so I use it for "people" days. Also, little technical interruptions don't bother me so much as interruptions that get me thinking about a new course of action. When I'm not certain about the course of action I go into processing mode until I figure it out, which keeps me from making any coding progress. Recognizing those interruptions and logging them outside of my brain for later processing has helped a lot. I'm sure I have a few other little tricks too... Routine is really key for me. My team is small and nearly everyone works well independent of my management. I expect that my coding time will diminish as the team grows larger.
- PretzelFisch 9y agoI found this role was still manageable when my coding was just tools for the team with lose deadlines. Once I have to help out with production features on a deadline everyone suffers because all my time is on coding not helping everyone else.