Daniel Doubrovkine bio photo

Daniel Doubrovkine

aka dB., @ShopifyEng, @OpenSearchProj, ex-@awscloud, former CTO @artsy, +@vestris, NYC

Email Twitter LinkedIn Github Strava
Creative Commons License

There’s much written about becoming a first time Engineering Manager (I recommend Camille’s book), but little about the second time.

To my own surprise, I am back to being a manager after almost 6 years of writing code as an individual contributor (IC). Two months ago I joined the Developer Productivity organization at Shopify to create a new team called “Augmented Engineering”. We’ve been busy building, and have recently released an open-source tool to execute structured A.I. workflows, called Roast. This post is not about A.I., so let’s get back to talking about my motivations, and the pros and cons of going back from IC to Manager.

The Manager Path

My manager path was a typical one. I was a strong individual contributor (or so I was told), which led to an increase in team coordination responsibilities, culminating in a promotion to Team Lead about 25 years ago. My very first manager was my best manager and a fantastic role model - I had a niche product idea that he noticed and helped get funded, which had me directly managing people, being responsible for their careers and compensation. My scope then grew to Director (a manager of managers), then Head of Engineering, and finally CTO a decade ago. I have, of course, burned out, and decided it was healthier to get paid more and have less stress, and so I went back to being an individual contributor, joined AWS in 2019, and wrote about the pros and cons of going from management back to IC. I then told myself that I would never go back to management.

Until now.

Managerial Dysfunction

Over the past 6 years, I have been exposed to hundreds of teams and witnessed many struggle with poor management. Working across many teams was in the job description, and I enjoyed offering my time to dozens of people in 1:1s. Not unexpectedly, many sought career advice from me - I was a peer, yet a former CTO. I asked - “Are you not getting career advice from your manager?”. Some were, but many more complained about being treated as just another number, stuck in the middle of organizational dysfunction, mostly ignored by their management chain. They felt like “resources” and were called that name. The depth of the pain was surprising. Hearing “My manager sucks.” was common. In debugging this problem, I found out that the unhappy ones were almost always forcefully re-organized under their current manager, as opposed to being actively sought and hired by them. The common denominator was that they never chose their manager - the latter was either hired or inserted above their head, replacing their original hiring manager. In my own experience, while I did not necessarily feel the same way, my last manager was hired and inserted above me, and I had not interviewed them, not given a choice, never asked a question about the individual being brought in, nor had any say in their hiring before that decision was made.

Sometimes one gets lucky, but most of the time one does not. Twice a week over a period of several years I had an IC get caught in a kerfuffle involving some team dynamic or company-wide decision and get screwed over, often by their manager, pouring their grievances to me in a 1:1, unable to openly criticize their manager, which would be career suicide. In Russian we say that “criticizing management is like peeing against the wind”.

In a recent discussion with an Engineer I heard this (paraphrased): “I really wanted to finish my project, but in the last team meeting a colleague of mine started swearing, which they never did, so much they were frustrated. I got another job offer and told the recruiter to make my start date as early as possible.” This person had 3 managers in less than a year. Each was a downgrade from the previous one, the latter failing to understand technology being built in any level of depth, and making up unreasonable technical asks and timelines. The least capable managers have not done any IC work for years, are rarely able to grasp the depth of the technical problems being solved, yet make plenty of decisions around them. They can’t find another job, and spend all their energy playing politics, managing up, and torturing their directs.

The Return to Office Debacle

The second issue was the Return to Office (RTO) mandate. I have not had a 1:1 with anyone in the last 2 years where this wasn’t the main topic of conversation. What a waste of time and energy! The desire to bring people back to an office was reasonable, but the way it was implemented was a huge mistake and was not customer obsessed. Instead of doing it “by example”, where the managers would build real opportunities to collaborate in-person, people were told to badge like children at school. Remote managers were written off, everybody knew their headcount will not grow, and attrition was not backfilled remotely. As a consequence, some of the best people were lost. Remote team sizes dwindled down through death by a thousand cuts, then the remainder were forced to move to a hub, or find another job. Commutes became unbearable in large cities, especially painful for my colleagues in India or the Pacific Northwest. People would spend their days on video conferences from the office working across the continents, adding to the frustration. Ironically, I had a remote exception, all while living in the middle of Manhattan, a five minute walk away from my old office where I had no team. Naturally, every junior IC was envious of my situation and found it completely unfair, which it was. “What do you care? You have a remote exception.”, two senior managers told me. Talk about empathy!

My Decision to Return

To conclude, I had finally realized that my people skills were desperately needed while everyone was coming down from the post-pandemic rollercoaster. And so, I became a manager again. I think I am capable of building great teams, as opposed to watching existing good ones burn out.

Pros and Cons of Being a Manager (Again)

The cons of being a manager are obvious. It’s a lot more stressful. My team does all the work and I am not in full control of my outcomes, yet responsible for all the failures. The pros sum up to feeling more like a real human, seeing people grow, enjoying working on technology I care about, and witnessing success when enabling a team that does their best work.

Increased Multitasking and Stress

This is one of the biggest cons. I do feel more stress as a manager because of the constant context switching, direct reports that routinely vent their personal life and frustrations with me, and exposure to more gossip and politics. Today I have 3 teams doing very different things at different stages of assembly, and have to stash and restore context in and out of my frontal lobe multiple times a day all while facing demanding senior leadership, and a lot of incoming pressures from multiple directions.

To mitigate this I try not to be anyone’s psychiatrist, and spend more time being the face of the organization. I force myself to work normal hours, protect time to focus on tasks that require flow, and force myself to write some code, and do other “real” work with my own hands. I also take ownership of problems visibly, and accept that being responsible for my team’s failures is simply my job.

Feeling Good About People Work

Whereas I had lots of 1:1s with my fellow Engineers, I was mostly tasked with producing software as an IC. As a manager, I am back to having to listen to people as part of my role. This forces me to take my 1:1s a lot more methodically, to followup on people problems, resolve conflicts, inspire each individual to be their best at work, and enable them in any way I can. As a consequence, it feels great to see everyone on a a team I built work well together and be inspired.

Working with People Rather than Computers

I still enjoy writing code after 35+ years of it, but I am learning less now, even though technology moves so fast and everything feels new again with A.I. A lot of the craft for an experienced Engineer can become a little boring, and I am not as motivated as someone who is in the middle of learning the exciting parts of it. While on the other hand, the younger people today are quite different from me, and surprise me often in more ways than none. Working with people as my primary job can be interesting in many new ways.

Feeling Control

As a senior manager I set direction and have significant amounts of organizational power. I know where the bodies are being buried because I hold the shovel. I make many decisions that affect others. I have access to detailed information, know early when someone important is quitting or being fired. I have a word in hiring, letting go and promoting. This comes with agonizing headaches, such as not being able to tell someone that they are about to lose their job, but there’s a better sense of control, and maybe even some level of psychological safety for myself. This is quite personal, but I do feel better when I sense I have a good grip on things.

The Future of Empire Building

I don’t know how to conclude this post, so I will only say that now that I am a manager again, I might as well build an empire. I could divide and conquer my team into people I like, and people I don’t like, and terrorize the former. Of course, this is a joke, but I like to think about this empire-building concept that is often associated with senior managers as a signal. The moment I feel that I am, or have built an empire, is the moment to become an IC again, with its own pros and cons.