To make workers replaceable is to rely mostly on the knowledge you can reasonably expect to regain on rehire. Remember: Management (up to owner-management) are also workers, so running some kind of special culture-and-knowledge preserving über-organization is predicated on somehow retaining the structures that support and maintain this secret sauce. Military services around the world have researched this extensively (for obvious reasons), then again, we refer to a well-seasoned and experienced practitioner as a veteran. Veterans are invaluable in military service, as they are in any other endeavor. Trade them off against ease-of-management at your own peril.
I never said that experience isn't valuable. The question was whether experience at a particular company was more valuable than experience outside of it. Every time you hire a senior engineer from another company you learn a bit of their secret sauce, making your company stronger. Participating in that knowledge trade is extremely valuable, and without churn you will be left out as most of your engineers will have mostly experience from your company, that is a really bad thing.
Not there either. You mess up more in the beginning. Experienced workers have better flow.
Fortunately, we developed systems of writing, so that the limit to this relearning is higher now than a few millennia ago. (Society does the ultimate “rehiring” continually.)
I think that far too many companies (including my own) rely much too heavily on “things that are in people’s heads” and don’t spend enough time and money on making the company knowledge effectively outlast any individual employee, making it easier to put the essential knowledge into new people’s heads.
Society doesn’t rediscover pi, e, I, and calculus from first principles every half-century, but rather we’ve instituted that knowledge into books and mechanisms of teaching.
And yet I’ve worked at software companies that will go to great lengths to avoid attrition. For exactly the reasons mentioned in the post, they encourage people to move to other teams to build up the inter connectedness of teams while keeping employees motivated and engaged. In fact, even if you weren’t looking HR would reach out and ask if you were interested in looking at other teams within the company because you had been in your current team for 18 months.
Side note I don’t know if I’ve just been lucky but I can’t relate to this talk of “companies are evil and act maliciously against their employees at every opportunity”. That hasn’t been true in my experience.
I think this heavily depends on the type of industry you work in. In some industries the abuse is so normalised that everyone takes it for granted.
In retail you have the example of companies scheduling workers just under the number of hours at which they'd qualify for insurance or other benefits.
Hospitality work often expects you to be available any time they're short staffed, if you aren't you'll probably find your shifts cut.
On the white collar side last year we heard about junior analysts at Goldman Sachs being made to work 100+ hour weeks[1].
Game development is widely avoided due to a similarly toxic work culture, where you'll often be forced to "crunch" for long periods of time[2]. The worse places will also lay you off after the game has shipped.
At the software companies I've worked the biggest issues have been terrible raises for current employees, to the point that graduates were being paid the same or much more than people with 3+ years of experience.
[1] https://www.theguardian.com/business/2021/mar/18/group-of-ju... [2] https://www.polygon.com/2020/12/4/21575914/cyberpunk-2077-re...
I think there’s a combination of some people with really bad experiences and a larger group of people that exaggerate.
That said, it’s a fact of the contemporary employment market that most companies do compensation such that sticking around in one place means making significantly less money then moving around all the time. Companies bring new people in at higher comp but don’t push the comp of existing people doing those jobs to the same level even if those existing employees are performing well. I don’t think this is evil or malicious but it certainly feels hostile.
That isn't to avoid churn, that is to have more people around in general. If you leave your old team it means you no longer use your knowledge, the important part is to have engineers around, not to have the same engineers working on the same tasks.
For example, Google encourages churn by making it really easy to move to other teams in other areas. You don't talk to your old team again, so that is effectively the same thing as you leaving the company and them getting a new engineer, ie for the teams it is equivalent to churn.
A real statistic against your claim is one of the highest predictors of defects in a code base is whether or not the original team is still working on it.
Defects is a metric businesses doesn't care much about. If you have a good team that can create products customers wants, then it is better to have them keep making new products rather than maintain what they already have, then you can have less productive engineers perform maintenance, defects might go up but this way you will have way more products which businesses seems to care more about.
You would have a point if maintenance was something companies cared deeply about, but they don't. They want new products, and company specific knowledge doesn't seem to be very valuable there.
Don't get me wrong, change is good but too much change is just too much to handle sometimes.
Management really tried to be accommodating, transparent, and woke in their treatment of employees but the work load was just too much. One sprint into the next without any breath in between.
Tenure averaged about one year on the team. The project has been going without release for three or four years.
The only people left are juniors (college grads basically) who don't realize how bad it is wrecking their health.
The only thing keeping their main SME dev is the generous PTO. She is always out sick, randomly. A lot of it was obviously the stress. She would always let out this lengthy loud exhale on calls and in grooming sessions. When I started doing that I began the exit.
Anyways, hand over in high turnover places is shitty anyways, since they are shitty places to work at.
However, I'd submit that it doesn't matter how good the docs and process are, you're going to lose a lot when an engineer who has been at a company for, say, 3+ years leaves:
* historical knowledge * personal relationships * intuition about the systems
Some things you can't get except by putting in the time.
You don't develop the ability to fly by placing yourself in positions that require flying...
Most companies that have lots of attrition have bad processes in place and are suffering due to attrition, although I think there are some companies that are developed enough to benefit from attrition like you described.
However, I don't think that it makes any difference.
The entire industry has now shaped itself into a transient, mercenary, loyalty-free community.
It will take a long time to change that.
A lot of the trouble is the "You go first." mentality. Who will be the one to stay at a company for many years, getting only 3% raises; regardless of their performance, as their company's CEO keeps raking in millions of dollars, and lives a lavish, high-profile life?
Who will be the company that starts to treat their employees in a manner that proves they are worth staying at? This may mean higher pay raises, the CEO taking some of their profit (and the shareholders and VCs), and sharing it with the employees. Letting employees unionize, etc.
As people or companies are doing that, their competitors are running riot; acting as selfish, destructive and greedy as always. Many times, the competitors can crush the people trying to do the right thing.
So that generally means that governments need to step in, and help the people and companies to do the right thing.
As everyone knows, that's pretty much a non-starter, these days.
The tech industry makes crazy money. When an industry makes money like that, everyone "looks the other way," at truly awful behavior. The finance industry has been like that, for decades. Whereas industries that don't make much money, like public education, social services, etc., are regulated up the wazoo, with an iron fist.
I was a manager for over 25 years. I feel that I was a good one. My employees seemed to agree. I kept many of them on board for decades, and these were folks that could walk out the door, and get huge pay raises (my company paid "competitive" salaries). I certainly never made that much, compared to what people are doing, these days. many new hires out of college make more than I ever did, as a senior manager.
I worked hard at being a good manager; and that often meant working around a company with a fairly rapacious HR policy (HR was run by lawyers). Most folks here, would (and have) sneer at me, for staying so long, and for doing the things that I needed to do, in order to be a good manager.
In my case, it was personal Integrity thing. I have a really stringent Personal Code. I know that's unusual, and we can't expect it from most managers.
Companies destroyed employee loyalty - by letting people go while paying bonuses to executives, by giving 3% raises while offering way higher salaries to new hires, by saying "we are a family here" only when they need employees to make sacrifices.
From the perspective of an engineering manager, attrition sucks. Whenever a season engineer leaves my team, I dread the next couple of weeks, because there's a chance others will follow. The hiring and onboarding is draining and often slows down the whole team for months. But whenever someone tells me they're leaving, I tell them I understand it. They need to think about their own career.
Employers destroyed the loyalty and they need to fix it.
I agree. I don't think that there's any incentive to do that, though.
Employees used to get pensions, have reasonable work hours, a reliable schedule and could afford to have a parent stay home in their 3-4 bedroom house on an acre.
When all that goes away and I have to work harder for less than my parents got then what is the point of being loyal to psychopathic companies with excruciatingly well documented histories of treating employees like interchangeable chattel? Loyalty ain’t gonna give these monsters any pause when they put the squeeze on me and the other numbers on their screen while they fantasize about how to blow their ill gotten gains.
But I feel that the for-profit aspect applies both ways: if the company is going to work to maximize profits, why shouldn't I do the same? If another company is offering me a substantially higher salary than I would get with a normal raise, then why shouldn't I at least consider it? The company wouldn't hesitate to fire me off if they felt I was underperforming.
The only argument I can see for loyalty (and only kind of) is if you work for a non-profit, or something run on a finite research grant or something. At that point, you could argue that loyalty isn't naive as the work itself is more the goal than the profit motive.
Of course, companies know this and use it as one of the many tools to suppress wages.
If the author's premise is correct, there should be a lot of money to be made in retaining talent. Some of that should filter down to more than 3% raises.
So if you believe in humans as rational economic actors, there is "$20 bills lying on the street" if you build a tech company that hires, increases comp, and retains, rather than the current model of hire, churn, poach.
I realize that double-digit raises at the same company is a big culture shift, but I've seen it done. If everyone benefits, why wouldn't it happen?
People aren't rational actors in the sense of "they aim for the objectively best action given a goal" - we generally aim to minimise risk, prefer things that are simple, and prefer doing what everybody else is doing. Homo economicus isn't even used in modern economics let alone being anywhere near to reality.
Most companies aren't as good at using their retained talent to make money.
1) They're not.
2) Even if they were, it may be the case they are short-term biased, meaning they're willing to forgo $20 tomorrow for $10 today.
> The entire industry has now shaped itself into a transient, mercenary, loyalty-free community.
This is sadly inevitable and it's a classic example of a race to the bottom and EXACTLY the thing you said: "you go first". As a contractor myself, I was effectively forced into being a contractor and not a loyal employee by the virtue of being screwed over many times. I learned to always shop around for the next gig while the current one is still going -- not because I love that, I hate it with all my soul, but because I have to protect myself and my family.
I was loyal throughout most of my 20-year career. I ignored my family, I ignored my own health even, I saved companies on the brink and only ever felt a pat on the back on the company's Christmas party, and a single 500 EUR bonus (if even that). And something similar happened several times, not just one.
One day you get seriously sick and you need a safety net which you of course don't have. It changes your perspective DRAMATICALLY.
---
WORK FOR YOURSELF regardless of where you are or what is written in your contract. You are your own top priority. Invest in contacts. Talk to people and don't assume that a conversation is useless. Just enjoy talking with people. You'll both have fun and will have the nebulous possibility of somebody calling you 5 years down the line.
I don't leech off of companies. They leech off of me. I am giving them only as much as they give me in terms of money and work-life balance and stress(-free) environment. I don't go an inch over that anymore.
You're right!
Competition between management teams for investment ensures that, absent some other force constraining competition, it isn't sustainable for most management teams to break out of this race to the bottom. The exceptions - firms that have a quasi-monopolistic market position - prove the rule.
"Letting employees unionize, etc."
Employees don't need permission from their employer to unionize in the United States or any other high income country. It is entirely the decision of the workers; if a majority want to form a union, the employer is obligated to bargain with them.
Historically, this is how the race to the bottom has been halted.
That sounds pretty ominous. What policy would you suggest? Why would you be confident the government would be at all competent?
If people stay on in the company they under pay people and save money. If people are constantly job hopping there's no longer any long term obligations towards employees and you have a constant pool of replacements thereby saving even more money.
Then its not democracy any more. Its slavery. If People want to leave let them leave.
For companies, certainly some do value retention and this is obvious from things that can be observed (eg the turnover rate) and incentive structures (ie being willing to pay to avoid attrition).
So I think it isn’t true that no companies value attrition. Even Amazon which usually have a reputation as a bad place to work as an engineer seem to do things to reduce attrition (an alternative way of looking at their ‘weight vesting schedule towards later years’ is that they are trying to encourage people to stay for longer, rather than that they are trying to save money on a high turnover rate).
It feels to me that a lot of it is cultural. For example, lots of people in senior positions may believe that a certain level of attrition (or ‘unregretted attrition’) is good because it is like an easy way of firing people. But regretted attrition can be a lot worse than not having so much I regretted attrition. I say it’s cultural because opinions in management could change—certainly other countries can be different—just like other aspects of company management have changed over time too.
I think another aspect is that if your company is growing very quickly, like many of today’s big tech companies did, then most people will be recent hires and it is perhaps hard to have a culture that values or takes advantage of people with a lot of internal experience.
This is my dad's favorite past-time, to talk about the good old days of the USSR when he had free education, free guaranteed housing, free health care and a guaranteed job. Combined with those other people who made USSR fall apart or are all about money or whatever.
Nevermind all the other thousand broken things in that system, let's narrow it down to a few elements that align with your pre-conceived idea and cherry-pick, to create the good old days and conversely, kids nowadays.
I’m not pining for “the good old days,” at all, and it’s … interesting … that this was what you read.
I’m enthusiastic about tech, the future, learning new stuff, and making the world a better place.
I feel that it is a shame that the concept of Personal Integrity (or corporate Integrity) is considered an anachronism.
From the individual perspective, staying too long slows down your rate of learning because you aren’t coming into contact with new people and technology at the same rate. Anecdotal, but lately I’ve interviewed some 8+ year tenured candidates that I wouldn’t rate above SWE II because it was literally a “one year of experience 10 times” situation. I try to change things up every 4 years or so to avoid ending up this way myself.
I think I have a very different way of organizing knowledge, where I worry more about how to answer questions than knowing the answers. This makes me very popular with young and new employees, and quite unpopular with those who think you make Important Decisions by locking everyone in a room until they are made. Oh and using a computer in a meeting is disrespectful so we will make all decisions from memory, then have another meeting when we discover our memory was faulty.
I wouldn't overapply this though. I think terminal mid-levels might be undervalued in a way. A separate conversation, but I think "developer assistant" could be a role in the way "dental assistant" is (but not as much based on gatekeeping).
Should be noted, this is applicable to the same position specifically, not any one company. Some of the best engineers in the world have only ever worked at places like Google, Microsoft, an academic institution, etc, but they make sure they're constantly learning, working with new teams, switching to new positions once they've mastered their previous one, etc. In many cases these folks actually have a big leg up vs new external hires due to product and institutional knowledge, while also constantly learning new technologies.
So all German IT organizations? :)
My team was about 3 people (Americans, with our manager having worked in the German HQ for a few decades), who worked mostly on separate projects, and most of the headaches I had were due to change being opposed. I would try to do something, or request some sort of access to perform some task, and would get blocked by red tape that wasn't made visible until I was being told that I wasn't following a process that wasn't explained to me in advance.
There was one person whose sole task was managing the company-wide JIRA instance. If you wanted your team's board structured slightly differently, good luck. When I requested permissions to create a Component, the denial went to my manager instead of me, and I got a stern talking-to about 'the way things need to be done'.
On top of that, for a team of 3 people working on projects that are exploratory in nature, I'd expect that the local SQL server install (We didn't have the license key anymore, btw) would allow for us to have admin or developer rights. It originally did, until someone decided to change it, and I was the only member of the team who lacked that access.
I tolerated it for about 2.5 years (First job), but Covid gave me a great reason to quit!
I would say that Attrition actually benefits employees and companies. The Employees who stay take a pay cut each year either to inflation or to the fact they just don't get paid more. Employees get better pay once they change jobs and companies get to have new people at a lower rate and they in turn may have a different perspective. Avoiding change I think it isn't necessarily the people who will stay for long periods of time but it might be corporate culture instead.
Proactive management would reward the top performers and reprimand/fire the poor performers. That's the opposite of attrition.
Not really a definition, but there's an example for you.
They have been at the company too long and aren't really happy about it. They don't get a new job because it's viewed as far too distruptive to their life. Again, they are probably 100% correct.
This is actually the opposite problem of what the article is covering: instead of companies not being able to keep good people, (some) companies are not able to get rid of bad people (whatever subjective definition of "bad" you choose to use).
I've worked at some companies where it's almost impossible to get rid of people that are only causing a net loss for the company, or at the very least, are consuming headcount that could be used to hire someone much better.
Attrition is about people leaving. "Idiotic coworkers" don't leave -- they have to be pushed out. And, again, that's a completely different problem when companies can't and/or choose not to push people like that out.
Stuff moves around for no reason (some graph layouting algorithm with easing I guess), the looping is bad and it's annoying to wait for the changes and as they happen instantly
A simple picture for each transition would have been simpler to implement and actually showed something.
Pay developers like it's monopoly money.
You could call this "The benefit of retention", though that may be a bit reductive.
That isn't true at all. FAANG pays a lot for you to join them and give good raises, but they don't pay extra to make you stay instead of leaving for another FAANG. So there is still a lot of churn at FAANG.
No, they just choose who to reward according to whatever their metrics are and how someone's management chain chooses to apply those metrics. These rewards are explicitly stock-based to help with retention.
Some examples:
- Have a "top talent" marker, managers get N% of their headcount to distribute each year. Anyone with the marker get more comp than their peers. - Create stock and bonus bands based on your rating and level, then heavily reward high senior bands compared to others. - Create a special retention program for specific areas of tech (eg ML) or for senior engineers who "cap out". Anyone in these programs gets a boost to comp.
These things can be combined such that you can have 2x-5x differences in compensation for two engineers in the same department at the same nominal level, sometimes with small differences in performance ratings.
When used correctly as intended programs like this reward people who work the hardest, are the best at what they do, or who will cause the most pain if they leave the company. If used incorrectly they become a tool for managers to reward their friends/sycophants. If a manager doesn't think about how to use them at all then it becomes a random walk, biased toward whatever you happened to do around review time.
But no the FAANG companies are absolutely aware of the effects of retention and deploy resources to retain employees they think are important, at least at a high level. Sometimes those efforts don't reach the right people and sometimes your estimation of who is important is not aligned with the company's view.
Maybe I'm not understanding what an edge is supposed to be, but the author implies that "something" is lost when the edge disappears. That doesn't make sense. Knowledge live in the node, not the edge. You don't just forget a project you worked on just because someone left. If you lose access to knowledge when someone leaves, that's because you did a bad job of preventing silos.
Further, someone who has deep domain knowledge is valuable even with 0 connections.
Beware looking at teams as a social network graph or org chart! Human teams are nuanced and require up-keep.. hence the existence of HR and management.
I have worked for managers who act like they think it is their role, and even succeed at doing it. As well as managers who don't.
Some companies operate in not that profitable markets or have bunch of other issues.
Cost of attrition is still dispersed over the time and while you loose the knowledge at hand it still might be cheaper to build it back over a year than drop cash on people right here right now.
There is such thing as time-value of money and company might prioritize other investments that in long term will outweigh knowledge lost as knowledge can be rebuilt and gains from other investment might not.
Of course one can say - there will be some knowledge that will be gone. From practical point of view, if that knowledge that is lost would be so valuable it would most likely resurface or would be rediscovered quickly by new hires. Maybe not ideally but still in a way that company can continue.
(To be fair the article just points out that attrition has a higher cost than we realize, not that attrition is never worth it).
It seems like any team that’s growing (by a non-trivial amount) would have dropping tenure.
1. Most obvious, people are going to leave, so you need to take that into account. You can't keep everyone and I'd argue you shouldn't try.
2. The impact of someone leaving is highly variable. Sometimes it's a bad thing, sometimes it's a good thing. Sometimes it's pretty neutral. Different people add different amounts of value, and not all relationships are equal.
Of course high attrition can be a yellow or red flag - certainly a warning that you need to look at how management and leadership work - but some amount of attrition is a reality, and the outcome of that reality is not universally a "cost".