What are the stand-out skills necessary for an engineer to transition into a management (and hopefully leadership) career with an organization? It's an entirely different skill set; however, there are some skills that stand out above the rest.
I think this is an excellent article. In my opinion, not every engineer is destined for an executive or management position (most wouldn't want it). Why? It truly is a different career path and skill set. In my experience, it's always been a rare treasure to find a technical management who can balance both the deep dive engineering as well as the organizational outlook and management perspective. If being that rare treasure sounds like you, study up, practice, and become the manager YOU would want to have.
Like any individual contributor moving into a new role, they’re asked to fundamentally change the way they approach their day. As I’ve done my best to coach them through this experience, I wrote down a few ideas on how to best translate their engineering skills into management skills. Some of these are very specific to managing engineers, but most are general observations that should be applicable to managing just about anyone in a growing company.
I tell this story a lot now, but the main difference I see between a junior and senior engineer is their ability to be pragmatic. A junior engineer looks at a problem with bravado and says, “I know exactly what the problem is,” and sets out to solve it. A senior engineer looks a problem with pragmatism and says, “I don’t know exactly the problem is, but I know where to look to understand it,” and begins to dig in to the data. [...]
Every great engineer I’ve ever met is naturally a systems thinker: They always think about how to build things in a scalable way.
Essentially the job of being a manager, beyond the human side (which I’ll get to, I swear), is about building a system of people. As you’re growing a company you should absolutely be thinking about how to make this system scalable. On this point, specifically, you need to think about every decision and task you take control of and how that would work if you had 20 more people reporting to you. Micromanagement, in other words, is bad engineering on your part, not bad behavior on the part of the employee you’re managing (no matter how much you think you could solve that problem better or faster). [...]
This is less something I’ve learned from working with engineers and more something I’ve learned from being a manager. The key, I believe, to being a great manager is to understand what motivates the people who are reporting to you.
For every person on your team you should know their strengths, weaknesses, and, most importantly, what drives them to come to work every day. From there you need to try and calibrate the way you work with that person based on that motivation. [...]
Something Assigned To Everyone Is Assigned To No One
This is not something particular to engineering, but I still think it’s a useful lesson as you’re transitioning to being a manager. As a general rule giving a group something to do will mean it won’t get done. If you want to ensure things are done you need to make someone responsible. This is pretty obvious, but still worth stating.