What does it mean to be an Engineering Manager?

Last Updated: 10 January, 2021 | First Published: 22 April, 2015

I keep trying to remember who asked me this but my otherwise resilient memory is failing me here. But, it did set me thinking, so much so that I immediately made notes. I kept looking at this list whenever I got bored in meetings and it is now in a shape to go up here.

In the tech world, an engineering manager or a software development manager is the designation given to people who lead and manage teams of engineers who are usually working together on one or more projects, own one or more product pieces and maintain them. Wikipedia says, "Engineering management is a career that brings together the technological problem-solving savvy of engineering and the organizational, administrative, and planning abilities of management in order to oversee complex enterprises from conception to completion."

While design discussions, project prioritization, unblocking the team, communicating progress (or the lack of it), one-on-ones, road mapping, managing various stakeholders etc seem to be the main responsibilities of an EM, there is more to this job than what meets the eye though.

To be an engineering manager is...

  1. Being the voice of people not in the room. As a leader of a team, you are de facto representing the work that your team does with your every walking, talking moment within the office and possibly outside too. However, that's not what I'm talking about here. There will be times where you are listening to the plan for integrating your service with a 3rd party vendor with your product manager, ops lead all too excited with what the rock star engineer has come up with. And you go like “... but... wait a minute, did you talk to Raj, the test engineer? He was telling me something about these guys not having a sandbox setup to completely test the end to end integration…”. This is like raining on someone's parade. You sometimes play the voice of the ops guy, the QA guy, the product manager and many more people. This part of the job is very tiresome and damn difficult part to do. Sometimes, I have found myself to be hated by everyone in the room! everyone! But hey, you take comfort in doing the right thing and cannot help but feel happy when your intuition saves the day.

  2. Being as far away as possible from ABC. This is actually a piece of advice I picked up from Mr. Buffet's writings on the golden anniversary of Berkshire. It stands for Arrogance, Bureaucracy and Complacency. If you think that you can bluff your way out of a situation by throwing technical jargon at the audience, you can. If you think that you can be careless while rating/reviewing the work of an engineer in your team, you can. You get the drift. You can do a lot of such things. But, sooner or later all these deeds will catch up to you and when it does the walk out the door is going to be a really long one. Its not just enough if you stay away from these “corporate cancers”, you have to shield your team too. There will be a lot of jokers working along side you and believe me, their antics will go from funny to petty to annoying to team members leaving pretty soon.

  3. Being the second best engineer in the team. Yes, contrary to popular belief, it is not enough if you align with your team's tech choices. You must be able to code 'cos only then can you choose. You might probably never get a chance to build anything end to end on your own, but, more often than you would like there will be a couple of low priority production bugs lying around that you can fix. This will not only give you a confidence boost but will earn you immense respect from your team. Now, I say second best because if you are the best engineer, then you probably are not being the best leader for your team. Besides, if you're the best, you'd be of greater service as a senior/principal engineer rather than a manager, where you get to spend all/most of your time honing your craft and helping others do the same.

These probably hold true for other leadership positions too. I bet there are many other things that are unwritten but essential. Every day on the job is another day of getting many things right, some things wrong, learning from them and moving on.

I've also found that being blunt, direct and decisive helps more often than being nice, indirect and indecisive.

I'm writing this post at a perfect time. My last working day at Flipkart is the coming 30th. This is like a summary of the most important things I've picked up during my rather short stint here. I have had the opportunity to work with a lot of highly talented and remarkable people here.

Feeling both lucky and proud!