How to get promoted as a software engineer

Let me guess. You

  • know your company’s IT inside and out
  • are pretty good at coding
  • want to get promoted to senior or lead engineer

But somehow things aren’t moving forward. You don’t understand why. The whole promotion process seems opaque. Your manager doesn’t seem to recognize what you bring to the table.

Here’s what I’ve learned about promotions that surprised me.

Getting promoted is all about your manager’s interests

Who decides whether you get promoted?

Your manager and your manager’s manager.

So let’s put ourselves in their shoes. How do they decide who gets promoted and who doesn’t?

To get promoted, understand your manager first

Have you ever wondered what managers actually do all day?

Most of the time they’re sitting in meetings. Either committing to deliver something on a certain date, or committing to hit revenue targets. Middle managers get held accountable for shipping features on time. Higher up, it’s about the numbers.

The hard part about management is that you have end-to-end responsibility for something you might not completely understand.

Most managers are hands-off. They have to rely on their team to deliver, but they still carry the responsibility if things go wrong.

Here’s what keeps your manager up at night:

  • Looking like a fool when demos fail
  • Their understaffed team
  • The unmotivated team member
  • Team conflicts
  • That sick leave where nobody is covering the work
  • How to tell their boss the timeline is unrealistic
  • How to push blame for a failed project to someone else

When a manager fails to deliver, people question their management skills. That hurts their career. And that’s where you come in.

What your manager really wants (but won’t tell you)

Let’s review:

  • Your manager’s performance depends on delivering things they don’t fully understand
  • They’re hands-off and rely on others, but take the blame when things fail
  • Every deadline commitment puts their reputation on the line
  • Your manager and their boss decide your promotion
  • Your manager rewards you based on how useful you are to their career

So what does your manager actually want?

Interest #1: Look good in front of their boss

Your manager wants to show they’re using company resources well. They’re hitting their goals. That advances their career.

When you get promoted, the manager rewards you for helping them reach their goals.

If company goals and manager goals conflict, the manager chooses their own goals every time. This is why unrealistic timelines get pushed through. Your manager wants their bonus more than they want a stable system.

Interest #2: Peace of mind about deadlines

As soon as the manager says yes, the clock starts ticking. This creates stress for the manager and the whole team.

Your manager needs a sparring partner to talk through estimations, issues, and architecture. That’s you.

They need someone who can do initial investigations and give realistic estimations. If a manager commits to something that can’t be delivered, it looks like they “messed it up.”

Interest #3: Stable, working product

Have you ever had a demo fail? Embarrassing, right?

Now imagine your manager announces a product launch, and then incidents start rolling in. Angry customers. Bad reviews. Lost sales.

A failed launch is one of the worst things that can happen to a manager.

Your manager walks a fine line. They can’t admit the deadline is unrealistic without looking incompetent. But if they push too hard and ship something broken, they can be blamed for lost sales and bad reviews.

The issue is that your manager's manager will probably not even consider that he contributed to a failed launch by pushing a short deadline.

In their boss’s eyes, your manager should have just said no.

How to actually get promoted

Now you understand your manager’s interests. Use it.

The key is demonstrating that you advance your manager’s goals with high visibility.

Getting better at coding probably won't cut it. Your manager is hands-off and doesn't care about code. They care about the product and its stability because that's what they're held accountable for.

Your manager’s boss cares even less about code than your manager does.

Coding matters, but less than you might expect.

The goal is to show you can do what a normal senior developer can do, but you also understand business and can advance your manager's interests through coding, planning, and communicating.

You stand out by taking end-to-end responsibility. Architecture planning. Organizing meetings. Communicating with stakeholders.

Once you're solid technically, learning more tech has diminishing returns for your career.

Leadership means moving from hands-on maker to multiplier. You help the whole team deliver, not just yourself.

Create architecture drafts and estimations

Before projects start, management does business impact analysis. They need to know how long things take and whether benefits are worth it.

Since your manager is hands-off, they need someone to create architecture drafts and analyze documentation. Very high visibility. Your manager sees it. Their boss sees it.

Creating architecture drafts positions you as an enabler who can drive a project and think through what's required.

Write documentation

Coding is always the last step. Your manager doesn’t see or care about code. But it helps them to know roughly how systems work.

Documentation helps your manager make better ad-hoc estimations in meetings.

Organize meetings

Projects always have things that need clarification. Usually nobody feels responsible. Product says it’s technical. Devs say they’re busy with tickets.

You can unblock the team by organizing meetings. Don’t come empty-handed. Bring a proposal.

This could be about new microservices, cross-cutting concerns like logging, or alignment with other teams. I found Confluence pages with architecture drafts work well here.

When it comes to promotions, your manager discusses you with other managers. You probably have your manager's vote, but helping other teams reduces skepticism from other managers.

Raise issues to business stakeholders

Email is still the main official communication channel.

If you see something forgotten in planning, or unclear requirements, write an email to business stakeholders and CC your manager.

You demonstrate that you think ahead and remove obstacles. This helps your manager with their career goals.

Writing to business stakeholders is one of the few opportunities to get visibility with your manager's manager, who needs to agree to your promotion.

Other things that work

  • Do boring work for your manager (PowerPoints, Confluence pages). They use these to report up. Remember who decides on promotions.
  • Coordinate deployments. Document how to actually carry them out.
  • Participate in hiring. Show empathy. Hiring is essential once you’re in leadership.

A promotion is strategic, not a favor

Your usefulness to your manager depends on your ability to help them achieve their career goals.

If you convince your manager you’re crucial to their ambitions, you’ll get promoted. Not out of kindness. For strategic reasons.

They want you to stay entertained. You proved useful. They’ll need you more as they move up and get harder tasks.

Also, promoting someone binds them to the company. Once you have a better title, you can’t immediately leave without harming your trajectory. Future hiring managers wonder why you left after being promoted.

Welcome to the world of “alternative facts.” What people believe matters more than what’s true.

Conclusion

Your manager and their boss decide your promotion.

The more you help your manager achieve their career goals, the more likely you are to get promoted.

Your manager is accountable for delivery and always faces deadline pressure.

Help by investigating project scope (architecture drafts, presentations). Take on tasks nobody owns (cross-cutting concerns, alignment meetings, hiring).

Notice completing more tickets wasn’t on the list. It usually doesn’t have much visibility, especially to your manager’s boss.

This is about taking end-to-end responsibility. A successful, timely launch is what brings your manager forward. And you with them.