I’ve been a manager for a number of years now but still enjoy getting my hands dirty in the code. There’s a buzz I get from understanding a problem and delivering a solution! Full-time coding is difficult to let go of for many engineers moving into management, the challenges moves into finding the right balance. Staying close to the code is important but there has to be a different mindset, especially for the sake of the team!
There’s a simple rule I follow – don’t take on feature stories. Feature stories are a business priority so the risk is too big if I cannot give them my full attention because of other commitments. These stories must stay with engineers, but managers can still remain close to the code with code reviews, refactoring, bug investigation, etc.
Work on tech stories
Non-blocking tech stories are a lower priority than feature stories, usually, they are for tech debt or other technical improvements. This is where I can still get that buzz of solving problems and remain hands-on. Here are a few reasons why these are good for managers to pick up:
- reduces “backlog pressure” on the team
- stay in touch with the code
- understand the infrastructure/build process with any process focused stories
- the team can benefit from the improvements
- can discover other challenges/improvements that need addressing in the code
- able to use this experience in code reviews
- are able to participate in tech conversations with a better understanding of the code/infrastructure
- able to describe challenges to other stakeholders with a clearer perspective
- be more authentic in your relationship with engineers
- the team can see you care about the project and want to be close to them – leadership
A manager’s day can be full of surprises, but this is ok with tech work as the team won’t be blocked by slow progress. If the situation changes and one becomes a priority, then re-evaluate who this should be assigned to.
Remaining hands-on as an Engineering Manager is important, taking tech stories is a way to achieve this and help the team without impacting priorities.