The Bittersweet Reality of Wearing the Leadership Hat as an Ex-Coder

· 4 min read
The Bittersweet Reality of Wearing the Leadership Hat as an Ex-Coder

The story of an engineer promoted to a manager is the same for many people. When you join the team, you’re excited about the work you are doing. Other engineers on the team are incredibly experienced and talented. You learn so much just by getting to collaborate with them every day.

You’re building some complex system from scratch, and no two days are the same. You love getting to dig into hard technical problems and having senior engineers right there to mentor you. The work is challenging but in a good way.

Over time, though, many senior engineers leave the company for various reasons. At first, you think it’s no big deal. Next thing you know, you’re offered the leadership position. You are honored but also a bit anxious. You have zero management experience. Still, you decide to take it as a chance to develop new skills.

Then, anxiety turns into shock. Gone are the days of slinging code. Your weeks now consist of meetings, proposals, budget approvals, vendor demos, etc. You appreciate having more influence on the team’s direction but sorely miss writing code and working on engineering problems.

You start regretting the decision to take the promotion. It just isn’t what you envisioned at all. You miss the old days on the team but aren’t sure if returning to being an individual contributor is an option or if you’d feel like you failed.

Should you adapt to the role change or try to transfer back to more hands-on engineering work instead?

Struggling with the Transition

The day-to-day reality of an engineering lead is a real struggle to adjust to. Amidst an endless stream of meetings, you start to worry about your skills fading if you don’t use them. Plus, it gets harder to connect with your team now that you don’t get your hands dirty in the code with them.

Working cross-functionally is a big adjustment, too, if you don’t have the natural savvy needed to influence people across different teams and skill sets. Just focusing on the code in front of you is so much easier than motivating others.

Worst of all, you start to second-guess your decisions. As an engineer, you could just focus on the problem at hand. As a leader, you need to think about long-term vision and strategy. That shift might be much more challenging than you expect.

Forcing yourself to think positively and learn the ropes of this new position doesn’t always work. Some days, you genuinely regret taking the promotion. It may be hard to reconcile letting go of coding with embracing the responsibilities of technical leadership. It feels like whichever path you choose, you’ll disappoint yourself.

Exploring Your Options

I’ve been that engineer and felt what I’ve described above. The only difference was that I was never promoted. In a way, I promoted myself by offering to build a team for a client I worked with as a contractor. But since then, I have learned management skills myself and helped a number of engineers to move into leadership. The first thing you do is evaluate your options.

For example, it’s important to remember that you always have an exit. At any point, you can have an honest conversation with your manager about moving back into a more technical individual contributor role. If you decide to go that route, focus the discussion on maximizing your strengths instead of complaining about disliking the lead responsibilities.

If you decide that you’re interested in leading others but want to keep your coding chops, you can use personal time to build side projects or learn new programming languages and frameworks. There are better choices regarding work-life balance, but at least you can stay sharp while directing technical work.

A good way to have a purpose as a technical leader is to focus more on architecture, design, and specs. That way, you can still utilize your engineering experience at a higher level, even if you’re not writing code yourself.

To kickstart your leadership skills growth, dive into understanding the business and user needs. Strengthen soft skills to rally and influence teams. This is easier said than done and takes a lot of time, but if you decide to stay in a management role, there’s no other way.

Adapting to a Leadership Position

If you decide to give the management role a go, remember that your situation is normal. Increased leadership means less hands-on coding. There’s no way around it. It also means expanding your skill set with something entirely new.

The good part is that you’ll have much more visibility into product strategy and user needs. If you take time to truly understand those, you can make better technical decisions for your team.

You also have a chance to grow skills like influencing without authority, speaking, mentorship, and big-picture thinking. Those will serve you well long-term, even if it’s growing pains now. Your soft skills will need an upgrade to persuade both business partners and your developers to prevent headaches down the road.

And you shouldn’t underestimate the value of your technical knowledge just because you’re not coding directly. You can promote best practices related to scalability, security, testing, and other areas through code reviews, coaching, and system design.

Just because your day-to-day work looks very different now, it doesn’t make it less valuable. By focusing more on the big picture, you can have a broader impact on your company’s products and systems.

It’s a tough adjustment, for sure. But with time, you can adapt to think more like a strategic leader while still leveraging your engineering background where it counts most.


Originally published on Medium.com