One of the more common things I have heard over my time as a manager is the idea that you can be an Individual Contributor or a Manager… Pick one. They are different jobs, etc, etc, etc. As we hear in the blog posts, as an Engineering Manager I shouldn’t be writing code, I shouldn’t be solving the problem. Instead, I should be working on leading my team, and focusing on their career growth and helping them to find their path.
Like so many other things, I ended up at this false dichotomy, a choice of either, or. For me personally, I just accepted that I wasn’t mature enough in my journey and would figure out how to not get involved in the technical details like writing code at some point. Some day I would grow up and would be enlightened enough to understand how to do that or I would have enough staff so I didn’t have to write code or manage instances. The problem is, as I realized tonight, that I will fail as a manager if I stop doing those things.
The reality boils down to really understanding my role as a manager. It is my job to lead and grow my team of individual contributors towards our shared vision. Understanding this job really lies at the heart of what we do. It is my job to understand how my team grows, learns, and even more so the trajectory they are on. Writing code or doing “Individual Contributor” work is not a bad thing, in fact it is a good thing.
My time working at Carls Jr. in high school really made all of this clear. Think of the General Manager at a fast food restaurant. If she sits in the back and tells folks what to do, but doesn’t jump on the line while there is a rush, something is horribly wrong. During large rushes, I have seen regional directors, VPs, and general managers jump in to help. What is particularly interesting is that unlike many of the other members of the team, they know how all the things work. While they may not be as good as the best cook, they surely can hold their own and manage to get a Famous Star or a Spicy Chicken out to a customer. And if the thing that needs doing is helping people to prioritize how to get orders in bags or on trays they can do that do. The point is, it isn’t their job to be the best at any one position, but they have to be able to jump in and fill that role or at least know who they can move to solve one problem while they address another.
So why does this matter as an engineering manager? My job is to grow and lead the team toward that shared vision. Sometimes that is going to mean setting an example, sometimes it is going to mean letting folks find their own way, and other times it may mean doing the work yourself because it doesn’t make sense to have others do it. The key to all of this comes back to leading and growing. When I find myself doing individual contributor work I have to ask, how is this contributing to the team? Am I robbing someone of a chance to grow in a way they really need to? Or the flip of that… By doing this work myself, is it going to enable me to give the team greater context around the state of the world and more autonomy later? By doing this work, am I allowing people to instead focus on things that matter to their career path?
With that realization in mind, I can already feel the weight of doing individual contributor work leaving my shoulders. Maybe I am not doing the wrong thing as much as I thought…