Ask HN: Is long-term employee commitment to the same company still appreciated?

72 points by ajdoingnothing ↗ HN
I often times see a Linkedin/resume of a senior engineer where they have jumped ship every couple of months, staying max <=2 years in every company they have worked at. Imho, I always thought this was a red flag during the hiring process at a new company, as it doesn't show any long term commitment. I can understand junior/graduate employees jumping ship often in the beginning, but for +10 YOE software engineers, I find it odd.

In contrast, staying too long at a single place could make it seem like a developer doesn't want any changes.

What is your opinion on this?

91 comments

[ 6.1 ms ] story [ 150 ms ] thread
Why would anyone have a long term commitment to a company that doesn't reciprocate?
Jumping ship every couple of months is concerning, but as long as you're not doing that better to do what works for you rather than worrying about what might look better to a hypothetical future employer. The main problem with staying at one place too long is getting compensated fairly
Most companies are the same and have very little differentiators. Working at Google or Facebook is the same. So jumping around makes sense since that improves salary a lot more than staying put.

Every now and then you do find a company which has no alternatives like SpaceX or Renaissance Technologies or Steam. People don't leave those easily.

The only thing that modern day companies value is decreased expenses so if someone has been with the same company for 5+ years it's very likely they are underpaid.
There is no right or wrong answer but I personally do prefer to see some stability at least at 1-2 companies if you are senior. Reason is that unless you have spent at least 2-3 years at one company/team, you haven't come across bad stuff like tech debt, things becoming more complex/stale, data challenges, version/compatibility issues etc etc. If you keep jumping ship every 1-2 years, it tells me you have never worked on those challenging/boring issues and I wouldn't want you on my team.

It is much easier to work on shiny stuff and jump ship than taking ownership of crappy stuff. Remember, what is shiny initially can become crappy over time and I want engineers who have been through all of it. Not just the good parts.

> bad stuff like tech debt, things becoming more complex/stale, data challenges, version/compatibility issues etc

You are missing the (most common) case that those bad stuff are already there when you join the new company. Switching jobs doesn't automatically mean starting from a clean slate.

Yes that is a good point. But my overall point remains. I ideally want to see a Senior Candidate gone through the entire lifecycle.
"The grass is never greener, it's just different"
But usually you won't be put on the worst and most difficult pieces from the start at a new company.
At that point you’re cleaning up other people’s mistakes, which is a very different beast than having to clean up your own.
Still possible to learn from other people's errors. Also I think these kinds of messes always have the same history. Lots of time pressure, technical debt was ignored... On the upside when being a bit more senior it's much more likely management actually listens to requests to keep technical debt in check

The good part of changing jobs is you get to see actually a lot of bad and good stuff, often even at the same project.

It is particularly informative to suffer because of a dumb decision you made 2 years ago
Yes. Painful but informative.
Part of being a highly experienced software engineer is being able to clean up the mess that the previous person made.
Finanically, it's probably a bad move. But I am happy at my current job (4th year in) and I'm getting steady promotions and progress. Over the years my impact increased dramatically and I don't think I would've done anything as significant if I left by end of my second year.

I don't see a person jumping ship every 2 years as a liability, as long as they onboard quickly and get their job done. It's always great to retain more knowledge but we move on if it doesn't.

For future employers, what have you done in the many years being in one place? Can you show career progression, taking on more responsibilities (going upwards) or wearing more hats (going outwards) ?

Those who job hop every 2-3yrs do so (usually) for career advancement and nice pay bumps along the way. The salary bumps are unlikely to match if they stayed at one place.

Well, depends. Are you asking if it’s appreciated by the same company or by other recruiters/companies? Being at the same company 20 years (in a few months actually), I think that yes, commitment and “loyalty” are appreciated. I’ve had questions from recruiters asking me why I've stayed that long in my current company and I’ve heard good comments from others about how I stayed and climbed through internal positions. I have to admit that if you stay many years at the same company, you’re going to lose money, but it all comes down to balancing: amount of work/personal time/money/career goals.
Appreciated in the form of good feelings from your manager and teammates, yes. Appreciated in terms of financial remuneration? Less likely.
I’ve tremendously increased my salary, WLB and quality of work life by jumping every 3-4 years. Maybe if my junior roles had provided me with more of that earlier on, I would have been more inclined to stick around.
A max of two years over a career of some length (so, presuming there are numerous shorter entries) seems pretty short to me, though two years rates as perfectly respectable tour of duty. On the other hand, by three years, I stop issuing any credit for the marginal year. At extremely long tenures I'll be curious to see if the candidate appears stunted for having operated in one bureaucracy for so long.

Though, "appreciation" has nothing to do with it, it's really about the somewhat fixed overheads of integration, de-integration, and re-hiring. My sensibilities would be different if costs were higher (desiring longer tenures) or lower (more relaxed on even shorter tenures).

I still consider this when hiring. I don't necessarily see a 10 year tenancy as major bonus points but do consider a flurry of short full time gigs to be a red flag. It's not about loyalty so much as that often it can take 6+ months to really get productive amongst an existing codebase and culture. That's also the point where the developer might really start to drive on more intense projects. If they're always leaving before this point that's great for them but not so much for us.
During my last job search, my long tenure (almost a decade) in a single role was considered extremely valuable. I was most attractive to companies looking to hire someone who would become a resident expert. On the other hand, I've had to make it known to my current employer that they need to pay me well in order for me to stay for a long time.

IMO: Tenure at a company should increase with experience. It's hard to do monumental software engineering in a short stint; but there are often good reasons to "get in and get out" too.

IE, it's good for someone to have shorter tenures early in their career, as they're still understanding the industry. Very few of us are lucky enough to have an entry-level job that we want to turn into our career. Also, it's really hard for a candidate and company to mutually evaluate each other in the interview process, so short stints for an experienced software engineer will happen.

I wouldn't jump to the conclusion that someone who stays in a job for a long time is underpaid or doesn't like change: These are the people who often develop into the archetypes described here: https://lethain.com/staff-engineer-archetypes/ (https://news.ycombinator.com/item?id=33112915)

I had the exact same experience in my recent job search. The interview process was also wildly different than most, just a few mostly casual conversations.

All of that said, I probably left a ton of money on the table by not grinding for money in my 20s.

> On the other hand, I've had to make it known to my current employer that they need to pay me well in order for me to stay for a long time.

This is the primary problem. American companies aren't willing to give 100% raises year after year to keep up with their competition and retain their employees.

You often can't tell from a CV why the person moved on. Did the company they worked for go down? Did some employer offer them a deal they couldn't refuse? You can't assume they just decided to stay looking for the next thing of their of accord. These kinds of things happen all the time to people, so just looking at the lengths didn't tell you much.
I stayed at one of my jobs for 8-10 years.

There might be a company out there that appreciates it. There might be a company out there that rewards it. I haven't experienced either of those things.

I was convinced by everyone else's horror stories that my job was so great, and I wouldn't find a better one. I should have changed jobs more often. Every 2 years like you say, would have been about right.

As I see it, you need to factor in the chain of employers too.

For example, its easy to be a "dead wood" employee at a large employer. You can stay there as long as you like, and get away with not doing much - in relative terms, I'm not talking literally twiddling your thumbs as the years pass by !

Meanwhile long service at SME size companies is worth more because there is nowhere to hide.

On the short side of the spectrum, absolutely without any doubt whatsoever, anything less than 2/3 years pattern is a MAJOR alarm bell.

Why ?

Because less than 12 months basically means you keep getting fired on your probation periods and you probably should not be touched with a bargepole.

Less than 24 months and it sort of smells like itchy feet syndrome.

So (IMHO) 3–5 years is sort of the sweet spot in tech. It shows you have a degree of loyalty, but also want to keep one eye on career progression - assuming your CV clearly reads like career progression, not ship jumping !

I have trouble communicating to my parents, who are in their 80s and worked for the same company for 35 years, that me switching jobs every couple years is the norm for my industry, and not a sign that I'm a troublemaker, or anything like that.

A lot of people switch jobs frequently because they feel it's the only way to advance, or at least the most cost efficient way. That's not the case for me: I would love to find a place to work for the next 20 years, and if they give me cost-of-living increases and the occasional attaboy raise, I'm not asking for more than that. I make plenty of money, am not looking for a fancy title, and run the other direction from leadership positions. I don't even care about "solving interesting problems at scale" or whatever people say they're chasing.

BUT, the reality is, I haven't found a good company — one where I think I'd like to stick around due to culture and stability and so on — and in this industry we have the option to move on without penalty. So, why not do that, until the right company shows up?

I've been inside of 2 such companies. Over time, they both changed (for the worst) and I left (along with many others). My tenure in both was 6.5 years and 8.5 years, respectively. If I had had any degree of confidence that management could or would have fixed the culture problems the organizations were experiencing, I'd have stuck it out.

In fact, in the case of the second employer, that actually did happen, and I stayed specifically because I thought that management could fix the issues and that I could help them. Both of those things were true, and because I was helping us move in the "right" direction, I experienced a ton of professional growth, but then the culture shifted again (we were acquired) and the place simply became inhospitable. I was part of the initial exodus of engineers who left. I've heard from colleagues who have remained that ~50% of engineering has turned over in the last year.

I suspect that I will have some short tenures (1-2 years max) on my resume now, as I try to navigate my way through to another long tenure employer.

A "senior" engineer who has moved 5 times in 10 years staying less than 2 years in any company has five times the experience of a junior engineer. So, they have no understanding of making longer term decisions and seeing things through. Absolutely a red flag if you want to do something longer term. A few < 2 year stints are OK, mistakes happen. Serial jumping is bad and was only possible in an environment of zero interest, free capital madness from 2009 to 2021.

On the other hand, if you just want something done in a short term frame, might not be a bad deal. Don't pay "senior" salary or put them on strategic longer term projects, they are a very experienced junior engineer.

I disagree.

2 years is often enough to see whether design/approach has failed and what were the implications.

Unless you're doing very specific things like programming language design, operating system design, then why would you need e.g half of decade to figure out what went wrong?

So, whether X years is enough is dependent on what are you doing.

SpaceX? probably it isn't enough,

web dev? probably it is.

Yeah, but insights occur in parallel. Let's assume that you get the moment of insight 2 years after a initiative launch and you launch one new initiative every 6 months. After 2 years, you've seen one insight or 0.5 insights/year. After 3 years, you've seen 3 insights or 1 insight/year. After 5 years, 7 insights and 1.4 insights/year. 10 years, 17 insights, 1.7 insights/year.

The rate asymptotes but there's still significant benefit for a tenure of 3 - 5 years.

> So, they have no understanding of making longer term decisions

Disagree. Coming into a new company and seeing the results of decisions that were made before you started can be quite informative.

If companies want tenure, they have to pay up. But they don’t pay for it, because they don’t want it.

Think about it from the owners’ POV: healthy turnover gives you a constant stress test for the system that is your business. You need systems that are able to hire, ramp up, and train people.

Sure, you need a few key people that keep lots of detail and skill in their heads, but relying on that at scale is no way to run a business.

You give owners more credit than they are due. There’s no planning there, it’s all a happy little accident.

Also, let’s tear down our manufacturing plant and rebuild it from scratch every 2 years just to make sure we can.

> A "senior" engineer who has moved 5 times in 10 years staying less than 2 years in any company has five times the experience of a junior engineer.

This doesn't make sense, new jobs don't reset your level. There's a difference between the responsibilities you get in your first year as a junior and the first year at a new company as an experienced hire.

Hopping around is a red flag for our hiring process across every role (especially enterprise sales, which is my area of expertise). There are lots of little things it can indicate, all of which have legitimate exceptions that the folks on HN can point out. Ultimately a judgment call on your part. For every rule, there are many exceptions. Choose wisely.
Considering an average lifespan of a human, spending 1-2 years on somebody else's dream is more than enough.
No, I don't believe it is. If you stay you won't be more appreciated, get a higher salary or other benefits.

I have rather seen the opposite. Each time I have switched companies I've always gotten big pay rise. If I wouldn't I would still be earning like half of what I make today.

The issue is that companies rewards moving every 2 years and as long as that is the case, that is probably what I will do.