How to Grow Past Senior Engineer


This newsletter is sponsored by orq.ai.

Your next engineer might not be human

Coding agents improve individual productivity. Orq.ai’s Software Factory goes further, it turns your SDLC into a governed production system, from backlog to shipped change inside your existing estate.

  • Add engineering capacity. Autonomous agents plan, build, test and monitor.
  • Keep humans in control. Critical changes and releases pass through human approval gates.
  • Improve with every ticket. Each run adds organizational knowledge the factory can reuse.

Get in touch

Thanks to orq.ai for sponsoring this newsletter. Let’s get back to today’s thought!


Intro

After you’ve chosen a direction for your career, either growing to a Staff Engineer, Architect, or become a manager, the next challenge is figuring out how to actually move toward it. Knowing what you want is important, but it’s only the first step.

You also need to communicate that direction and actively position yourself for the opportunity, and I learned this the hard way.

After I became a Senior Software Engineer, I didn’t know exactly what my next step would be. Because of that, I wasn’t very convincing to my manager in 1:1 meetings about what my career would look like in the future.

I couldn’t actually tell them, because I didn’t know. So I was stagnating in my career, feeling like I hit a wall. I didn’t know what particular skills to improve on, since I didn’t have the clarity of the next step.

It’s really important to have at least some idea of the direction in which you wish to grow. My promotion to Team Lead was more or less a combination of luck and the credibility I was able to build through successful projects in the organization.

I was asked if I would be interested in the Team Lead position and my manager at the time was surprised when I said yes.

I should have talked to my manager about my goals!

In this article, you can expect 4 actionable pieces of advice on making a move to your next step and make a convincing proposal to increase your chances. I’ll cover:

  • Talking to your manager
  • Keeping a brag list of all the wins that you achieve
  • Become the go-to person for a specific project, specific technology, or specific domain.
  • Propose an impactful improvement to the codebase and own the implementation

Let’s start!

My Upcoming Book “The Multiplier Mindset” Published by O’Reilly

This article is an adapted version of one of the chapters of my upcoming book called “The Multiplier Mindset”, published by O’Reilly. The book will be published later this year.

1. Let your manager know about your goals

There are a lot of different types of managers, and some are easier to talk to than others. But, no matter what kind of manager you have, you should tell them about your goals and aspirations as soon as possible.

If they don’t know about your goals and how you wish to grow, they won’t be able to put you in a position to showcase your skills and get you to where you want to be.

What you say is important, but so is how you say it. If your manager senses excitement, motivation, or drive in you as you speak about your goals, they will react accordingly.

Let them know about the books and newsletters you’ve been reading, the courses that you are taking, and any other resources from which you are learning.

My advice is to let them know about your goals in a 1:1 meeting. Share your goals and aspirations and ask for direction on how you can get there.

For example, you might ask:I’ve been reading about technical leadership. The book Staff Engineer by Will Larson has especially resonated with me for some time now, and I’ve taken a course on how to grow from a senior engineer into a lead role. I also enjoy helping others navigate technical challenges, and contributing to broader technical direction, which is why I believe the Tech Lead role would be a good fit for me. What steps should I take in order to do that someday?

If you are already seen as credible and have a good reputation, your chances of success are much higher

Still, I recommend telling your manager sooner rather than later. Don’t wait until you’ve done everything to improve your .

Ask first, then focus on strengthening your credibility. If you don’t get the response you hoped for, follow up again in a few months.

If you are already considered a credible person with a good reputation, your overall likelihood of success is much higher.

But I do recommend telling your manager sooner rather than later. Don’t wait to do all the things to improve: ask first and focus on all of these things, then you can potentially follow up on your ask.

My personal story of how important is to let your manager know about your goals

I struggled in my first few months as a Team Lead, what made me a good engineer didn’t work for me as a Team Lead.

After many mistakes and some wins, I got the hang of the new position, and started to believe that management might be the right path for me.

The manager who had promoted me left the company for another role, and their position became available. I spent some time contemplating whether I should ask about the position.

And then I decided to do it.

I let my former manager’s manager know that I believe I would be a good fit for the role and that I would be happy to take on additional responsibilities. He said he would get back to me. After a couple of days, he offered me the role of Engineering Manager, which I accepted. I moved from leading 1 to leading 3 teams.

This was one of the biggest steps in my growth. I learned a lot in that role, and it positioned me for my next role as Head of Engineering.

The moral of the story is that when you have a goal, you should always let your manager know as soon as you can, because you never know what opportunities may come to you.

Notion template: Tell your manager about your goals and aspirations

Use this template to help you define your pitch to share your goals and aspirations with your manager.

Paid subscribers, you can get the template here: .

2. Keep a brag list

It’s really important to focus on working on things that are impactful and try to provide as much value as possible to the organization, but it’s also very important to note down what you achieve.

Not only should you have a ready answer whenever someone asks you about your achievements, keeping a list of all your achievements is also very good for your well-being and motivation.

I personally use Notion to note down my wins, but you can use any tool that works for you.

First, define your goals. These might be goals for the upcoming year, month, or even week, it’s up to you. Put your goal at the top of your list: “Get promoted to Team Lead,” for instance.

Whenever you make a certain achievement, note it in the list so nothing gets lost when it’s time to talk about promotions.

Have you successfully onboarded a new engineer? Are you mentoring others? Did you play a key role in an important project? Definitely write all of this down.

Your manager only sees about 40% of the work that you do, so it’s important to let them know about all the great things you do that they might not know about.

The rule of thumb I like to use when including wins in a brag list is that more is better: note down every win, large or small, that is aligned with the goals that you wish to achieve.

Keeping a “brag list of wins” helps you a lot with the impostor syndrome as well

Keeping a brag list increases your personal motivation and sense of success. Impostor syndrome is unfortunately quite common in our industry, and keeping a list of the wins that you have achieved is a great way to battle against that.

Your list reminds you how far you have come and that you deserve to be here. It’s also a good reminder that having a bad day doesn’t mean you’ll have a bad month or a year. We all have ups and downs.

You want to make sure that the “downs” don’t get to you and that you’re still moving in the right direction.

I am a self-taught engineer, and at the beginning of my career, I thought that university graduates must all have amazing programming skills and that I would never be able to get to their level.

I was focusing on what I might not achieve and what others had achieved, instead of on what I actually had achieved. I was learning for whole days and enjoying it, which helped me to progress very quickly. A brag list would have helped me to see that progress.

If you consistently keep your achievements in the list, you will more clearly see what you’re good at

When I did start keeping a list, I was surprised to find that the next step for me was right there, clearly visible in my wins!

What the list made clear to me is that I am good at collaborating, communicating, and managing people’s expectations, especially when it comes to projects and functionalities.

That suggested that management was the right path for me. It turned out that I was right.

Notion template: List of achievements

Use this template to note down all of your achievements. This will ensure that you are ready if someone asks you and that you stay motivated!

Paid subscribers, you can get the template here: .

3. Become the go-to engineer in your organization

Becoming a “go-to person” means you are considered someone others go to when they need help or have a question about some specific topic.

It shows that you have credibility: others consider you an expert on that topic and trust your opinion and judgment.

When I started programming, I didn’t think I could actually be considered an expert in any specific technology. That was my impostor syndrome talking!

But the more I grew as an engineer, the more I knew that my skills were on par with those of my colleagues. Let me tell you how I first became the go-to person in my workplace.

How I became the go-to engineer

The company I was working for decided to move its app from using server-side rendering to client-side, using Angular.

I was very excited about this change and took the opportunity to start proactively learning Angular in my spare time. I particularly learned a lot from a course by Maximilian Schwarzmüller.

This learning made me the most knowledgeable engineer in my organization on Angular, which automatically made me the go-to person. That’s when my value grew substantially.

Everyone was coming to me with questions and issues, so it was a natural next move for my manager to put me in charge of our overall architecture, maintaining its style guide and guidelines, and onboarding new engineers.

This work sped up my progression substantially and helped me to grow toward becoming a Senior Software Engineer and eventually a Team Lead.

Later, after I changed companies, my new employer switched from using Vue to React. I tried the same approach, taking ownership and responsibility for many different React projects, which got me the offer to become a Team Lead.

3 main ways to become the go-to person

You either become the go-to person for a specific project, domain, or technology.

Choose the one that best plays to your strengths.

  1. Project

Take ownership of a project and make it your responsibility to get everyone on the same page and ensure that everyone is building the right things.

You may ask: isn’t this the product or project manager’s responsibility? Well, the product manager doesn’t understand all of the technical details, but you do.

So an engineer who takes ownership and responsibility for the project, gets everyone on board, and ensures that deliverables are done right and on time is very valuable.

  1. Technology

Whichever technology you work with currently, become the go-to person for that technology. This can be a specific framework, language, or overall field, like frontend, backend, QA, or DevOps.

Ideally, you’ll be an expert in one specific thing and very good at a lot of other things. That way, you can have great discussions about basically any technology while providing an expert opinion on one specific topic.

Others will naturally go to you for specific questions and issues, which will make you very valuable for the team and the overall organization.

Once your knowledge approaches expert level in a specific technology, here are some ways to make sure that others consider you an expert:

  • Host learning sessions inside your team or across the organization to share your knowledge with others
  • Start writing: post on LinkedIn or start writing a blog or a newsletter.
  • Focus on helping others. Word will travel fast that you are a knowledgeable person who likes to help when needed.
  1. Domain

In every organization, there are specific domains, like payments, orders, products, and news.

If you work on an application with a monolithic architecture, those domains are called modules; in a microservices architecture, they’re services. Every domain has specific business logic related to it. My recommendation is to take ownership of the domain you work on.

Some ways to do this are:

  • Create documentation as needed and keep existing documentation up to date. Consider creating an FAQ page as well.
  • Make sure your domain works flawlessly and that you can quickly spot issues when they arise.
  • Put good monitoring in place and continuously check for unusual activity or other signs of a problem.
  • Help others onboard quickly and become productive in your domain.
  • Be available to answer colleagues’ questions.

Engineers who aren’t afraid to take ownership and responsibility are highly desirable

When they also make others around them better, they provide a lot of value to the engineering organization and the company.

You can’t, and don’t need to become the go-to for everything. Become the go-to for one thing and do that well. Going deep is what provides the most value.

Think about it like this: if one person in the organization takes really good care of a specific part of that organization, everyone in the organization benefits.

Let’s define what a go-to person should and shouldn’t do. Your focus should be on making it easier for everyone to get started on and work with whatever domain, project, or technology is your specialty.

Here is what you shouldn’t do:

  • Treat your knowledge and context as something to guard rather than share
  • View colleagues as competition instead of collaborators
  • Work in isolation rather than inviting feedback
  • Protect your domain instead of enabling others to contribute

Here is what you should do:

  • Spread knowledge and awareness about your area of expertise
  • Create documentation and learning documents for others to use
  • Provide support and onboarding; be helpful to others working on your area of expertise

Notion template: Become the go-to person

Use this template to list down your projects, domains and technologies. This will help you to choose on what you can become a go-to person.

Paid subscribers, you can get the template here: .

Now, let’s go to the next important thing that you can do to showcase your value and increase your chances of getting promoted.

4. Propose and implement an impactful improvement

Engineers who truly stand out are the ones who find impactful work to do without being asked, then take ownership to execute and implement it as well.

You can do this by yourself or, even better, bring in other team members and deliver the improvement together. Don’t just wait for assigned tasks: that limits your growth and the value that you can provide.

Why should you propose an impactful improvement to the codebase and own its implementation?

  1. First, it shows everyone that you aren’t just here to focus on your own tasks, but to make things better for your team and organization.
  2. Second, every time you work on something new, you learn something new as well. It’s a chance for you to expand your horizons with a new framework, technology, or domain. Getting comfortable with being uncomfortable is the way to grow.
  3. Third, this strategy gives you an opportunity to lead a project, which is especially important for growing towards lead roles. You’ll need to establish a track record of successfully leading and finishing projects.
  4. Fourth, once you do this, your overall reputation will grow substantially, bringing you far more opportunities. You’ll also make a better first impression on people you meet.

But here is the most important reason to propose an impactful improvement to the codebase and own its implementation: It will get you promoted.

There are many reasons why, but in short, you are showing that you are proactive, that you aren’t afraid of taking responsibility and ownership, and that you can deal with ambiguity and successfully finish projects.

One of the most important things managers look for in engineers is the ability to take not-so-clear requirements and deliver the exact solution needed, without supervision.

That’s what I look for: I promote engineers I can rely on to solve a problem on time and with high quality. Do this enough and you’ll attract unlimited opportunities.

How do you find the improvements that will make a real impact?

Listen, and then solve the problems nobody wants to deal with, additionally, listen to the problems and challenges of your team, other teams and departments (product, design, sales, marketing, compliance, and so on), and the overall engineering organization.

If you understand their problems, you can find technical solutions that would help solve them. Imagine implementing something that will save the marketing or sales team thousands of hours. That provides a lot of value!

Put yourself in other people’s shoes and ask yourself what you can do to help the most. Ask questions and make sure you understand the business challenges involved. Try to think like a product manager!

Also this is very important as well, when you hear about recurring issues, the best thing you can do is to try to solve them.

There may be some parts of the codebase that are really hard to understand, parts that are missing documentation or tests, or parts whose quality nobody feels confident about.

Not only will your fellow engineers, your manager, and the whole organization appreciate you for doing this, you’ll be showing the courage to face the issue and grit to resolve it, and that will set you apart.

Once you find an improvement to suggest, how should you propose it?

How to propose an impactful improvement?

The answer depends on the scope of the improvement and the impact behind it. For quick improvements, I highly suggest just doing it. If you are not sure about it, get some feedback from your team members first.

But if you are sure, you don’t need to get permission to make things better, just fix things. Create a task and open a pull request with the changes.

If the fix takes more time, talk to your manager, PM, or Tech Lead. Make sure to write down your reasons for proposing the improvement and clearly describe the impact, the risks, and the approach you are proposing.

You want to make it as easy as possible for the relevant person to say yes.

Finally, and most importantly, when you propose the improvement, volunteer to lead its implementation. Make it clear that you wish to take ownership of resolving the problem.

If you don’t do that, leading the implementation work could be assigned to someone else, and you’d lose out on that experience.

This has been very impactful for my career

Proposing and implementing impactful improvements has substantially helped me grow in my career, both within my full-time roles and when doing freelance work. I’ve been able to deliver exactly what clients are looking for.

The funny thing is that the initial requirements are always something different than what they really needed. I’ve learned to ask the right questions and propose solutions in ways that ensure we actually build the right things.

Last words

Let’s end this article with the following:

Doing all these 4 things we mentioned above will increase your reputation substantially and increase your chances of getting promoted.

The key is not to wait until someone gives you permission to operate at the next level.

Start creating impact beyond your own work. Take ownership of problems that nobody explicitly assigned to you. The title usually comes after you’ve already shown you can operate at that level.

You got this!


Liked this article? Make sure to 💙 click the like button.

Feedback or addition? Make sure to 💬 comment.

Know someone that would find this helpful? Make sure to 🔁 share this post.

Whenever you are ready, here is how I can help you further

  • Interested in sponsoring this newsletter? Check the sponsorship options here.
  • Check out my book “The Multiplier Mindset” coming out later this year, .
  • Take a look at the cool swag in the Engineering Leadership Store here.
  • Want to work with me? You can see all the options here.

Get in touch

You can find me on LinkedIn, X, YouTube, Bluesky, Instagram or Threads.

If you wish to make a request on particular topic you would like to read, you can send me an email to info@gregorojstersek.com.


This newsletter is funded by paid subscriptions from readers like yourself.

If you aren’t already, consider becoming a paid subscriber to receive the full experience!

You are more than welcome to find whatever interests you here and try it out in your particular case. Let me know how it went! Topics are normally about all things engineering related, leadership, management, developing scalable products, building teams etc.

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论