Skip to content
Go back

From Engineer to Director

Reflections on how I transitioned from Engineer to Director of Engineering at Sentry

The Pragmatic Engineer

For the majority of my career I was the most pragmatic, 80/20 all-rounder engineer. Someone you could throw at any problem - new tech, weird edge case, whatever - and I’d have something working super quickly. I’d figure out the problem and usually find a pragmatic solution.

Over time through experience mostly doing it 10 times wrong to find the most effective way to do something right I refined my skills and learned new tips & tricks to be even quicker.

In contrast, I wasn’t the type of engineer who loved diving into tiny details and specializing in one thing. I loved medium-difficulty problems that introduced new tech I hadn’t tried before - always looking for more tools to play with.

So in short, if I could pick an 80% solution in 1 day or the 100% solution in 2 weeks, I would always pick the 80%.

I don’t want to say I only did small projects. No, there have been massive projects I worked on, but honestly, most of the time I felt relieved rather than accomplished once they were finished.

Not just at Sentry but throughout my whole career, people naturally gravitated towards me because they knew that I care and get things done quickly and effectively. Not just about helping them with a technical problem, but also with personal things.

First Steps into Management

Vlad, my mentor and former VP of Engineering at Sentry, introduced the possibility for me to go into Engineering Management. He enabled me to do that in the most graceful way by just starting a new team from zero. He knew I like to build personal relationships with people - it helps me communicate on the same wavelength as them.

So the first 1-2 years as an EM were crazy - learning what it means to be a manager, being a manager and at the same time still being an engineer solving real problems. It’s like having two jobs. To be fair, it’s by no means a full-time job to manage a handful of people, but depending on how seriously you take your responsibilities, it can be taxing.

I knew everything in great detail - what the whole team was working on, which projects were where, and at the same time I was juggling all my own projects as well. On top of that, don’t forget hiring, which easily eats away a quarter of your week if you’re in growth mode with 1-2 interviews every day.

Anyway, if you’re an engineer who likes to organize things and by that I don’t mean organize Jira/GitHub issues or whatever, I dislike that. I mean solve a lot of problems at the same time. Being a first-line manager can be a very motivating thing - you’ll learn a ton.

You absolutely need like working with and for other people. I myself always said: I want to stay an engineer forever, it was just too much fun solving problems with code. And stepping into managment doesn’t prohibit you from writing code - over time you just need to become more selective on what makes sense for you to work on and what would be a good opportunity for someone else to step up.

I always try to make the other person feel that their success is my main priority. This is both true for stakeholder as well as ICs that report to you. For a stakeholder success usually means deliver what was agreed upon, for an IC it usually means show them a path to grow.

A managers job is not to make people work, it’s to work for them. Or said differently: You should only open doors, people need to walk themselves.

If you consistently manage to keep your word and solve the things that were agreed upon, what usually happens is you naturally get more responsibilities. And in our world today, this usually means more people to manage.

You’ll reach a point though where you’re stretched too thin and you need to introduce a new layer. You need to become a middle manager or both a direct EM and middle manager, for a while.

I would say the critical mass of direct reports where I could still keep tabs on everything was around 8-10 people. Usually by that size it’s already two different but similar teams, and it’s really challenging to both know everything technically to a degree where you can credibly talk about it AND deal with all people-related topics: challenges, promotions, expectations, 1:1s, planning, hiring, etc.

The Middle Manager Challenge

For me personally, this transition was more difficult. It’s the time where you more and more NEED to let go of what you know, really let others take control, and hold them accountable via clear expectation management.

You gradually lose touch with the code you once were so familiar with.

For another few years I was both a direct manager of a few ICs as well as managing other managers who managed their teams. Still doing all skip levels, managing high-level goals for every team, etc. Pretty stressful but also rewarding.

Becoming the observer of other managers’ successes and failures helped me put all the things I experienced in perspective and, with that, support everyone else better.

But that doesn’t make it easier. So many more things become unclear, you are no longer part of every important conversation so you need to rely on others to drive the outcomes you expect. You also should be really mindful about when it’s time to step into a situation and provide your perspective and when to let it play out. No one wants to be a micromanager, but at the same time, not being attentive towards what’s happening is also not an option.

Finding the right balance there is something that took me years to be comfortable with.

Same as before, what happens if you consistently do well and improve? That’s right, more responsibility!

Don’t get me wrong, no one can force anyone to take on more responsibility. It can only be offered and either accepted or not. So it’s not that I didn’t want it.

So eventually I became Director of Engineering. And here is where things get even more blurry. Suddenly your responsibilities shift between running your own small organization within an organization and working with leadership to drive business outcomes.

Director-Level Responsibilities

It’s really dangerous and difficult to be an effective Director. It’s really easy to lose track of what’s going on day-to-day with all the hundreds, if not thousands, of small decisions everyone you’re responsible for needs to make every day.

In one meeting you need to be able to talk technical details with a team of engineers, and in the next, talk about what 3 business outcomes you’re planning for in H2 and how you need to assign people and teams to solve all these problems in a reasonable amount of time.

It is really easy to stop being hands-on, because to be fair, the small day-to-day decisions aren’t that important in the grand scheme of things. A wrong PR can easily and quickly be reverted. What’s really important is not to let things trend in the wrong direction.

I always say: The only thing I care about is if things are trending in the right direction. Decisions good & bad, quickly accumulate over time.

If you let go too much about actually understanding on a detailed level what’s going on, it will be more difficult for you to see when things are trending in the wrong direction and therefore harder to change and influence. And if that happens for too long, one day you wake up and actually have no clue what’s going on anymore.

Ask me how I know?

I know because I’ve been there and done that multiple times. Still today there are many projects I don’t have a full grasp on anymore. And you know what? I learned that that’s okay. Because I learned how to quickly recognize when such situations occur and quickly inject myself to understand what’s going on. But I also became much better at keeping my managers accountable to the things I expect of them. Consistently praising and highlighting positive things and directly confronting things we can improve - not really different as with anyone else.

So by now I would say I feel somewhat comfortable with what it means to be a Director at a fast-paced company like Sentry.

And there are still days where it feels like I’m the imposter.

Being a Director is many things - from being an engineer actually solving problems, to a manager for some IC, to a manager for managers, and a stakeholder in the business. It can be really fun, because if you find the right groove you really start to lean into it and see how much impact you can have with your whole team.

Here are a few things that worked well for me throughout all stages of my career - maybe they’ll help you too:

Keep your people close - I mean really close. Close enough that you feel like you’re communicating on the same frequency. This doesn’t mean you have to be best friends with everyone - it means they should understand what you’re expecting of them and what they can expect from you.

To me, it’s almost impossible to be effective at my job if I haven’t established this baseline.

Stay humble - I can’t recall ever pulling rank for anything I did. If that becomes necessary, something is probably wrong with your team’s culture.

Always stay open-minded, curious, and vulnerable - approach every situation as if there must be something for you to learn. Because there usually is.


Share this post on:

Previous Post
Vulnerability Actually Works
Next Post
I know why you are not getting hired