How to negotiate your salary package
165 comments
·June 18, 2025ryandrake
sokoloff
If you don't have a strong BATNA (Best Alternative to a Negotiated Agreement), you're not going to get very far with just asking.
"I received your offer for $X. I really enjoyed the interviews, meeting the team, and am intrigued by the problems I'd get to solve with them. Unfortunately, I have a competing offer for $1.25X from another company and I need to make sure my family is provided for. If you would match it, I'm excited to join, but if your offer is firm at $X, I'm afraid I won't be taking it."
If they really just need someone to hold down a chair, they'll probably not budge. If they really want specifically you, they're more likely to bend if they believe that's their only move.
entropi
Last time I got a job offer the hiring process took ~4 months with seven steps, and I had to answer within 3 days.
I do not get how is anyone realistically supposed to coincide the multiple offers they get. Unless you are already in an extremely privileged position, I cannot even imagine how you can do that.
Magmalgebra
> I had to answer within 3 days.
If you re-read the transcript, I hope you will come to the understanding that this is a lie. The company is trying to leverage your desperation for a job.
> Last time I got a job offer the hiring process took ~4 months with seven steps
Just like increased compensation, gettting the timeline you want requires leverage. When interviewing I always communicate that I expect an offer from a peer competitor within the next few weeks - this expedies my interview process. I always end up with a minimum of 4 competing offers to use as a BATNA.
Something the article winks at here is that negotation has only a small expected payoff if you've navigated your career such that you're a "small fish in a big pond" so to speak.
Someone who can barely pass a FAANG interview likely can't negotiate much with Google but probably could negotiate at lower tier company like SAP.
*edit* I do this strategy 12-18 months whether or not I leave a company, it has never failed me
bigs
It happened for me once by pure chance.
I was looking to leave a secondment I was on, and received an offer, right as the leader of the client I was seconded to said we’d like to take you on permanently and we’ve cleared it with your company, here’s the offer. I used that as leverage and left.
Otherwise, I agree, it’s a snowball chance in hell to coincide them.
jayd16
Do the alternative offers need to actually be real? They just need to be realistic, no?
sokoloff
If you’re applying to Google, apply to them way ahead of the others…
rsanek
you tell everyone up front what your timeline is, months ahead of time. that way, all of them coincide and you get maximum leverage.
last job search i got 4 offers to line up that i could use in negotiations.
tiffanyh
Re: BATNA. It’s extremely difficult to get two offers to coincide at the same time.
So in reality, your BATNA is your current job (if you’re employed).
ryandrake
Basically correct. I guess my point is Patrick could have saved a lot of typing and simply wrote "Have one or more competing offers."
roncesvalles
In my experience, the proclivity of a company to negotiate entirely depends on how quickly they need to hire someone. If the requirement is to scale up immediately, once at the offer stage you're the fastest person on the planet who can start working in the role, and this gives you significant leverage.
If the company can afford to onboard someone any time in the next few months, they don't need to negotiate. They just need to keep the pipeline flowing until some candidate accepts their lowball number.
atrettel
In my experience, some employers don't even care if you have a competing offer. They will change nothing. I've written about this before [1]. To me, the best thing about having multiple offers is that you can at least make a choice.
jt2190
Do you consider yourself an _excellent_ negotiator already? It really feels like you’re trying to suggest that negotiation can’t ever work for anyone except a handful of celebrities, even for those who are excellent negotiators.
Someone’s already asking about your BATNA, and I’m wondering if you negotiate all benefits (amount of time off for example) since your story focused on salary alone.
pcl
I don’t get the impression that his brand is based on conciseness.
k__
I mean, they don't know AND you only need one "yes"...
zem
pretty much, my first bigco job I made the mistake of only applying to the one place (had a job already, was looking for a change but without any urgency), and they would not budge on salary, just said the offer was already very generous and at the top of their salary band for my level. the next time I was job hunting I had just been laid off and so was frantically applying to a lot of places, ended up getting several offers and that definitely made a difference (though interestingly enough no one was willing to negotiate on base pay, but they would on things like stock and signing bonuses)
pinoy420
[dead]
whiplash451
> If they really just need someone to hold down a chair
I would not jump to this conclusion. The company might have a very deliberate compensation strategy. Giving $Y instead of $X to a newcomer at a given level without aligning other people at the same level to $Y raises serious concerns.
As a company, you don't have to let yourself bullied by other companies.
sokoloff
Agreed. If they just need a chair spring compressed, they won’t budge. That doesn’t mean if they don’t budge that they just need the spring compressed.
P implies Q doesn’t necessitate Q implies P.
octo888
"rank-and-file employee number 12887"s don't tend to find it easy to get multiple job offers at once to use as leverage ! Even more so in today's climate
null
g9yuayon
That’s why Patrick said it helps to have a strong reputation going in. Still, you can absolutely negotiate—just make sure you have real leverage. That usually means a competing offer from another solid company (ideally a competitor).
Keep this in mind: it’s really hard for companies to hire good engineers. The onsite-to-offer ratio might be 20:1 or worse. So when a recruiter says they’ll just move on to the next candidate, they’re probably bluffing.
But what if they do have 20 people lined up? Then you don’t have leverage with that company—and that’s fine. Take the offer if it’s good enough, or walk and try elsewhere.
P.S., a fun anecdote: when Netflix was extending an offer to a renowned engineer, he brought his PR to negotiate. Apparently, it worked well for him.
P.P.S, always interview for a higher title. I get it — it’s tough with hot companies like OpenAI. But for most places, it’s worth a shot. At the very least, don’t aim lower than your current level. It’s funny how the human mind works—interviewers anchor their expectations to your title. And ironically, a senior engineer interview is often just as hard as a staff-level one. If you’re feeling cynical, just remember: title inflation is real and everywhere, and plenty of high-level ICs are great at navigating politics, drawing boxes, and sounding confident, but not necessarily skilled at offering real values like solving hard engineering problems. So if you can’t beat the game, why not play it?
xondono
I’m hardly a “Captain”, and I’ve successfully negotiated salary increases several times.
The only thing you need is leverage, and yes, rank-and-file are not going to have a lot of leverage at a FAANG.
You can’t negotiate if you’re not willing to let the job go through.
tptacek
This could not be less true and I really wish people would stop spreading this idea, because it's costing other people lots of money. In fact, the Venn diagram mapping "software celebrities" like Patrick and expert negotiators has not much overlap at all. You've never heard of some of the best-compensated developers I know (and they don't work on "celebrity" projects, either); meanwhile, I can think of multiple "celebrities" who have gotten extremely raw deals --- one, for instance, was brought in to lead engineering & R&D at a security company working against organized crime, and didn't even get any equity.
Patrick is right: compensation is much more about negotiating skill than it is about reputation or (especially) notoriety, holding everything else equal.
antonymoose
When is the last time you had to negotiate a salary for a standard software firm?
tptacek
At the job I have now. I'm not a founder here. I don't know what your point is, though, because I'm not talking about me.
closeparen
L5 at FAANG and adjacent companies (Airbnb, Uber, Stripe, Block, Databricks, etc) is a rank and file, employee number 12887 rule. Yet it is compensated in the mid six figures, and the ranges are easily more than $100k wide. Position in the range depends on a number of factors, famously stock market timing is a big one, but competing offers and negotiation are certainly in there.
wrsh07
I actually strongly disagree with this take and
1) after reading the original post immediately linked it to a friend who had an outstanding offer. She got a significant raise from fairly light negotiating
2) personally, I don't think of myself as a particularly aggressive negotiator. However, I have been able to truthfully discuss compensation using the tactics described with recruiters to get leveling and comp where I've wanted it to be for my last couple of jobs. Yes, I always had multiple offers. That's part of negotiating.
More generally, though, I think spending 30+ minutes (reading the piece and more) thinking about negotiating has helped me build a better mental model for what to bring to the table.
whiplash451
> She got a significant raise from fairly light negotiating
Either she had a competing offer, or the company she is interviewing for has weak processes. A company yielding "a significant raise from fairly light negotiating" is very worrying IMO.
Think about it: what does that tell you about the next newcomer that will come after you?
wrsh07
It was a different era, she was a particularly strong candidate and they had given a low-ball offer. I don't think she had a competing offer fwiw
(Less process is normal at smaller orgs, so that's also something to consider)
lnsru
I am the 12887 too. Luckily applied at the place in emergency mode and was perfect fit. Negotiated +6%. Yeah! In the second year it was reduced by 3% coupling my bonus to unachievable goals. As someone wrote on HN: it is not their first rodeo. HR knows how to attract and get to the right salary level afterwards. What can I do? Swallowing is the only way. There are no job ads in my area.
lostlogin
> HR knows how to attract and get to the right salary level afterwards.
This has to be the key point. They do this all the time as part of their job. You do it every few years, or maybe every decade. Of course they are better at it.
Lu2025
How about extra vacation time? Does anyone have experience getting it when asked (and actually being able to take that time off)?
wrsh07
I expect this is one where if you're coming from an Etsy or Google that gives 5 weeks after 5 years of tenure you could negotiate for preservation of that perk, but it seems like it could be challenging depending on your batna (see definition elsewhere in comments)
jandrewrogers
Yes, I once added two extra weeks of vacation time.
marcinzm
You still got 3% in a market that’s not in your favor. And likely you’d have had -3% otherwise and not 0%.
joshuacc
I’m not a celebrity or superstar, and I’ve successfully used his techniques several times. The very first time it resulted in $20k improvement over the initial salary offer. Another time it resulted in an additional $40k in signing bonus.
Most recently it resulted in a modest $5k boost to the offered salary.
But the level of success you are likely to experience entirely depends on the alternatives that you have and the alternatives they have.
(I should also note that I’ve never been located anywhere like SF.)
Sytten
That reads like something written pre LLM, pre mass layoffs and pre section 174. Reality is that engineers have way less bargaining power that they used to.
Aside, as a small startup I am generally upfront with the salary since if you are not in the range we can afford it is not worth having a discussion.
mgraczyk
If you have ~5+ years of experience and live in the US, things haven't changed. Regardless, negotiating matters more than ever.
At startups you negotiate for equity instead of salary but a lot of the same advice applies.
danjl
Startups also have more non-cash options. E.g. they can offer more than 4 weeks of vacation, unlike many enterprise companies. As a CEO, when I gave people 6 weeks of real vacation, they would never leave, since they cannot get that at bigger companies in the US. (We also stongly encouraged them to use their vacation, because a healthy work-life balance is better for the company.) Startups also have more flexibility on WFH, travel options, and other non-cash benefits like providing more authority over your schedule and tasks. They are typically strapped for cash, unless they are not actually startups anymore because they raised $100M, and just like the moniker.
autarch
I'm working at a mid-size company, c. 5,500 employees. We have unlimited vacation (for US employees). I have taken about 6 weeks every year with no issues. I made sure to check that this was okay before accepting the offer, because unlimited can also mean "no one ever takes vacation".
0x5f3759df-i
Maybe if you have 5+ years experience at FAANG or something.
I have 5+ years experience at a no name place and can’t even get an interview anywhere. Maybe my resume is shit but I’ve tried many different versions with no luck in the last 4-5 months.
braden-lk
There's been this vein of advice from the past decade that's in the realm of "just work at FAANG". Always rubbed me the wrong way; they make it sound so easy, lol. The couple of interviews I managed to get after hundreds of ghostings, I was absolutely demolished in the interviews. It seems like if you get nervous doing math problems in front of people who really don't want to be there (and tell you to your face), you don't get to work at FAANG.
Just started my own business instead.
mgraczyk
You may want to try moving to the bay area or NYC for a few years if you're not already in one of those places. It's much easier to get a good job, then you can move away after you have the "right" experience. Also follow the advice in the article, in particular find people you want to work for and DM them
SoftTalker
Only consider equity if there is actually a market value for it. Early stage startups hand out equity options that likely will not ever be worth anything.
ikiris
Startup equity is the equivalent to the old Foxworthy bit
"You can't write me a check?" I said, "No, I -- a check? Hell yeah, I can write you a check! I thought you needed money. Tell you what, I'm just gonna pay the whole thing off right now! I'm gonna be a congressman when I grow up."
mgraczyk
It's not really, because it's finite. You don't generally dilute the options pool when you hire new employees, you give them some slice of a scarce options pool
paulddraper
My bank account says otherwise, but it depends.
Trasmatta
Yeah, as someone with 10+ YOE, there seem to be tons of opportunities with good packages right now. Companies still seem to need lots of senior devs: the market looks much much harder for anyone with less experience right now
peab
that's because it was written in 2012! The original essay is here: https://www.kalzumeus.com/2012/01/23/salary-negotiation/ (Originally written: January 23, 2012)
onion2k
2012! is a very long way in the future.
dakiol
> Reality is that engineers have way less bargaining power that they used to
There is negotation power but only if you pass all the interview challenges. Only at that point you are in a position to name your number (of course you won't ask $500K when you know the company you are applying to pays around $200K... because you have done your previous research on that; you'll ask something between $200K and $250K and see how they react). Layoffs and AI hasn't change this (sure, thing, 5 years ago companies were hiring more and perhaps were more relaxed about this, but that didn't change the fact that you can only negotiate when they want you)
have-a-break
Honestly at work LLMs seemed to make me less productive. For side projects they help but I've seen papers indicating this is the case for industry.
We as engineers have let the recruiters and VC funding brainwash us into lower salaries. Kind of looking forward to a rebound.
JonChesterfield
I'm decently excited about the new world of hugely increased quantity of terrible code. Not absolutely sure how to go mining yet but it has opportunity written all over it.
rednafi
This is my experience too. All these LLMs and agents are great for bootstrapping projects faster than ever. They help immensely with bringing down the activation energy. So I do a lot more tinkering around in multiple languages that I wouldn’t have otherwise.
That said, once the project goes beyond a certain threshold, LLMs offer little more than a highly capable autocomplete. In larger codebases, the current context window is too small for the tools to even answer questions properly, let alone make any non-trivial changes.
Productivity starts going down once you try to use LLMs in a large codebase and expect them to be as helpful as they were in a smaller one. Often, these authoritative little shits will whirl you around in a doom loop and still won’t find any useful solution. And suddenly you find yourself having to clean up the mess.
I’d still say the productivity benefit is positive, but at the same time, the hype around these is bonkers. Employers are holding onto the hype cycle to bring down wages through FUD.
roncesvalles
>Productivity starts going down once you try to use LLMs in a large codebase and expect them to be as helpful as they were in a smaller one.
Exactly this. I've really tried to find use for LLMs in my big tech company SWE job and I just can't. The context is just too large, and not just the code context. In the time that I can "explain" everything to the LLM, keep iterating until it spits out something semi-useful and massage that into something I can merge, I'd rather just do the whole thing myself.
But it's amazing for greenfield personal projects.
bluefirebrand
> LLMs offer little more than a highly capable autocomplete
I find LLM autocomplete extremely annoying compared to traditional intellisense
It is wrong way more and I don't want multi-line autocomplete, it's too intrusive
casualscience
You need to setup the problem for the llm. If I am getting an error, I can normally piece together the 10k lines of relevant code much more quickly than I can track down the bug.
Llms are still a big speed boost there
andy99
I regularly exchange currency at the bank. There is a posted rate that I can get online. If I go to the teller, they will propose that rate as well, at which point I say "can I have the premium rate" and they say, ok, I can give you x - something 1% better or so.
Point is, I'm not negotiating with the bank teller, they have a flow chart they need to follow. For a lot of positions with big companies, it's going to be the same. There might be a path on the flowchart you can access, but you're not really negotiating. In some cases you may be able to break though this if there's a real person (not recruiter) that will push for you, but talking to recruiters / talent is like talking to the bank teller.
dan-robertson
So even if you’re just advancing down a flow chart, the ‘negotiation’ option is better, right?
brunooliv
In my experience this never worked for me for the simple fact that I never had the skill and time to even GET a second offer to bargain against. I wouldn’t say I’m a bad developer, but I’m definitely horrible at interviewing and having to jump through several different steps at different companies just to bargain for a higher end of the range makes me feel like either the market is the problem or the expectations from companies are way unrealistic
3eb7988a1663
I too have never been in situation where the timing would possibly work out to get companies to compete. Some employers take months from start to finish while others can wrap things up within two weeks. Then you get an offer that requires a decision within two-three days.
Sure, make an ask for more money, but I have never had any leverage.
ashdksnndck
I found that behavior would change a lot once I had an offer from a decent company. Suddenly all the scheduling/matching delays and processes that supposedly were delaying me would be resolved when I revealed that. It was even worth emailing recruiters that ghosted me because they would respond again. Also, offer deadlines are usually just pressure tactics and would go away if there actually was a risk of me not signing.
Caveat that I haven’t interviewed in the last couple years and this may not be the case anymore.
dan-robertson
I think expectations are often realistic in the sense that companies are generally able to hire sufficiently many people at acceptable prices. But I think it’s also the case that there are fashions in interviewing such that companies are mostly all trying to hire the same subset of candidates that do well at the current thing. So if you’re bad at the current style of interviewing it’s going to be more work than someone fortunate enough to do well at the current fad.
snowwrestler
Is this out of date in a few little ways now?
He says the hiring market for engineers is hot… is it? Maybe for certain rare species of AI specialists, but for anyone else the going looks a good bit tougher now than it did even a couple years ago.
Also, he spends a fair bit of time encouraging people not to reveal their former salary, but in all but a few rare cases your former salary is available to your new employer via data sharing service providers. The HR team at my employer now asks applicants for their former salary strictly as a test of their honesty. And yes, have kicked competitive candidates out for giving a false number. Declining to give the number is fine, but does not create any negotiating advantage.
ashdksnndck
They can find out your salary, but they won’t know your stock, which has much higher variance for software engineers.
dtnewman
For those who prefer reading, this is more or less an audio version of of his essay from years ago: https://www.kalzumeus.com/2012/01/23/salary-negotiation/
davidmurdoch
Tangential: What's with the disclaimer about reading on an "iDevice"? Do they struggle with lots of words on a single page?
tonfa
It's from 2012, mobile device screens were way smaller.
chgs
In 2013 I was buying books on kindle and reading them on my 4s just fine
hiAndrewQuinn
This was written over 10 years ago, when such devices had much lower resolution.
whiplash451
The main thing that changed since when this article was written is that companies are much less in a rush than they used to to hire people, which means that a lot of mechanics described in the article fall apart.
In particular, companies don't really look at how much they spend to hire someone. They'll just wait for the hiring committee to be "really excited" about a candidate before making an offer.
giantg2
I might lose my job very soon. I assume I won't be able to negotiate salary at my new job... if I get a new job. I assume I will end up with a big pay cut in this market.
null
cornhole
I just ask some stupid amount of money first because there is literally no cost or downsides.
testfrequency
I can tell you that most hiring managers and recruiters find it offensive, and the conversation quickly shifts to how much do we care about playing games with this candidate who seems a bit reckless in suggesting a salary they know isn’t realistic.
baxuz
I find it offensive and playing games when they won't give me the ranges.
I've been at companies which paid me 1/2 of what some my peers earned. I don't have time for these games. Give me your salary ranges for the position and I can negotiate. Otherwise I'm pulling numbers out of my ass.
The recruiter wants to pay me as close to 0 as possible, and it's up to me to push back on that.
null
cornhole
hiring managers and recruiters are not people so its ok
k__
Yeah.
The only good jobs I got directly from CEOs.
null
nrclark
When talking with recruiters, I usually decline to state the first number politely - saying something like "salary isn't the only reason why I'd take a job, and I always look at the whole package as well as the role. I'm sure your offer will be competitive."
On forms where I have to put a range, I put $1.00.
buttocks
Life was good for engineers 15 years ago!
dan-robertson
Ok, but also engineers in the US are much better paid now than 15 years ago. In 2010 the big story in engineer comp was that Google, Apple, and others were conspiring to avoid competing for talent (and thereby driving pay up) [1]. It was roughly Facebook not being part of this scheme that started driving salaries up. A few years ago the popular story was that people were switching jobs because their compensation had been inflated by massive share price increases (ie you are promised x shares vesting over 4 years at sign on with refresher grants, but the value of x shares goes up a bunch over those years) and they wanted to maintain their high realised comp even though shares were no longer rising as much. The only way for that to happen was engineers getting paid very well.
[1] https://en.wikipedia.org/wiki/High-Tech_Employee_Antitrust_L...
grepLeigh
It still is! I think getting your foot in the door is much more difficult now compared to 5-6 years ago, similar to difficulty finding entry level work in 2008-2009 financial crisis.
Market conditions aside, the points the OP blog post makes about asymmetrical value are evergreen.
null
Patrick's "salary negotiation" piece has made the rounds here a number of times, and I always have the same reaction to it: It probably works, if you are already a software celebrity like Patrick, or some other highly sought after Captain of the software engineering industry. For us rank-and-file employee number 12887's, I just don't see it working--I've really never negotiated compensation significantly successfully in my 25+ year career. Here's how salary negotiation usually goes if you're not someone like John Carmack:
Them: We'd love to have you join the team! Here's your compensation letter, please get back to us within the next 2 weeks and we'll move forward.
You: Thank you, I believe my background and skills would suggest a compensation of $1.5X instead of $X. Is this possible with your hiring budget?
Them: The offer is for $X and we believe it is appropriate for your level.
You: Maybe my level should be higher then?
Them: Ha Ha
You: Looking at [website A, B, C] I see the average compensation for this role is $1.25X. Surely there is room to move this upward.
Them: We don't agree with that data. The offer is for $X. Shall we move forward?
You: What about equity or bonus, is there any flexibility with those numbers, or vacation time, or...?
Them: The offer is for $X. If you don't want the job, we can move on to one of our other 20 candidates who are in the pipeline for the role.
That's basically how salary negotiations went for almost the entirety of my career. If your results have been different, I'm kind of envious!