Although I agree with your overall point, I disagree with this line of reasoning. I think the pay offered to an engineer already takes into account that they will understand the tech stack after six months to a year. The situation is essentially the reverse of what you said: they're being overpaid initially compared to their productivity (but, quite rightly, that's the company's problem). Then their productivity catches up with their salary.
But I agree with your point in the years after that.
Companies rely on the fact that you stay a couple of years at least. So if you want to make good deal, you need to switch jobs more often.
The other side is that, if you're not as good as you're supposed to be, normally you won't get fired just in one year, you are actually overpaid. From the corporate side, the better engineers are covering the loss(those are overvalued but still too early to be laid-off).
So the best and most capable ones will switch jobs after 3 years, not totally because the company is too greedy. Unless there is a way and culture to make your salary can go up and down each year based on your performance, there is no good solution(because pay-cut is not common no matter what). In the end those who are overpaid will more likely to stay, those who are undervalued will likely jump board.
One way is to keep salary less important, like an average value that is reasonable for both sides, then the company can use monthly/quarterly/yearly bonus to reward the top employees, but who could like it when he has a 30-year fixed-rate mortgage that needs a sense of secure/stable income.
If you don't get a raise in the first year, it's often more about pedantry regarding the HR rules, which tend to be "optimized" by penny-pinching adjustments over the years to take advantage of employees every way they can (this is their job, squeezing money out of people any way they can). E.g. you weren't there for the last round of evaluations so you don't get a raise. Possibly no bonus too. You need to discuss all this stuff when negotiating, they'll be trying to help you work the system at that point, rather than using it against you.
It's up to them to make sticking around your best option. But when I'm on interview panels and someone brings up that the person in question is a job hopper, rather than see that as a negative, I see it as a challenge to find a way to get that person to stick around. And the only thing that offends me when someone quits is if the offer to do so isn't better than sticking around.
I am not popular with my fellow managers with this attitude and I expect downvotes for this. Bring 'em. It really doesn't matter to me anymore, the remainder of my career will be spent on making hard things easier rather than making easy things harder.
However, if someone has generally changed jobs every year or two and I wouldn't hire someone who I knew with certainty would only stay that long, I might think I'm special enough that I can keep them around. But I'd probably be wrong.
Perhaps you mean if they treat employees like a commodity. They can do that withoug laying people off; universities tend to treat their tenured faculty this way also. Optimizing for getting the most work out of the witth the lowest cost. If so, then yes employees should, in turn, act like the job is a commodity and try to optimize income-minus-costs on their end too.
And yet, all that fuss about these job hoppers. How about creating an environment and culture where sticking around beats job hopping instead?
As for the alternative? Check out the severance packages that executives and TLAs get. Try scaling that down to the employee level. Not going to happen.
And in our lawsuit-happy culture (with a perverse incentive for companies to always settle lawsuits even when they can win), even the most employee-friendly place probably needs such an agreement for CYA reasons.
I do agree ecompanies can do a much better job of treating employees like partners instead of "resources" to optimize. Even on HN, we have fellow engineers talking of the importance of (soul-crushing) processes that ensure no one is essential. As if it's undesirable to let anyone be special or important...
https://www.nytimes.com/2002/03/11/business/stock-options-ar...
Also you’re not really signing an agreement that they can fire you, you’re signing an acknowledgement of the at-will employment status so you can’t claim any illusions that you had an employment contract, but that status is typically derived from state law and advertised on the job posting you applied for. That paper you’re signing is about the same as an acknowledgement of the warning that you shouldn’t eat tide pods. It’s there because stupid people have necessitated it.
Speaking as a long time employee and now as an owner/employer, I’ve always thought people who bristle at at-will employment don’t really get it — it’s a two-way street, as an employee you can leave anytime, being considerate of professional courtesy for notice, etc.
I was always highly confident in my value and skills, so the idea of an employer randomly laying me off was never an issue - their loss more than mine. Your life will be far less stressful if you can develop that mental confidence and self-actualization, and if there is something preventing it, work on that. Specifically, if you feel lucky to have been employed in your field, and are barely hanging on to your job, maybe you should find a better field?
At-will employment should not even remotely be a big concern in life. Talent is hard to find - there’s more money than talent out there.
The way to get there is to refuse to sign non-compete agreements unless they come with an equivalent clause to what I got. When you sell yourself short, you sell everyone else along with you.
The difference (at least to me) is time. Hoppers are people who typically change jobs every 1.5-3 years.
Jumpers, will have a long history of 6 month stints, very few if any gigs longer than a year. At most places I've worked, depending on the quality of on-boarding it took most engineers 1-3 months to be productive, and 3-12 months to understand the system well enough to make impactful changes to the ecosystem safely.
I've lasted anywhere from 30 days to over a decade depending on the gig. And every one of those moves was the right choice. I prefer to rely on my own research of the person's career track and the number of people they can summon as references to say nice things about them. Tech culture brings out survival traits and I'm not going to hold anything against people who act in their own best interest.
After clearly proving my value for about 2 years. I made it obvious that I would accept a role at my friends company if they couldn’t come up. I explained to them nicely that I would rather stay, but I can’t without a large raise.
It can be done, but it would have never happened without me pushing them. No company is going to willingly throw out raises this large to people without reason.
I agree with your point fully, it’s just unfortunate it doesn’t happen.
At my company, I understand (but have not seen first hand) that anyone who tries this (either comes to the table with a competing job offer in hand or threatens to leave in specific terms) is told "we thank you for your time here, best of luck"... Because it is assumed they are not dedicated to the company and so investing further in them is not wise. This is old-school thinking in my opinion, but it's probably still how a lot of places think.
Unless you are _critical_ to a project or team, it's a risky play.
Generally speaking it's a dilemma for sure, and I'm not picking a side here, but I have to imagine there is a lot of tension these days in companies due to these kinds of pressures.
Again, good for you for negotiating a better comp for yourself though!
It’s a true negotiation only if you’re willing to walk out. So to negotiate, realistically assess the availability of other options, and whether you’d accept them.
If you’re not willing to walk, it’s just a game of chicken. That can indeed be risky, as then you might lose what you have with no fallback and no alternative.
I am not saying don’t negotiate with your current employer for a pay raise, but leveraging another job offer does come with some risks you should be aware of. Some employers can see it as “burning a bridge” (I don’t agree with them, but it happens).
Personally what I do is try to negotiate without a job offer in hand (never threaten to quit) and if they don’t give you a good-faith pay raise then start looking for a new job then. It can take a year or more to find a good job you want. Then quit. They have already shown you that they don’t value you enough to pay you more. Paying you more under duress often does not end well.
You can have an offer in hand and just not talk about it. Without an offer, it can also be harder to come up with numbers. What if you ask for X at your current job, get it, but then get an offer for X+D from another company one month after?
Some posts read like they threatened their employers, but the politically correct way to negotiate is something like: "I think my market value, based on comparisons with friends with similar experience, is +x% of what I'm getting currently. I'd like to fix this so I stay here longer-term, because I like my current job thanks to y and z. Can we fix this?".
It really depends on the company culture, I've heard places where employees are encouraged to apply elsewhere to know what their market value is (isn't Netflix such an example?), in this case you won't look bad if you do get another offer and bring it up more directly.
Don't fall for that "being loyal to your company" mindset. You won't get rewarded.
Still others have thrown out raises without being pushed but they were critical organizational lynchpins getting 10% raises when the market would bump them 50% minimum. That's even worse.
Fundamentally, I think the surplus value from these tech workers who hate interviewing and get "stuck" with cost of inflation raises are often a lot more profitable than we'd give them credit for, and a lot of companies are happy to risk losing a high performer if it meant keeping 3 profitable grumbling malcontents on lower pay.
I've done this as well, but I actually liked my current job and wanted to stay. I had a potentially new job lined up which would have paid much better, but it also had many downsides. Primarily a much long commute and a pretty boring industry that didn't interest me. So I was happy to split the difference between my current salary and the new offer and keep doing the job that I liked.
I think it's weird how hard it is to convince your colleagues and your management that you're worth 50% more than you were yesterday by continuing to work, yet how easy it is to convince the same people of the same thing by quitting.
I also think most companies realize how disadvantaged they are in salary negotiations in this job market, but it's favored employers for so long that very few of them have any idea what to do about it.
Less risk of that happening if you are a fresh face starting out with 50% more. You probably wont share and plus, who knows what kind of hot shot you are?
Plus, your leverage at the point where you decide to take the job or not is at its highest. They'll infer that walking away is much easier for you than it is when you've spent 2 years somewhere and you're settled.
This is why you should keep your Leetcode chops up as well as your whiteboarding and interview skills. Don't let hating interviews stop you from fielding another offer.
But the request of asking for a rate that you are being offered on the open market is not. They have 2 choices there: They can pay you more because you are worth it, or they can wish you the best. If this company had a bunch of employees come in and get take 30% comp less than you and did the same quality of work, do you think they would be "loyal" to you and grossly overpay you? Absolutely not, and they shouldn't. Of course, the company would love to just pay you less, but they realize that your value proposition still exceeds that.
In a small company, it can make a difference. In a large one, it won't.
Can’t be that hard if an engineer can just walk out and get that. What do you think the replacement will cost? And with none of the knowledge.
Uh, they seem to find that money just fine for execs, who are not even the ones keeping servers up, so to speak...
It doesn't mean they did 10x the work, but they definitely brought the value.
People literally jump around chasing pay increases. If you got a decent raise comparable to a job change would you jump around every couple years?
Just how many 20 year experience engineers do you think the average company has?
I have a feeling you will find that the (very small number of) folks who have been at the same FAANG continuously for the past 20 years are indeed making compensation in that ballpark (we're talking Google's Senior Staff Engineer or Amazon's Distinguished Engineer level) - particularly if you take into account the massive stock price increases over that period.
Personally, I and most developers don’t think it’s worth it which is one of the reasons why it’s not actually difficult to get started.
Gonna be the [citation needed] guy here again; "quite a few" is doing an awful lot of work in that sentence. According to the most recent wage statistics from 2020, there are less than 100,000 people reporting incomes of $1M or over; that alone doesn't just put you in the top 1%, it puts you in the top 0.1%. "Low 8 figures" is in the low thousands.
https://www.ssa.gov/cgi-bin/netcomp.cgi?year=2020
I'm not the first person to point out that Silicon Valley (and SV-style) software engineering incomes seem to have skewed HN's idea of what "average" salaries are and I won't be the last, but I think it's really true. If you make a six figure income, you're pretty much in the top 10% of that wage statistics chart; the median income is around $30K.
> Personally, I and most developers don’t think it’s worth it
The number of people who started as developers and increased their salaries to that $1M+ level have got to be very, very low, and I don't think you can really imply that most developers have the opportunity to do so and simply choose not to. That kind of "engineering founder" success requires skills beyond engineering (and, as much as we sometimes like to pretend otherwise, a certain amount of good fortune).
Beyond that the relevant question is not what percentage of people currently make that much money out of all people or even all workers. The relevant question is what percentage of people that aim for it eventually make that money. If hypothetically people make 1+M for on average 7 years of their life then your looking at something like ~10 x 184,989 people or roughly 1 out of every 180 people in the population. But again not everyone is in the running, a Teacher is hardly aiming to climb the corporate ladder to millions. Depending who you cut out the actual odds might be as high as 1-5%.
And of course ignoring actors etc who might make that much money but aren’t getting it on a W-2.
PS: To see just how biased official income statistics are try and calculate Bill Gates official lifetime taxable income some time vs how much his current net worth + total donations + 2.4B divorce added up to even ignoring all actual spending.
So yes, if you start as a junior engineer and end your career as a CEO of one of the most successful companies on the planet then you can see this growth. But those aren't regular raises for doing good work. Those are completely different pay strata for completely different jobs.
Good luck with those odds!
That’s just last showing years W-2. Someone that made that much but retired in 2019 doesn’t count. It also excludes anyone that will cross the threshold at some point in the future. It even excludes people that got stock options worth that much but can avoid calling them taxable income right now.
Lifetime odds for a random American might be ~1:10,000. But not everyone tries to make that much money from a W-2 either. Becoming a school teacher is hardly putting your hat in the ring for that kind of compensation. Which arguably drops lifetime odds closer to 1 in 1,000 if not better for people that make a real attempt. I am trying to avoid any kind of truss Scotsman argument, but IMO there is a meaningful difference between random chance and stuff people work for.
If you think dramatically increasing compensation is going to continue in the next decade like it has in the last one, I think you might be disappointed.
Now that companies are comfortable with remote, HR departments are eventually going to realize that services like Deel exist, and that its not actually that hard to hire employees overseas.
Once job ads start removing the "US only" part from the requirements, comp is going to come crashing back to earth.
A remote worker in the US being paid 4-5X as much as a remote worker in Europe is a massive market inefficiency just waiting to be arbitraged by companies.
As the tech giants growth inevitably slows over the coming years, they're going to have to start looking more closely at their cost structure to meet investor expectations.
What works better is outsourcing entire business functions so all of that routine coordination can happen in the same team/time zone, and you have an easier time measuring performance.
For example, we've hired several engineers through a very big name, silicon valley backed, foreign contractor firm. They perform at the level of a junior engineer at best.
China in particular have large tech companies (e.g. tiktok) that offer pays that almost matches the US, which skimmed the best engineers away from these contracting jobs.
I'm talking about tech companies directly hiring employees from other countries.
You don't even need to leave the English speaking world to find massive arbitrage opportunities.
If you think there's no React developers in the UK/Australia/Etc who can do leetcode problems...I've got news for you.
The only fly in the soup there is that I see loads of remote roles that can only be performed in the USA because of PII. It's not so much that the workforce is getting globalized, but that the country-specific workforce is going remote in whatever boundaries they're legally allowed to work (in this case, within US borders).
Very few of us are paid based on a value calculation. We’re pod based on what the market values our labor and then we either fit or don’t fit into a business model that has some value.
So you’re right, but the reason we don’t get 40% raises after a year is because we can’t quit and get a 40% raise to go elsewhere. We know this and our employers know this.
Now if the market for programmers were 40% higher then we would just get that to start.
Basically employers are overpaying us that first year while we learn stuff because we come up to speed after a while and then finally “earn” our salary.
If hiring and churn were huge issues for most companies, they would actively combat it. Instead, they've all mostly settled into the practice you see. Engineers typically do a 1-2 year tour of duty, vest, then bounce onto greener pastures. Steady state flux. In some senses, new talent also bring in new ideas and combat skeptical dispositions and organizational ossification.
Engineering salaries are without a doubt one of the biggest expenses for organizations to deal with. Companies love that they can now hire remotely and pay adjusted cost of living. They'll hire as many workers in middle America as they can, and once enough of the workforce is concentrated outside of expensive cities, you'll see them stop hiring in SF and NY entirely.
But it won't stop there. Startup capital is already beginning to shift to new opportunities in burgeoning emerging markets. Employment will eventually head there too, whether it's chasing after the new capital or simply finding more talent at better market prices. Covid and WFH opened up a world of possibility for talent sourcing and cost reduction. America doesn't have a monopoly on good engineers, just the expensive ones.
I wouldn't be surprised that if in ten years, our salaries begin to dip below six figures. Inflation adjustments notwithstanding.
Make your money now while the iron is still hot.
I was doing remote work and hiring remote subcontractors for 20 years already. No need for COVID ;)
Of course the pool will expand over time and the situation will look different in 10 years, bit nevertheless the English requirement will remain a blocker for many, many engineers who could otherwise code circles around a random mid-level American programmer.
Ossification happens when most of the employees stay in the same company and even the same team for 20 or 30 years.
The industry is facing the opposite problem, where the average tour of duty is so short that people don't care about planning for the future or designing lasting, low-maintenance software. Endless, unnecessary churn is not cheap.
I see a lot of software people quitting to take sabbaticals, to work on a project that might turn into a company, or going small and retiring. To my eye, you can't pay those people a 40% raise to retain them.
Many people stay back in a company even knowing they could probably get more if they try else where (ex: work like balance, friends, job security in the long term, exciting work etc). When a org has sufficient no of such ppl, it doesn't matter to them when they lose some 1-2 start performers. Also, there's no guarantee those star performers would stay back even if they are paid higher salaries !!
This is not an inflexibility. This is the "leadership" deciding that it is not worth it.
From the article: >> "This result is consistent with a large body of evidence that pay has only a moderate impact on employee turnover. ... In general, corporate culture is a much more reliable predictor of industry-adjusted attrition than how employees assess their compensation."
In short, as with many other stories, what most commonly leads people to quit is bad management, and often specific bad managers. Obviously when pay is tool low and uncompetitive, that'll also create problems. That's also why the major law firms have associate pay in lockstep with big growth that more than doubles their pay in 5-7 years, by which time they're either on Partner track or out. So, yes it would be smart for firms needing engineers to follow suit.
To do the latter, you need objective & independent proof of value, like an outside offer.
The other thing you see is talented engineers moving into management even we they don't really want to, so that they can get paid what they're worth. In some cases this is even worse than then the engineer leaving the company because, in addition to losing a good engineer, you often also gain a lousy manager.
Would you leave a company where you got a guaranteed 30% raise every year no questions asked(assuming work was interesting and you were happy with current comp)?
Even going from 50 -> 300k, is no easy joke. Its not even worth starting a company if you can make these kind of 6x increase in fortunes in years.
Imagine going to the stock market and claiming to have 30% return yoy.
I'd like to believe even at FAANGs these mad salaries aren't common. And I would be very wary of hiring anyone with a yearly jump trail on a resume, with a high salary. That resume is basically signalling the candidate does no work apart from hopping jobs. Hiring a non performer one has to replace in 10 months is a non starter.
This is probably an anomaly because I was massively underpaid at my first job, but you've got to start somewhere. (The first three years of my career was basically job hopping. I started at UofC, went to a part of Doubleclick in Chicago, then went to a bank. UofC -> Performics doubled my salary. Bank -> Google doubled my salary.)
As for job hopping, you can have whatever weird criteria you want, but the average engineering tenure these days is about a year, so if you want someone who has 20 years of experience you probably shouldn't be surprised by 20 jobs. If you don't want people to leave to get more money, give them a raise. Why should people take less than market compensation because of your odd idea that they should be "loyal"? People stopped being loyal to companies in approximately 1950. The market for software engineers is ridiculously competitive on the buy side. That's just the reality.
Yeah, it does take a lot of effort. I put in a lot of 50hr weeks to get this kind of gain, but it's totally doable.
> That resume is basically signalling the candidate does no work apart from hopping jobs.
I get a _lot_ of work done in even just 6 months.
My impression -- as someone who is neither an engineer (anymore) or at a FAANG, but is making above the apparent market rate for technical writers in Silicon Valley at a company that needs to compete with FAANGs for talent and chooses to do so by offering high base pay and bonuses rather than stock options -- is that at this moment in time, these mad salaries are common in both FAANG and competing-with-FAANG companies, but only in specific fields and specific locales.
Personally, I'm not convinced this is sustainable any more than the SF Bay Area housing market is sustainable. If the shift to fully remote or "hybrid remote" workforces is truly underway, it's probably just a matter of time before that starts pushing down income levels. If you cut your cost of living in half by moving from Mountain View to Boise, employers will start factoring that into your compensation -- many already do.
In the long run, of course, that would lead to a slow creep toward equalization of cost of living across the country; there are already anecdotal (but loud!) reports of housing costs increasing substantially in surprising places as people leave the west coast and the northeast and move inland. Eventually that should make COL adjustments smaller or less common, but it will likely also make "I'm making $350K right out of college" less common. (Or whatever $350K is adjusted for inflation in a decade.)
I'm remote too.
Go read Blind posts. You do have to be pretty good, but it's about where I'm at, and there are plenty others like me.