Tech Salary Negotiation: Lessons Learned
Negotiating salary is uncomfortable. Most developers leave money on the table because they don’t know how—or are too anxious to try. Here’s what I’ve learned from both sides.
The Uncomfortable Truth
Companies budget for negotiation:
Initial offer: $140,000
Internal budget: $165,000 (15% flexibility)
Final offer (if you negotiate): $155,000
You left $15,000 on the table by not asking.
They expect you to negotiate. Not negotiating saves them money.
Before the Offer
Know Your Market Value
Research salary data:
| Source | Strengths |
|---|---|
| levels.fyi | Real company data, transparent |
| Glassdoor | Wide coverage, variable accuracy |
| LinkedIn Salary | Network-based, decent signal |
| Blind | Anonymous, can be noisy |
| H1B data | Public, real salary data |
For a Senior Engineer in SF (2021):
Company Base Stock Total Comp
FAANG $180-220K $200-400K $350-600K
Unicorn $160-200K $100-300K $260-500K
Series B-C $150-180K $50-150K $200-330K
Local $120-160K Variable $120-200K
Know Your BATNA
BATNA = Best Alternative to Negotiated Agreement
If you have competing offers:
"I'm excited about this role, but I have another offer at $X"
If you don't:
"Based on my research and experience, I'm looking for $X"
Multiple offers = leverage. But you can negotiate with one offer too.
Document Your Value
Prepare specific contributions:
## My Recent Impact
- Led migration that reduced costs by $400K/year
- Built system handling 10M requests/day
- Mentored 3 engineers to promotion
- Shipped feature that increased retention 15%
This justifies higher compensation.
During Negotiation
Never Say the First Number
Recruiter: "What are your salary expectations?"
Bad: "I'm looking for $150K"
(You just anchored low)
Better: "I'm focusing on finding the right role.
Can you share the range for this position?"
(Let them anchor first)
If pressed: "Based on my research and the scope of the role,
I'd expect compensation in the $X-$Y range."
(Give a range, not a number)
Negotiate Over Email
Benefits:
- Time to think
- Written record
- Less emotional
- Can consult others
"Thank you for the offer. I'm excited about the opportunity.
I'd like to take a day to review the details before discussing further."
The Magic Words
When asking for more:
"Is there flexibility on..."
"Based on my experience with X, I was hoping for..."
"I'm really excited about this role. To accept, I would need..."
"What would it take to get to $X?"
Frame it as collaborative, not adversarial.
Negotiate Total Compensation
| Component | Negotiable? |
|---|---|
| Base salary | Usually |
| Signing bonus | Often |
| Stock/equity | Sometimes |
| Start date | Usually |
| Title | Sometimes |
| Vacation | Rarely |
| Remote work | Company policy |
| Relocation | Usually |
"If the base is firm, is there flexibility on signing bonus or equity?"
What to Negotiate
At Big Tech
Base: Usually banded (limited flexibility)
Stock: More flexibility
Signing: Most flexibility
Level: Possible if borderline
Focus on: More stock/RSU, higher level
At Startups
Base: Often limited
Equity: Negotiate hard here
Cliff: Try for 6 months vs 1 year
Vesting: Monthly vs quarterly
Early exercise: Can save taxes
Focus on: Equity amount, strike price, terms
At Small Companies
Base: Most negotiable
Title: Negotiable
Vacation: Sometimes
Remote: Often
Focus on: Base salary, title, flexibility
Handling Objections
”We can’t go higher"
"I understand. Is there flexibility on the signing bonus
or additional equity to bridge the gap?"
"This is our best offer"
"I appreciate that. Before I make a final decision,
is there any flexibility on [specific component]?"
"We pay based on location"
"I understand the approach. Given my experience with X and Y,
is there room too adjust within the band?"
"The offer expires Friday”
"I'm very interested and want to make a thoughtful decision.
Could we extend to early next week?"
(Exploding offers are a yellow flag, but not always a dealbreaker.)
Tactics That Work
The Silence Technique
Recruiter: "The offer is $150,000"
You: [Say nothing for 3-5 seconds]
Recruiter: "...we might have some room on the signing bonus"
Silence feels uncomfortable. Use it.
Enthusiasm + Ask
"I'm really excited about the team and the product.
The compensation is the only thing I need to work through.
If we can get to $X, I'm ready to sign."
Show you want the job, not just the money.
Be Specific
Bad: "I was hoping for more"
Better: "I was hoping for $165,000 base"
Best: "Based on my experience with distributed systems
and the scope of this role, I was expecting
a base of $165,000"
Common Mistakes
Accepting Immediately
Offer received: "Yes! I accept!"
Next day: "Wait, I should have negotiated..."
Instead:
"Thank you! I'm excited. I'll review the details
and get back to you by Thursday."
Always take time. Even if you plan to accept.
Apologizing for Asking
"I'm sorry to ask, but..."
"I hate to do this, but..."
"This is awkward, but..."
Instead:
"Based on my research..."
"Given my experience..."
"I'm looking for..."
You’re not doing anything wrong.
Negotiating Against Yourself
"I'd like $160K... but I could do $145K if that's too high"
Instead:
"I'm looking for $160,000"
[Wait for response]
State your ask. Wait.
Final Thoughts
Negotiation is a skill. Like any skill, it improves with practice.
Remember:
- They expect you to negotiate
- Do your research
- Be specific and professional
- It’s okay to ask for time
- The worst they can say is no
That one conversation could be worth $10,000-$50,000+ over the life of that role.
Worth 15 minutes of discomfort.
The most expensive thing you never asked for is the raise you didn’t request.