Engineering Management: The Pendulum Or The Ladder

Last night I was out with a dear friend who has been an engineering manager for a year now, and by two drinks in I was rattling off a long list things I always say to newer engineering managers.

Then I remembered: I should write a post! It’s one of my goals this year to write more long form instead of just twittering off into the abyss.Buffy Jaguar 3.5x5

There’s a piece I wrote two years ago, The Engineer/Manager Pendulum,  which is probably my all time favorite.  It was a love letter to a friend who I desperately wanted to see go back to engineering, for his own happiness and mental health.  Well, this piece is a sequel to that one.

It’s primarily aimed at new managers, who aren’t sure what their career options look like or how to evaluate the opportunities that come their way, or how it may expand or shrink their future opportunities.

The first fork in the manager’s path

Every manager reaches a point where they need to choose: do they want to manage engineers (a “line manager”), or do they want to try to climb the org chart? — manage managers, managers of other managers, even other divisions; while Does Not Kill Us Puppy UPDATEDbeing “promoted” from manager to senior manager, director to senior director, all the way up to VP and so forth.   Almost everyone’s instinct is to say “climb the org chart”, but we’ll talk about why you should be critical of this instinct.

They also face a closely related question: how technical do they wish to stay, and how badly do they care?

Are you an “engineering MANAGER” or an “ENGINEERING manager”?

These are not unlike the decisions every engineer ends up making about whether to go deep or go broad, whether to specialize or be a generalist.  The problem is that both engineers and managers often make these career choices with very little information — or even awareness that they are doing it.

And managers in particular then have a tendency to look up ten years later and realize that those choices, witting or unwitting, have made them a) less employable  and b) deeply unhappy.

Lots of people have the mindset that once they become an engineering manager, they should just go from gig to gig as an engineering manager who manages other engineers: that’s who they are now.  But this is actually a very fragile place to sit long-term, as we’ll discuss further on in this piece.

But let’s start at to the beginning, so I can speak to those of you who are considering management for the very first time.

“So you want to try engineering management.”

COOL! I think lots of senior engineers should try management, maybe even most senior engineers.  It’s so good for you, it makes you better at your job. (If you aren’t a senior engineer, and by that I mean at least 7+ years of engineering experience, be very wary; know this isn’t usually in your best interest.)

Hopefully you have already gathered that management is a career change, not a promotion, and you’re aware that nobody is very good at it when they first start.

That’s okay! It takes a solid year or two to find new rhythms and reward mechanisms before you can even begin to find your own voice or trust your judgment. Management problems look easy, deceptively so.  Reasons this is hard include:

  1. Most tech companies are absolutely abysmal at providing any sort of training or structure to help you learn the ropes and find your feet.
  2. untrueEven if they do, you still have to own your own career development.  If learning to be a good engineer was sort of like getting your bachelor’s, learning to be a good manager is like getting your PhD — much more custom to who you are.
  3. It will exhaust you mentally and emotionally in the weirdest ways for much longer than you think it should.  You’ll be tired a lot, and you’ll miss feeling like you’re good at something (anything).

This is because you need to change your habits and practices, which in turn will actually change who you are.  This takes time.  Which is why …

The minimum tour of duty as a new manager is two years.

If you really want to try being a manager, and the opportunity presents itself, do it!  But only if you are prepared to fully commit to a two year long experiment.

Root Causes DolphinCommit to it like a proper career change. Seek out new peers, find new heroes. Bring fresh eyes and a beginner’s mindset. Ask lots of questions. Re-examine every one of your patterns and habits and priorities: do they still serve you? your team?

Don’t even bother thinking about in terms of whether you “enjoy managing” for a while, or trying to figure out if you are are any good at it. Of course you aren’t any good at it yet.  And even if you are, you don’t know how to recognize when you’ve succeeded at something, and you haven’t yet connected your brain’s reward systems to your successes.  A long stretch of time without satisfying brain drugs is just the price of admission if you want to earn these experiences, sadly.

It takes more than one year to learn management skills and wire up your brain to like it.  If you are waffling over the two year commitment, maybe now is not the time.  Switching managers too frequently is disruptive to the team, and it’s not fair to make them report to someone who would rather be doing something else or isn’t trying their ass off.

It takes about 3-5 years for your skills to deteriorate.

So you’ve been managing a team for a couple years, and it’s starting to feel … comfortable?  Hey, you’re pretty good at this!  Yay!

With a couple of years under your belt as a line manager, you now have TWO powerful skill sets.  You can build things, AND you can organize people into teams to build even bigger things. Right now, both sets are sharp.  You could return to engineering pretty easily, or keep on as a manager — your choice.

But this state of grace doesn’t last very long. Your technical skills stop advancing when you become a manager, and instead begin eroding.  Two years in, you aren’t the effective tech lead you once were; your information is out of date and full of gaps, the hard parts are led by other people these days.

More critically, your patterns of mind and habits shift over time, and become those of a manager, not an engineer.  Consider how excited an engineer becomes at the prospect of a justifiable greenfield project; now compare to her manager’s glum reaction as she instinctively winces at having to plan for something so reprehensibly unpredictable and difficult to estimate.  It takes time to rewire yourself back.

If you like engineering management, your tendency is to go “cool, now I’m a manager”, and move from job to job as an engineering manager, managing team after team of engineers.  But this is a trap.  It is not a sound long term plan.  It leads too many people off to a place they never wanted to end up: technically sidelined.

Sunglasses Tiger Debugger 3.3x5

Why can’t I just make a career out of being a combo tech lead+line manager?

One of the most common paths to management is this: you’re a tech lead, you’re directing ever larger chunks of technical work, doing 1x1s and picking up some of the people stuff, when your boss asks if you’d like to manage the team.  “Sure!”, you say, and voila — you are an engineering manager with deep domain expertise.

But if you are doing your job, you begin the process of divesting yourself of technical leadership responsibilities starting immediately.  Your own technical development should screech to a halt once you become a manager, because you have a whole new career to focus on learning.

Your job is to leverage that technical expertise to grow your engineers into great senior engineers and tech leads themselves.  Your job is not to hog the glory and squat on the hard problems yourself, it’s to empower and challenge and guide your team.  Don’t suck up all the oxygen: you’ll stunt the growth of your team.

But your technical knowledge gets dated, and your skills atrophy..  The longer it’s been since you worked as an engineer, the harder it will be to switch back.  It gets real hard around three years, and five years seems like a tipping point.[1]

And because so much of your credibility and effectiveness as an engineering leader comes from your expertise in the technology that your team uses every day, ultimately you will be no longer capable of technical leadership, only people management.

On being an “engineering manager” who only does people management

I mean, there’s a reason we don’t lure good people managers away from Starbucks to run engineering teams.  It’s the intersection and juxtaposition of skill sets that gives engineering managers such outsize impact.

The great ones can make a large team thrum with energy.  The great ones can break down a massive project into projects that challenge (but do not overwhelm) a dozen or more engineers, from new grads to grizzled veterans, pushing everyone to grow.  The great ones can look ahead and guess which rocks you are going to die on if you don’t work to avoid them right now.

The great ones are a treasure: and they are rare.  And in order to stay great, they regularly need to go back to the well to refresh their own hands-on technical abilities.

Pointless Ice Cream 3x2.5There is an enormous demand for technical engineering leaders — far more demand than supply.  The most common hackaround is to pair a people manager (who can speak the language and knows the concepts, but stopped engineering ages ago) with a tech lead, and make them collaborate to co-lead the team.  This unwieldy setup often works pretty well.

But most of those people managers didn’t want or expect to end up sidelined in this way when they were told to stop engineering.

If you want to be a pure people manager and not do engineering work, and don’t want to climb the ladder or can’t find a ladder to climb, more power to you.  I don’t know that I’ve met many of these people in my life.  I have met a lot of people in this situation by accident, and they are always kinda angsty and unhappy about it.  Don’t let yourself become this person by accident.  Please.

Which brings me to my next point.

You will be advised to stop writing code or engineering.

Fuck

That.

 ✨

Everybody’s favorite hobby is hassling new managers about whether or not they’ve stopped writing code yet, and not letting up until they say that they have.  This is a terrible, horrible, no-good VERY bad idea that seems like it must originally have been a botched repeating of the correct advice, which is:

Stop writing code and engineering

in the critical path

Can you spot the difference?  It’s very subtle.  Let’s run a quick test:

  • Authoring a feature?  ⛔️
  • Covering on-call when someone needs a break?  ✅
  • Diving on the biggest project after a post mortem?  ⛔️
  • Code reviews?  ✅
  • Picking up a p2 bug that’s annoying but never seems to become top priority?  ✅
  • Insisting that all commits be gated on their approval?  ⛔️
  • Cleaning up the monitoring checks and writing a library to generate coverage?  ✅

The more you can keep your hands warm, the more effective you will be as a coach and a leader.  You’ll have a richer instinct for what people need and want from you and each other, which will help you keep a light touch.  You will write better reviews and resolve technical disputes with more authority.  You will also slow the erosion and geriatric creep of your own technical chops.

I firmly believe every line manager should either be in the on call rotation or pinch hit liberally and regularly, but that’s a different post.

Technical Leadership track

If you  love technology and want to remain a subject-matter expert in designing, building and shipping cutting-edge technical products and systems, you cannot afford to let yourself drift too far or too long away from hands-on engineering work.  You need to consciously cultivate your path , probably by practicing some form of the engineer/manager pendulum.

If you love managing engineers — if being a technical leader is a part of your identity that you take great pride in, then you must keep up your technical skills and periodically DIstrust Kittens 2.5x3invest in your practice and renew your education.  Again: this is simply the price of admission.  You need to renew your technical abilities, your habits of mind, and your visceral senses around creating and maintaining systems.  There is no way to do this besides doing it.  If management isn’t a promotion, then returning to hands-on work isn’t a demotion, either.  Right?

One warning: Your company may be great, but it doesn’t exist for your benefit.  You and only you can decide what your needs are and advocate for them.  Remember that next time your boss tries to guilt you into staying on as manager because you’re so badly needed, when you can feel your skills getting rusty and your effectiveness dwindling.  You owe it to yourself to figure out what makes you happy and build a portfolio of experiences that liberate you to do what you love.  Don’t sacrifice your happiness at the altar of any company.  There are always other companies.

Honestly, I would try not to think of yourself as a manager at all: you are an “engineering leader” performing a tour of duty in management.  You’re pursuing a long term strategy towards being a well-respected technologist, someone who can sling code, give informed technical guidance and explain in detail customized for to anyone at any level of sophistication.

Organizational Leadership Track

Most managers assume they want to climb the ladder.  Leveling up feels like an achievement, and that can feel impossible to resist.

Resist it.  Or at least, resist doing it unthinkingly.  Don’t do it because the ladder is there and must be climbed.  Know as much as you can about what you’re in for before you decide it’s what you want.

Here are a few reasons to think critically about climbing the ladder to director and executive roles.

  1. Your choices shrink. There are fewer jobs, with more competition, mostly at bigger companies.  (Do you even like big companies?)
  2. You basically need to do real time at a big company where they teach effective management skills, or you’ll start from a disadvantage.
  3. Bureaucracies are highly idiosyncratic, skills and relationships may or may not transfer with you between companies. As an engineer you could skip every year or two for greener pastures if you landed a crap gig.  An engineer has … about 2-3x more leeway in this regard than an exec does.  A string of short director/exec gigs is a career ender or a coach seat straight to consultant life.
  4. You are going to become less employable overall.  The ever-higher continuous climb almost never happens, usually for reasons you have no control over.  This can be a very bitter pill.
  5. Your employability becomes more about your “likability” and other problematic things.  Your company’s success determines the shape of your career much more than your own performance.  (Actually, this probably begins the day you start managing people.)
  6. Your time is not your own. Your flaws are no longer cute. You will see your worst failings ripple outward and be magnified and reflected.  (Ditto, applies to all leaders but intensifies as you rise.)
  7. You may never feel the dopamine hit of “i learned something, i fixed something, i did something” that comes so freely as an I.C.  Some people learn to feel satisfaction from managery things, others never do.  Most describe it as a very subdued version of the thrill you get from building things.
  8. You will go home tired every night, unable to articulate what you did that day. You cannot compartmentalize or push it aside. If the project failed for reasons outside your control, you will be identified with the failure anyway.
  9. Nobody really thinks of you as a person anymore, you turn into a totem for them to project shit on. (Things will only get worse if you hit back.)  Can you handle that?  Are you sure?
  10. It’s pretty much a one-way trip.

Sure, there are compensating rewards.  Money, power, impact.  But I’m pointing out the negatives because most people don’t stop to consider them when they start saying they want to try managing managers.  Every manager says that. parasite

The mere existence of a ladder compels us all to climb.

I know people who have climbed, gotten stuck, and wished they hadn’t. I know people who never realized how hard it would be for them to go back to something they loved doing after 5+ years climbing the ladder farther and farther away from tech.  I know some who are struggling their way back, others who have no idea how or where to start.  For those who try, it is hard.  

You can’t go back and forth from engineering to executive, or even director to manager, in the way you can traverse freely between management and engineering as a technologist.

I just want more of you entering management with eyes wide open.  That’s all I’m saying.

If you don’t know what you want, act to maximize your options.

Engineering is a creative act. Managing engineers will require your full attentive and authentic self. You will be more successful if you figure out what that self is, and honor its needs.  Try to resist the default narratives about promotions and titles and roles, they have nothing to do with what satisfies your soul.  If you have influence, use it to lean hard against things like paying managers more than ICs of the same level.[2]

gpsun2It’s totally normal not to know who you want to be, or have some passionate end goal.  It’s great to live your life and work your work and keep an eye out for interesting opportunities, and see what resonates.  It’s awesome when you get asked to step up and opportunistically build on your successes.

If you want a sustainable career in tech, you are going to need to keep learning your whole life. The world is changing much faster than humans evolved to naturally adapt, so you need to stay a little bit restless and unnaturally hungry to succeed in this industry.

The best way to do that is to make sure you a) know yourself and what makes you happy, b) spend your time mostly in alignment with that. Doing things that make you happy give you energy. Doing things that drain you are antithetical to your success. Find out what those things are, and don’t do them. 

Don’t be a martyr, don’t let your spending habits shackle you, and don’t build things that trouble your conscience.

And have fun.

Yours in inverting $(allthehierarchies),
charity.

img_5680

 

[1] Important point: I am not saying you can’t pick up the skills and patience to practice engineering again.  You probably can!  But employers are extremely reluctant to pay you a salary as an engineer if you haven’t been paid to ship code recently.  The tipping point for hireability comes long before the tipping point for learning ability, in my experience.

[2] It is in no one’s best interest for money to factor into the decision of whether to be a manager or not.  Slack pays their managers LESS than engineers of the same level, and I think this is incredibly smart: sends a strong signal of servant leadership.

 

Engineering Management: The Pendulum Or The Ladder

36 thoughts on “Engineering Management: The Pendulum Or The Ladder

  1. Arto Santala says:

    A colleague shared a recent article from this blog, which was excellent. I got immediately hooked, lots of good stuff here! Will be back to read more 🙂

    Liked by 2 people

  2. Tam says:

    Regarding hireability, it’s not only about available jobs, but also consider how much salary companies are willing to pay. The majority of jobs on the market for my current role are below my current salary.

    I believe (with zero numbers to back me) that managers have higher hireability, if you filter low pay jobs. Only few companies I know that give ICs equal salaries, or even have any levels for ICs that’s equivalent to managers.

    Like

    1. this is a GREAT point about salary. not sure what you mean about higher hireabilityif you filter low pay jobs. but yes, most companies are absolutely terrible about leveling / providing career paths for ICs that are comparable to managers. this is a pathology that hurts everyone, imho.

      Like

  3. I thoroughly enjoyed reading this, Charity. You are spot on – tech skills do deteriorate at an alarming pace past the tipping point. Every few years, I switch back and forth between tech jobs and general management type ones. But to make it work – I can NEVER stop learning and especially coding. And as I grow older, it is becoming quite hard. But once you are used to that feeling of seeing your code compile and run – its hard to replace it with project plans and PPT 🙂

    Like

  4. Dionna Glaze says:

    I kind of love this? Thank you so much for offering so much food for thought. I hadn’t considered most of what you said in this article.

    Like

  5. Thank you for sharing! Would you be willing to expand on your aside regarding engineering seniority preceding management?

    “If you aren’t a senior engineer, and by that I mean at least 7+ years of engineering experience, be very wary; know this isn’t usually in your best interest.”

    What has your experience shown regarding folks who move into management earlier?

    Like

    1. oh jeez, so many things. they don’t know enough about tech to have credibility with the team; they haven’t been practicing long enough to become senior and to have it really stick in their brain; they may not have been exposed to a range of different styles and paradigms so they are too rigid in regards to practices; they aren’t qualified to mediate technical disputes and don’t have great engineering judgment; their engineering skills haven’t had time to set and solidify so they forget them much faster, and are much harder to ever recover. they cannot effectively manage senior engineers if they haven’t been one, let alone help others grow into strong senior engineers.

      etc.

      Like

  6. Andy says:

    I am going through this exact thing right now. Thank you for this and your previous article. After being in leadership for about 3.5 years (Director/Sr. Director), I am tired, burned out and not happy. I am rebuilding my technical skills and going back down the “food chain”. It is definitely rough, but I realized that I need that sense of building. I have done great things as a leader (built great teams, products etc)., but the same sense of accomplishment was not there for me. Knowing your personality as you mentioned is spot on. I also appreciated that you said engineers who spend time in management, are usually good and rare. It gave me motivation. Thank you, I am going to read and re-read these articles over the next few weeks, daily 🙂

    Liked by 2 people

  7. What an amazing article. Most if not all of what you said resonated with me, and are unspoken truths that I wish more people paid attention to.

    The amount of unhappy people 10 years into their dev career is ridiculously high, because content like this isn’t common knowledge enough.

    I will share your article with passion! Please keep writing.

    Like

  8. Very nice article Charity. I have been switching between management and IC roles for that feeling of shipping / writing code. It does give that sense of accomplishment and completion. So being able to do things that really don’t get in the way of the team or doing things that no one wants to but are still important seem to be great options to stay relevant. Thank you for sharing this.

    Liked by 1 person

  9. Miguel R says:

    Oh wow! I was so frustrated for a long time with performing a not so stellar role in a management position and saw it as a huge personal failure. I rationalized that my experience was going to be useful in another, more technical role, but I only saw it only as learning from a “false step” in my career.

    The “pendulum vs. ladder” metaphor helps me put a whole new perspective on this, I need to stop seeing my experience as a false step, and instead, a perfectly fitting career choice with many advantages and power. Seriously, thanks for this article.

    Liked by 1 person

  10. Pat says:

    Thank you so much for both articles, Charity! They are spot on and reflect my situation precisely. My line managers always recommend me to go into “general management”. It is tempting, bcs it is the only option to “evolve” in many traditional companies in Europe. In such companies, going up the ladder is the only career path available. It is also the only way to increase your salary, which becomes a more important aspect if you have to provide for a family…

    Like

  11. This article is ⭐️⭐️⭐️⭐️⭐️! Thank you so much for writing it. I will be sharing it often and definitely will be writing a similar one for the Product Management track where the allure of not separating individual contributor work (managing a product and guiding a cross-functional team executing on it) from managerial work (actually managing people) is even bigger because of title misnomers.

    Like

  12. mozingod says:

    Just wanted to let you know these articles were a fantastic read, and at a perfect time for me. Thanks so much for taking the time and energy to put them out 🙂

    Like

  13. Kannan says:

    Very nice article 👍👍, you covered both sides extremely well. I faced this 10 years ago (and still face it now and then). I decided then to stick with engineering thinking that an engineer can become a manager anytime with much less pain but the other way is very hard or not possible depending on how far one has gone.

    Liked by 1 person

  14. This was a terrific article, and echos some of the reasons I pushed against going into management for a long time. I thought I had contemplated the move very carefully, but even afterward I learned some of the other things that you highlighted. Especially around the idea that it takes a while to get your rhythm (which I thought I knew, but not the extent).

    However, the organizational leader track is very bleak in this post. Do you know anyone who has chosen that track that hasn’t regretted it?

    Like

    1. Yes, I do know some people who love it. Not nearly as many as thought they would. And they are strange creatures. 🙂

      It’s not all bleak. If you love meetings and people, and can derive happiness from empowering others, and have a robust ability to absorb criticism and feedback without taking it personally, maybe upper management is for you. It’s a combination rarely found among engineers though.

      Like

  15. This post both resonated with and challenged me and I hope you’ll indulge me telling some of my story.

    I’ve been in software for 30 years now. I entered the biz in 1989 hoping to write code but thanks to a recession I was lucky to get a job writing software manuals, a job that seems positively quaint now. I turned out to be really good at it and did it for 10 years, rising to management. Then I itched for new challenges and wanted to move closer to my technical roots. So I landed a job as a tester. I turned out to be pretty good at it and and soon rose to test manager and later test director and did it for 17 years. Then I itched for new challenges (and watched test leadership roles dry up as modern methodologies and practices obviated the need for giant QA teams) and got an opportunity to lead engineers, in part because where I live and work there’s a deep shortage of mid-level engineering leaders. I’ve been doing that for a few years now, first at a startup that didn’t work out and now at a big established company. Today I’m a frontline manager of engineers.

    I haven’t shipped production code in … I’ve lost count of the years. Call it 10. And it was all test automation code anyway.

    My inability to even fix a simple bug is a hindrance, full stop. But what I bring to the table is 20 solid years now of knowing how to build teams that are better than the sums of their parts, and who reliably ship working software. The engineers who’ve worked for me tell me that we deliver better since you’re here, things make more sense, and you take good care of us, and in these ways you’re vastly better than any other engineering manager I’ve ever reported to. But I wish you could more directly help me be a better engineer; clearly you just can’t.

    We all figure out our careers in realtime. Sometimes we have the tiger by the tail and sometimes the tiger has us in its mouth. Here I am leading engineers as a non-engineer. I keep learning. I wonder whether I should try to fix some bugs, or whether I should just keep doubling down on being a good leader.

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s