HACKER Q&A
📣 throwawaysleep

Is turnover of staff actually considered a problem?


It is well known that the best way to get a raise in software is to switch jobs. It is well known that the market is hot. It is well known that tech tenures keep falling.

So why is nothing done about it? Why does the best way to get a raise remain switching?

All I can conclude from the lack of corporate action on turnover is that we are pretty interchangeable and domain knowledge and codebase knowledge aren't considered to be worth anything.

Corporate complains about knowledge loss, delays getting people started on the codebase, the cost of paying recruiters, etc, but their actions price all of that at $0.


  👤 lucozade Accepted Answer ✓
It's hard to generalise these things but I'll try anyway.

From a (large) corporate perspective, some turnover is fine. In fact, it can cause problems if it drops too low. It's hard to put an absolute figure on it but we find that below 10% or above 20%, for an extended period, causes problems. If it's too high you get the issues you describe. If it's too low you get stagnation, difficulties with promotions. That sort of thing.

Some organisations go so far as forcing some percentage to change annually. Typically that's around 10%. I don't subscribe to that approach personally but it's a result of the notion that turnover can be too low.

It's also not generally true that companies don't value domain knowledge. It might well be true they don't value it as much as you do but it's always been a significant factor in compensation decisions that I've been involved in. Codebase knowledge, on the other hand is usually a second order factor as best. Unless the codebase is "special": the Cobol general ledgers of this world.

Your point on switching companies as a good way of getting raises is valid though. There's a few things that underpin this. People tend to be sticky in their jobs, flipping is effort, and companies definitely (ab)use that fact. There are other factors. Hiring often occurs because something needs doing sooner rather than later. That opportunity cost can affect the calculus of hiring cost vs waiting cost.

Source: reasonably senior manager in a large corporation.


👤 mytailorisrich
Companies take action when they have to: Is turnover actually that high? Is there a spate of people suddenly leaving? If not they don't need to in effect give money away.

Companies also take targeted action is when someone signals they want to leave or are leaving. In my career, every time I did that my manager was suddenly able to "do something" in order to make me stay.

On the other hand, some companies do nothing about it, often simply because the company is not growing, and people keep leaving after a couple of years. This often leads to behaviours that worsen things: senior people tend to concentrate power and knowledge to themselves and people under them are disposable. A big red flag when interviewing is if the manager and most senior people have been there a very long time and people reporting to them only a couple of years: It means no growth, no opportunity, and they know people will not stay.


👤 tacostakohashi
If you switch jobs, you're bringing your (outside) experience and ideas to your new employer, and they're paying a premium for that.

You don't have outside experience to offer your current employer, so they're not paying for it.

It's not (just) that the current employer is being stingy, an employee is actually more valuable to the new employer than they are to the current employer in some circumstances.


👤 gary_0
Corporations only behave as logically as the people running them. Maybe the individuals making the decisions don't feel like turnover is a problem they can feasibly solve, so they just go along with it. Maybe the problems regarding turnover are hard to communicate up to higher management levels, so they rarely implement strategies to reduce it. Maybe most companies value making workers feel expendable more than they value low turnover, regardless of whether this is a sound (or even conscious) decision on the part of upper management.

👤 theshadowknows
One of my former bosses said “everyone is replaceable” whenever anyone left. Which is trueish I suppose. But when our director and sr analyst left within the same week and then I put in my two weeks they begged me to stay at least until the team was full again since at that point I was the sr most person on the team. I did not stay. Then later I learned the entirety of the rest of the team walked out in one day, as they had all coordinated new jobs together.

👤 softwaredoug
Sometimes there’s not _enough_ turnover. The teams get stuck in one way of doing things and don’t encounter innovative ideas or grow new skills that come from a new hires different experiences.

I’d also venture to say turnover was very low at the beginning of the pandemic, and a backlog of turnover is catching up to us.

Also in my experience the range of reasons why people leave jobs is extremely varied. It can be hard to pinpoint a pattern. Many people were burned out from Covid and want time not working. Some might have preferred working at the office. Others might preferred staying remote instead of coming back to an office. Money matters to some people. Other people care about their title, or what they get to work on. Some are taking advantage of a red hot job market. Some don’t want to work at a company that’s grown beyond their preferred size. Others just got a pay out and want something low key. Literally heard _all of these_ in the last few months.


👤 cableshaft
I think part of it is there's a distance between executives and the departments. They assume that if everything is currently working, there's enough redundancy in place, even if that's not the case at all and people have just been sticking around a bit too long for various life reasons.

I know in my department, it will only take two people leaving to effectively kill the department (myself being one of them), as there's no one else still here who knows enough about the software to support it (there's only four developers in the department, two being temporary help from an office in India)

And I'm interviewing right now, so soon they'll be down to one. How they thought they could get away without letting us train other people in the department for so long when we're supporting software that generates millions of dollars of revenue for large clients they don't want to piss off every year I don't know.

I pushed and asked for a raise for the past three years and have gotten none "Nothing we can do, times are tough right now." I'm sure they'll suddenly find something they can do once I leave, but then it's already too late.

They've even got several big development projects my bosses' boss is pushing for on the horizon, and still trying to do it without any hiring or knowledge transfer. It's idiotic. Large corporation too.

But I'm sure none of the executives knows this is the case with this department, especially since we're one of the smaller ones.

I already have stuck around three more years than I intended to. One of those years I was preparing for our wedding and too exhausted to make other life changes, then I wanted to relax for a few months, then right as I was starting to interview the pandemic came and I decided to stick with my safe and fully remote job a bit longer.

Sucks because if the department dies that will leave about 80 people in limbo (that's about how many non-technical people in the department right now), but I'm done fighting and failing to get more people in the department, and I'm not willing to keep supporting it anymore.


👤 austincheney
> It is well known that the best way to get a raise in software is to switch jobs.

When you are a junior developer (not talking about titles) there is nowhere to go but up and nothing to lose. You also have less skills and lower confidence.

As you get older these things reverse. Your priorities change. If you enjoy building things you no longer care as much about dicking around with tools like a trained monkey for mild increases in pay. That greatly alters the sorts of work you are willing to perform and how aggressively you are willing to fight for that shitty child-like work.

> So why is nothing done about it?

There is nothing to be done. Software is fully unregulated which means there is absolutely no baseline to qualify competence or experience. If prospective employers want to over spend on trend chasing tool jockeys then that’s their liability.


👤 decafninja
I find it interesting that at the early part of my career, prospective employers saw my long-ish tenures at previous companies as a plus.

Now unless you are in some super-prestigious company (i.e. FAANG, etc.) it seems long tenures are considered a bad thing, a mark of stagnation.


👤 giantg2
I think your overall take is pretty accurate. If it were really a problem, they would do something to address it.

My company said they expect much higher attrition than usual once they order everyone back to the office. They decided to do one thing to help reduce that percentage, which is to only be in the office 3 days and WFH the other 2. I assume that a lot more people would quit if we went back full time. There has been a lot of grumbling.


👤 arkitaip
Workers are seen as interchangable at many places. just look at Amazon, one of the most profitable and productive companies in history, that takes pride in how it wears down its employees using corporate language that I'm sure you're painfully familiar with. Because of this, they aren't going to give you a raise even if they have objective proof that competitors can recruit you with higher raise and other benefits. Again, even FAANGs with their near unlimited resources have been found guilty by the American legal system to conspire with each other to keep salaries down. These issues that conspire against workers aren't due to individual flawed companies or policies but principles and philosophies that are at the very core if how companies view their employees, especially in tech. From a company's point of view, suppressing salaries not only makes sense, it's deeply ingrained in the larger corporate hive mind that they are a part of.

TLDR companies really do not have your best in mind and what is best for them often means the worst outcome for you. So get that raise by switching employers; if the roles were reversed, your employer wouldn't think twice about it.


👤 raxxorrax
Depends. For the company it is mostly bad because people will think there are issues with the business itself.

Many companies have a high turnover in departments like sales, it but retain engineers for longer timeframes. Everytime designers and developers leave the company, you loose part of the knowledge. Even with the best knowledge management and documentation, that is a costly loss. Most companies don't have sensible knowledge management anyway. Of course sales also carries knowledge, but the field likes to play very competative as it seems and it seems to not be valued by sales management somehow.

I think regular switching is restricted to very large companies. Any other company does a lot to retain its staff, it would be too expensive otherwise.

But I think large companies cannot really offer anything else than money. I would consider high turnover a problem. I like my coleagues and don't want to see them exchanged constantly.

> So why is nothing done about it?

I think companies try. If you ask for more money, you may get it. A high entry salary helps for negotiation, but isn't a necessity.


👤 lostdog
lately, the major tech companies have been increasing their refresher grants to try to retain good people.

Startups have always structured their option grants to make it hard to leave. Of course, as people wise up that is making it harder for them to hire.

Unfortunately, companies always get more excited about hiring new people than retaining existing ones, so the constant job switching will continue.