How long do software engineers stay at a job? (2021)
developerpitstop.com
developerpitstop.com
They separate pay and performance. The assumption is that your performance is always at the top, or you wouldn't work there anymore. Pay is based on the most they think you can get when you leave. If they market is soaring, your pay will too.
When I was there I once got a 25% raise because that was what we had to pay to get new people into similar roles.
Sure they don't keep the highest performers but if they're not doing "rocket science" you don't need a rocket scientist.
A startup that started 1-2% band adjustments in 2016 probably pays half the market rate for the same talent in 2022.
The article calls out nearly 15%/job when switching vs 3%/yr from staying. A 12% gap adds up fast.
Can confirm, this is me - lack of skill and tied down.
"but taking less than market value for half a decade seems like a terrible career plan."
Been taking less than market value for over a decade.
Ironically they paid external consultants 3X the cost for skills they couldn’t keep internally.
https://developerpitstop.com/how-often-do-software-engineers...
That's silly.
At the top of what? Your current level? How do they determine which level you are at? They have levels, right, it's not a communist utopia where everyone, from the junior eng, to the SVP is equal.
How is that different from any other firm which has eng levels, but relatively narrow wage bands within those levels?
If you were to say that 'they always strive to pay top-of-market for <equivalent roles in other firms>', that would make more sense.
they have a "keeper test" that they use to determine who gets a severance package: basically, if your manager wouldn't fight for you to stay if you hypothetically told them you were leaving, you're at risk.
they run the company like a professional sports team
there are multiple books about their culture - it's quite different from the standard many-leveled hierarchy with strict wage bands
That doesn't answer the question. Do they have different levels of 'senior' engineer, or not? Presumably those levels have different expectations that employees are expected to meet.
Or is everyone expected to perform at the level of Jeff Dean, and is paid accordingly? Does a person leading a team of 8 get paid more? What if they are leading a group of teams, numbering 28 people?
This is just repackaged stack ranking.
AKA if you are an excellent developer in a team with equally excellent people you are at risk.
They're more demanding to _get_, I wouldn't say they're more demanding to do. At a FAANG there's also more scope for intra-company hops too. People frequently switch teams immediately after getting promoted.
The hyper-capitalist notion that anyone who only wants to work 40 hours a week lacks work ethic is perverse. Jeff Bezos, for example, is proud of his Original Thought that there is "no such thing as work-life balance".
Also, Amazon != all FAANG.
So while I'll trust that the statistics presented in the article are accurate, I'm not sure trying to target your personal career to match the statistics is wise.
Edit: I don't know how or why this is on the front page of HN. This seems like a super low traffic/low effort blog.
I agree, at the moment I'm writing this comment the post has only 8 points too. Isn't it a bit to low for the front page?
Every 3-4 years seems to indicate a better uptick in interest / offers in my experience. Otherwise the concern from many Hiring Managers is: I'm going to invest my time and effort (~6 mos) in training, and that will be lost very quickly.
In my view a promotion is every 3-4 years as well (although it can be faster) at the FAANG companies. If someone is able to get a promo, that is the best time to start looking. It establishes that the individual is on an upwards trajectory so it makes it easier to hire them and convince others if the company is committee based on hiring decisions.
This should lead to a promotion within ~2y, less than 3y; if that does not happen, I start looking for either a new team or new job all together.
(In some companies interviewing for another team requires the same amount of effort of interviewing outside. I usually pursue both.)
If I don't get the promotion, it usually means that either the team I work with does not have enough impactful work to justify a promotion, or manager is not interested (capable) in sponsoring for one.
Either way, I have reasons to move on.
Junior to mid level in 2 years is easy.
Mid level to senior in 2 years is doable. It would definitely be considered fast in most big tech.
Senior to Staff in 2 years is not gonna happen. I'm not saying it's impossible, but it's probably extremely rare.
I agree with the concept of optimizing for growth and learning in your current role, but people should also be aware that getting to the next level is aprox. exponentially harder the further up you go.
I also find very important to discuss the promotion with your manager in 1-1 and be clear that's what you are aiming for. Just to set the right expectations.
Staff to Senior Staff is totally doable in ~3y.
I say this, because in my 20+ year career, this has preceded most of my job changes:
1. A major business event: usually acquisition, or one time, a CEO just quitting outright
2. A major management restructuring from 1 week to 12 months
3. New managers try to make their mark and trigger death marches or just erode confidence
4. I leave and get a decent pay bump and realize my mental health is better
I actually consider myself to be pretty conservative about job changes. I'm at about 3.5 years per position. I've probably left money on the table too.
I'm job hopping as soon it's beneficial to me. You can deal with the loss of my velocity I'm sure.
My advice is to make sure that your manager knows this. It's a business relationship after all.
If the guys hoped a job every 6 month for the past 4 years then they've been hired _every_ _single_ _time_ they hopped. People hire job hoppers. If they didn't then they'd (by definition) stop job hopping. Sure maybe after the 10th hop it'll catch up to you but by that point (in this scenario) you've had the equivilant of 10 14.8% raises which IIUC is a total ~404.6% raise. So you're now "stuck" at a job making 4x what you did 5 years ago.
In this market there are always companies who will hire someone who job hops, but that doesn't make it a good idea.
10 raises at 14.8% each hop is 1.148^10 or 3.976 not 4.046
But still, you end up at about 4x
However under normal circumstances job hopping will plateau pretty quickly, and if you don't have a promotion it starts to look pretty bad to hiring managers. I certainly would never hire a staff engineer who was not promoted to L6 equivalent in a company with a strong tech reputation.
Always switch jobs before your project goes live and becomes legacy. (Legacy, at best. At worst, it goes live and fails embarrassingly. That's bad, if you're still there.)
If you joined with a 4-year vesting package when the stock price was $10 and now it has risen to $30, you will probably be taking a big pay cut by leaving after 3 years.
You said staying at a job for longer than 3 years is committing yourself to wage depression. That's not always true. If you have been at a company for 3 years and were given a 4-year grant at a $10 stock price, but today the stock price is $50, it's unlikely you'll find better compensation by leaving and should probably just stay for year #4.
-- The message I would write to myself at the beginning of my career.
This ... seems a bit extreme. I guess if you're doing something simple.
2. It sounds like this is from polling people about time at their current job rather than how long it took to leave their previous job? With how fast the field keeps growing, how much skew is there from recent entrants still at their first job?
Culture plays an important role in keeping the people, it's not always about the money.
Absolutely.
I was at my previous employer for seven years, mainly due to the fantastic culture.
In 2020 that company took a $45M series A investment that rotted the culture of the company from the inside out.
Today, the culture that remains at this company doesn’t reflect what kept me at the company, and most who were integral to the culture are no longer with the company.
It was good while it lasted.
Also, if you can't find another job right now you don't have to quit your current job so the downside is really the experience of interviewing.
I’m sure it’s different at different companies, but I’d be interested in hearing what experiences the HN community has had with that situation.