You crushed the interviews. Multiple offers landed in your inbox. Now comes the part most engineers get wrong: negotiation.
The average engineer leaves $100k-$500k on the table during negotiation by not knowing how to negotiate effectively. This is especially true for engineers who come from low-cost-of-living countries or who haven't negotiated before.
Negotiation isn't about being aggressive or greedy. It's about getting fair market value for your skills. Here's the complete guide.
The Psychology of Negotiation
First, understand that companies expect you to negotiate. They budget for it. If you don't negotiate, you're effectively leaving money on the table.
Key truths:
-
Your leverage is highest right after the offer. Once you accept, your leverage drops to near-zero.
-
Companies have negotiation budgets. The first offer isn't their maximum.
-
Negotiation doesn't reduce your offer. Companies know that people negotiate. They won't rescind offers because you asked for more.
-
You're not being greedy. You're being professional.
-
Timing matters. Negotiate before you accept. After acceptance, negotiation becomes problematic.
What You're Actually Negotiating
Your "offer" isn't just salary. It includes:
- Base salary (most important, most flexible)
- Sign-on bonus (company-dependent, often flexible)
- Stock/equity (for private companies; for public companies, less flexible)
- Annual bonus (for some roles, negotiable)
- Relocation package (if applicable)
- Vacation days (usually fixed, but worth asking)
- Remote work flexibility (increasingly common)
- Promotion timeline (valuable, often overlooked)
- Team/role specifics (which team, which projects)
- Start date (if you need more time to wrap up current role)
Most engineers focus only on base salary. Smart engineers negotiate all of these.
The Negotiation Framework (5 Steps)
Step 1: Do Your Research (Before You Receive the Offer)
Know your market value:
Use these resources:
- Levels.fyi: Actual engineer salaries from FAANG and other companies
- Blind: Anonymous salary discussions
- Comparably: Industry salary data
- PayScale: Salary benchmarks
- Glassdoor: Company-specific salaries
- Lean In: Women's salary data
- Color Stack: Salary data for underrepresented groups
What to research:
- Your role level (junior, mid, senior, staff)
- Your location (NYC, San Francisco, Seattle, India, etc.)
- Your company
- Your years of experience
- Your degree/educational background
Example: As a mid-level engineer in San Francisco at a FAANG company, the market rate in 2025 is roughly:
- Base: $190k-$220k
- Sign-on: $50k-$100k
- Stock (annual): $150k-$250k
- Bonus: 15-25% of base
- Total comp: $400k-$600k
Know these numbers before your offer arrives.
Step 2: Receive the Offer
The recruiter will present the offer. They'll say something like:
"Congratulations! We're excited to offer you the position of Senior Software Engineer at [Company]. Here's the offer:
- Base salary: $180k
- Sign-on bonus: $40k
- Annual stock grant: $120k vesting over 4 years
- Performance bonus: 15% of base
Please let me know if you have any questions or if you'd like to discuss."
What to do:
- Say thank you (be gracious)
- Don't accept immediately (even if you love it)
- Ask for time to review (at least 24 hours, ideally 2-3 days)
- Say you're interested but want to review the terms (telegraphs that you'll negotiate)
Good response:
"Thank you so much! I'm excited about this opportunity. Let me review the offer and I'll get back to you in 48 hours with any questions or discussion points."
Don't say:
- "I need to think about this" (sounds unsure)
- "This is lower than I expected" (puts them on defensive)
- "I'll accept but I want to discuss..." (now they think you've accepted)
Step 3: Prepare Your Negotiation
Calculate your counter:
Take your market research and set a target:
If the market range for your role is $190k-$220k base, and they offered $180k, your counter might be:
- Base: $215k (high end of market)
- Sign-on: $70k (standard for mid-market)
- Stock: $180k (increase from $120k)
Total counter: $215k + $70k + $45k/year equity = ~$330k annually (vs. their $280k offer)
Prioritize:
- What matters most to you? (Base salary? Equity? Flexibility?)
- What are you willing to move on? (Vacation days? Start date?)
- What are hard constraints? (Minimum acceptable salary?)
Example priority:
- Priority 1: Base salary to $210k (non-negotiable)
- Priority 2: Sign-on to $70k (important)
- Priority 3: Stock to $180k (flexible)
- Willing to move on: Vacation days, exact start date
Prepare your pitch:
"I'm very interested in joining the team. Based on my research and my background, the market rate for this role in San Francisco with my experience is around $210-$220k base. I'm also seeing sign-on bonuses in the $60-$80k range. I'd like to discuss:
- Base salary: $215k
- Sign-on bonus: $70k
- Equity: $180k annually
I believe these align with market rates and my qualifications. What flexibility do you have in these areas?"
This is professional, data-backed, and not aggressive.
Step 4: Execute the Negotiation
Schedule a call (not email):
"Thanks for the offer. I'd like to discuss a few things. Can we schedule a 15-minute call tomorrow?"
Negotiation is always better on a call than via email. It's harder for them to say "no" when they hear your voice, and you can respond dynamically.
On the call:
-
Reaffirm your interest: "I'm really excited about this opportunity and the team..."
-
Present your data: "I've done market research, and for this role in San Francisco with my background, the market rate is $210-$220k base..."
-
Ask for their flexibility: "What flexibility do you have in base salary and sign-on?"
-
Be collaborative: "Let's see if we can find a structure that works for both of us."
-
Anchor high but reasonably: If market is $210k, ask for $220k (not $300k, which is unreasonable)
-
Be silent after asking: Let them respond. Don't fill the silence. It's uncomfortable, but it works.
Their responses and how to handle them:
Response 1: "That's above our band for this level."
Your counter:
"I understand. However, given the market rates I've researched and my experience, I believe $215k is fair. Are there other components we can adjust—sign-on, equity, or timeline—to find a package we're both comfortable with?"
This shows flexibility while maintaining your position.
Response 2: "We can't go higher on base, but we can increase equity or sign-on."
Your counter:
"I appreciate that. Let's discuss the components. If base stays at $180k, could we increase the sign-on bonus to $80k and equity to $180k? That would get us to a competitive total package."
You're trading base for sign-on/equity, which is often acceptable.
Response 3: "This is our best offer. Take it or leave it."
Your counter (carefully):
"I appreciate the offer. I need to think about this. Let me get back to you in 24 hours."
Then you can:
- Talk to other companies (if you have offers)
- Accept the offer
- Decline and interview elsewhere
If they say "take it or leave it," your negotiation leverage is exhausted.
Step 5: Close the Negotiation
Once you've reached agreement, get it in writing:
"Great, thank you for working with me on this. So to confirm, the offer is:
- Base: $210k
- Sign-on: $70k
- Annual equity: $180k
- Start date: [date]
Can you send me the updated offer letter?"
Never negotiate further after accepting. Once you've accepted, your leverage is gone.
Advanced Negotiation Tactics
Tactic 1: The Competing Offer
If you have multiple offers, use them:
"I have another offer from [Company] with a base of $220k. I prefer your company and team, but I want to make sure the package is competitive. Can we match or improve on that offer?"
This is powerful because it's based on real data (another offer), not hypothetical market rates.
Important: Only do this if you actually have another offer. Don't bluff.
Tactic 2: The Delay
Sometimes, the longer you wait, the more they want you to accept. After 2-3 days of discussion:
"I'm very interested, but I want to think about this carefully given the financial implications. Can I get back to you in 2-3 days?"
This buys you time and sometimes prompts them to improve the offer.
Tactic 3: The Third-Party Reference
If you know someone at the company, you can reference them (subtly):
"I talked to [Engineer], who was very positive about the company culture and growth opportunities. That's a big factor for me in this decision."
This reminds them that current employees vouch for the company, which builds confidence.
Tactic 4: The Request for Lower Priority Items First
Ask for equity/sign-on increases before base salary. It's often easier for recruiters to increase these.
"I'm very interested. A few things: Can we look at the equity—would $200k annually be possible? And the sign-on bonus—is there flexibility to move it to $75k?"
Only after these are settled do you ask for base.
What NOT to Do
Don't be aggressive
Don't say "That's insulting" or "I'm worth way more."
Don't negotiate via email
Always call. It's more personal and harder to decline.
Don't demand. Discuss.
"I'd like to discuss..." not "I need...you must..."
Don't negotiate after accepting
Once you accept, negotiation is over.
Don't negotiate with the wrong person
Negotiate with the recruiter or hiring manager. Don't go straight to the CEO.
Don't bluff
If you say you have another offer, be ready to show it.
Don't accept immediately even if satisfied
Always ask for 24 hours to review, even if the offer is perfect. It signals professionalism.
Industry-Specific Negotiation Tips
For FAANG Companies
FAANG companies have rigid salary bands, but they're more flexible on equity and sign-on. Focus negotiation there.
For Startups
Startups have less cash but more flexibility on equity. Negotiate equity heavily if the company is promising.
For Remote Companies
Remote companies can hire globally, which impacts salary negotiation. But they also have larger pools of candidates, so your leverage might be lower.
The Long Game
Negotiation isn't just about this offer. It's about building a reputation as a professional who knows their worth. Companies respect candidates who negotiate respectfully.
More importantly, accepting significantly below market rate starts you on a lower trajectory. If you negotiate 10% higher ($20k on a $200k base), and this becomes your new baseline, that compounds over your career.
$20k now = $200k+ over your next 10 career moves (assuming 3% raises compounding).
Common Mistakes Engineers Make
Mistake 1: Not researching beforehand
You can't negotiate effectively without knowing market rates. Research before the offer.
Mistake 2: Accepting immediately
Even if the offer is perfect, ask for 24 hours. It signals professionalism.
Mistake 3: Over-negotiating
Don't push too hard. If they offer $200k and you ask for $300k, you'll likely get rejection.
Mistake 4: Negotiating only base
Negotiate the whole package: base, sign-on, equity, benefits, flexibility.
Mistake 5: Being combative
Negotiation is collaborative. Stay friendly. "Let's work together to find a package we're both happy with."
Mistake 6: Ignoring total compensation
A lower base with higher equity can be better. Know your actual total comp.
Final Thoughts on Negotiation
Great engineers negotiate because they understand their value. Weak negotiation usually comes from:
- Lack of confidence in your abilities
- Not knowing market rates
- Fear of offending the company
- Pressure to accept quickly
Address these:
- You got the offer. They want you. Be confident.
- Research market rates before the interview season.
- Companies expect negotiation. You won't offend them.
- Always ask for time before accepting.
Negotiation is a skill. Practice it. Get better at it. It's worth hundreds of thousands of dollars over your career.
Interview with confidence using Phantom Code (phantomcode.co). Ace the technical rounds that lead to offers, so you can negotiate from a position of strength. Available for Mac and Windows, starting at ₹499/month.