My father was a professor of economics. After he completed his PhD in his late twenties, he started teaching at one university, got tenure at that university, and walked out forty-some years later into retirement. Working in technology, that sounds like a fairytale.
There are very few software companies with a forty-year track record, and even fewer folks whose forty-year career consisted of one employer. There used to be a meme that many engineers spent either one or four years at each company to maximize their equity grants and then bounced on to the next. If that ever happened, it certainly isn’t common behavior for folks who aspire towards or reach Staff-plus roles.
Instead, generally those folks stay, and are rewarded for staying, at a given company as long as the circumstances support their success. If those circumstances change, they tend to either leave shortly thereafter or spend a while burning out and then leave after exhausting their emotional reservoir.
It takes years to build the visibility and social credibility to get promoted from a Senior Engineer role to a Staff-plus role, which makes it very difficult to walk away if you feel like you’re just one hump away from the promotion. Leaving, it can feel like, means starting over from scratch.
Then again, as described by Duretti Hirpa and Keavy McMinn, it’s common for folks to attain their first Staff-plus title by joining a new company. Even with all your internal credibility, sometimes leaving is the most effective path forward.
What’s the right decision for you?
Before going further, I want to recognize two very different job-switching experiences: one of privileged flexibility and another of rigid constraints. Your residency might depend on a work-sponsored visa. You might be supporting an extended family. You might be constrained to a geographical area with few employers. This advice focuses on the former circumstances, which are more common circumstances for someone who’s deep enough into a technology career to pursue a Staff role. You should absolutely discount it to the extent this doesn’t reflect your circumstances.
Why leaving works
The company that knows your strengths the best is your current company, and they are the company most likely to give you a Staff-plus role. However, actually awarding the role depends on so many circumstantial concerns, that this isn’t how it works out in practice.
If your current team is very senior, it may be hard to justify your impact at the Staff engineer level because it’s being attributed to your peers. Your manager might have a limited budget that doesn’t have room for another Staff engineer. You might lack an internal sponsor. There simply might not be the need for an additional Staff engineer at your company. Any of these can mean that while you ought to be promoted, your current company won’t.
Conversely, when you interview for new roles, you can simply keep interviewing until you find a company that’s able to grant the title. The interview process often brings an automatic sponsor with it -- the hiring manager -- whose incentives will never be more aligned with yours than in the interview process.
The technical interviews are an inconsistent and unreliable predictor of success, which is bad for the industry and bad for companies, but works in your favor if you’re set on attaining a Staff-plus role and are willing to conduct a broad search. Interviewing creates the opportunity to play “bias arbitrage”, finding a company that values your particular brand of bullshit disproportionately. That might be a company that values folks with conference speaking visibility, your experience designing APIs, or your PhD thesis on compilers.
Similarly, sometimes you’ll get into a rut at a company where your reputation is preventing forward progress. Perhaps you’ve tagged “difficult” after flagging inclusion issues. Maybe you embarrassed an influential Director at lunch and they’re blocking your promotion. A new company lets you leave that baggage behind.
Yeah, of course, it’s always an open question whether you can really leave anything behind you in the tech industry. It can feel a bit cliquey at times. If you’ve worked in tech hubs, at larger companies, and for more than ten years, then you almost certainly have mutual connections with the folks interviewing you.
If you have a bad run at a company, maybe your manager was a bully or maybe you were going through a challenging period in your own life, it can feel like a cloud poisoning your future prospects. That said, much like the interview process in general, references and backchannel reference checks are deeply random. If you need any further evidence of that, look to the serial harassers who continue to get hired job after job at prominent companies.
Things to try before leaving
If you’re planning to leave due to lack of interest, excitement, support or opportunity, it’s worthwhile to at least explore the internal waters first. This lets you carry your internal network with you while still getting many of the advantages of switching companies. Depending on your company’s size and growth rate this might not be an option for you, but there are some folks who switch roles every two-to-three years within the same parent company, and find that an effective way to remain engaged and learning.
On the other hand, if you’re considering leaving due to burnout or exhaustion, it’s sometimes possible to negotiate a paid or unpaid sabbatical where you can take a few months recharging yourself, often in conjunction with switching internal roles. This is more common at larger companies. (In case you were wondering, no your coworkers taking parental leave is not “on sabbatical” or “on vacation.”)
Leaving without a job
Speaking of burnout, if you’re particularly burned out, it’s worth considering leaving your job without another job lined up. There’s a fairly simple checklist to determine if this is a good option for you:
- Does your visa support this?
- Are you financially secure for at least a year without working?
- Do you work in a high-density job market, remotely, or are you flexible on where your next job is?
- Do you interview well?
- Could you articulate a coherent narrative to someone asking you why you left without a job lined up?
- Are there folks at your previous company who can provide positive references?
If all of those are true, then I don’t know anyone who regrets taking a sabbatical. However, bear in mind that it’s only the folks who took six-month-plus sabbaticals who felt reborn by the experience. Folks taking shorter stints have appreciated them but often come back only partially restored.
Taking the plunge
If you’re almost at the Staff promotion in your current company, there is absolutely another company out there who will give you the Staff title. Whether or not you’ll enjoy working there or be supported after getting there, that’s a lot harder to predetermine. If your internal reputation is damaged or if you’ve been repeatedly on the cusp of promotion but victim to a moving criteria line, then you should seriously consider switching roles if the title is important to you -- at some point you have to hear what your current company is telling you.
Conversely, if you’re happy in your current role outside of the title, consider if you can be more intentional about pursuing your promotion rather than leaving. Many folks hit a rut in their promotion path to Staff-plus, and using techniques like the promotion packet can help you get unstuck. If you’ve used all the approaches, taken your self-development seriously, and still can’t get there -- it’s probably time to change.
That said, it’s easy to overthink these things. Few folks tell their decade-past story of staying at or leaving some job.