Skip to content
Salary Negotiation Guide: Compensation, Equity, and Total Offer Breakdown

Salary Negotiation Guide: Compensation, Equity, and Total Offer Breakdown

DodaTech Updated Jun 20, 2026 8 min read

Salary negotiation is the process of discussing compensation with an employer after receiving a job offer — covering base salary, bonuses, equity, benefits, and other components that make up your total compensation package.

What You’ll Learn

  • How to research market rates for your role and location
  • Understanding RSUs, stock options, and equity compensation
  • How to evaluate and compare total compensation packages
  • Negotiation strategies and tactics that work
  • How to choose between multiple offers

Why Negotiation Matters

The single highest-leverage financial decision of your career is your first job offer — and every subsequent offer builds on it. A $10,000 difference in starting salary compounds to over $500,000 over 30 years (assuming 5% annual raises). Yet 55% of software engineers accept the first offer without negotiating. Learning to negotiate effectively is worth more than any LeetCode problem you’ll ever solve.

DodaTech believes in transparent compensation — engineers at Doda Browser and Durga Antivirus Pro are encouraged to negotiate and are provided with market data to make informed decisions.

Learning Path

    flowchart LR
  A[Interview Questions] --> B[Mock Interviews]
  B --> C[Negotiation Guide<br/>You are here]
  C --> D[Offer Evaluation]
  D --> E[Career Growth]
  style C fill:#f90,color:#fff
  

Total Compensation Breakdown

Total Compensation (TC) = Base Salary + Bonus + Equity + Benefits + Signing Bonus

Example: Senior Engineer at a public tech company
Base Salary:        $160,000
Annual Bonus:        $24,000  (15% target)
RSUs (vested/yr):    $40,000  ($160k over 4 years)
Signing Bonus:       $30,000  (one-time)
Benefits:            $15,000  (health, 401k match, etc.)
─────────────────────────────────────────
Year 1 TC:          $269,000
Year 2-4 TC:        $239,000/year

Base Salary

The fixed annual cash compensation. This is the most negotiable component and the foundation for future offers.

Annual Bonus

Typically 10-20% of base salary for mid-level, 20-40% for senior roles. Some companies guarantee first-year bonuses; others are performance-based.

Equity Compensation

RSUs (Restricted Stock Units)

# RSU valuation for a public company
offered_rsus = 1000  # shares offered
current_price = 150  # current stock price
total_value = offered_rsus * current_price  # $150,000
annual_vest = total_value / 4  # $37,500/year (standard 4-year vest)

# With 15% annual stock appreciation:
def projected_rsu_value(initial_shares, price, years=4, growth=0.15):
    total = 0
    for year in range(years):
        vest = initial_shares // 4
        total += vest * price * (1 + growth) ** year
    return total

print(f"Projected RSU value: ${projected_rsu_value(1000, 150):,.0f}")
# Output: Projected RSU value: $187,612

Stock Options (Startups)

# Option valuation for a private company
option_count = 10000      # options granted
exercise_price = 2.00     # strike price
current_value = 0.50      # 409A valuation (lower than strike = underwater)
potential_value = 15.00   # estimated exit value

# Current value (if you exercise today)
current_profit = option_count * (current_value - exercise_price)
# Result: negative (underwater — no point exercising)

# Potential value (if company exits at estimated value)
potential_gain = option_count * (potential_value - exercise_price)
print(f"Potential gain at exit: ${potential_gain:,.0f}")
# Output: Potential gain at exit: $130,000

Signing Bonus

One-time cash payment, typically $10,000-$50,000 for mid-level, up to $100,000+ for senior roles. Repayable if you leave within 1-2 years (clawback).

Researching Market Rates

Sources

  1. Levels.fyi — Best for tech company compensation data
  2. Glassdoor — Salary estimates by role and company
  3. Blind — Anonymous compensation sharing
  4. Tequity — Equity benchmarking
  5. H1B Salary Database — Public data for visa-sponsored roles

Factors Affecting Compensation

FactorImpact
LocationSan Francisco/NYC premium: 20-40% above national average
Company sizeLarge public tech: highest total comp
ExperienceEach year adds ~5-10% to base
SpecializationML/AI, security, infrastructure: premium skills
Competing offersSingle strongest negotiating lever

The Negotiation Process

Before the Offer

  1. Know your number: Determine your minimum acceptable compensation and your target
  2. Have alternatives: The best negotiator is the one who can walk away
  3. Research: Know the company’s compensation bands and levels

When You Receive the Offer

# Calculate your target based on research
class OfferAnalysis:
    def __init__(self, base, bonus_pct, rsu_total, sign_on):
        self.base = base
        self.bonus = base * bonus_pct
        self.rsu_annual = rsu_total / 4
        self.sign_on = sign_on
        self.year1_tc = base + self.bonus + self.rsu_annual + sign_on
        self.yearly_tc = base + self.bonus + self.rsu_annual

    def summary(self):
        return f"""
Year 1 TC: ${self.year1_tc:,.0f}
Year 2+ TC: ${self.yearly_tc:,.0f}
Base: ${self.base:,.0f}
Bonus: ${self.bonus:,.0f}
RSU/yr: ${self.rsu_annual:,.0f}
Signing: ${self.sign_on:,.0f}
        """

offer = OfferAnalysis(
    base=155000,
    bonus_pct=0.15,
    rsu_total=120000,
    sign_on=25000
)
print(offer.summary())

# Output:
# Year 1 TC: $233,250
# Year 2+ TC: $208,250

Responding to an Offer

Step 1: Express enthusiasm

“Thank you for the offer. I’m very excited about the role and the team. I’d like to take a few days to review the details carefully.”

Step 2: Present your case

“Based on my research and experience, and considering my competing offer from [Company], I was hoping the base could be closer to $170,000. I have [specific achievements/skills] that I believe justify this level.”

Step 3: Negotiate components

If base is firm, ask for:

  • Higher signing bonus
  • More RSUs
  • Performance bonus guarantee
  • Earlier equity refresher
  • Title uplift

Scripts for Common Situations

When base is non-negotiable:

“I understand the base is firm at this level. Could we increase the signing bonus or equity to make the total package more competitive?”

With a competing offer:

“I have an offer from [Company] for $Y total compensation. I’d prefer to join your team — can you match or come closer to this?”

At the partner level:

“I’d like to discuss the leveling. My experience [specific examples] aligns more with the senior level. Could we revisit the leveling based on the interview feedback?”

Comparing Offers

offers = [
    {
        "company": "Startup A",
        "base": 140000,
        "bonus": 0,
        "equity_value": 50000,  # Estimated annual value
        "equity_type": "options",
        "sign_on": 10000,
        "benefits": 12000,
        "culture_score": 8,
        "growth_score": 9,
    },
    {
        "company": "Big Tech B",
        "base": 165000,
        "bonus": 24750,
        "equity_value": 45000,
        "equity_type": "rsu",
        "sign_on": 30000,
        "benefits": 18000,
        "culture_score": 7,
        "growth_score": 7,
    },
]

for o in offers:
    tc = o["base"] + o["bonus"] + o["equity_value"] + o["sign_on"] + o["benefits"]
    print(f"{o['company']}: ${tc:,.0f} TC  |  Culture: {o['culture_score']}/10  |  Growth: {o['growth_score']}/10")

Decision Framework

Beyond total compensation, evaluate:

  • Growth: Will you learn? Will your skills grow?
  • Impact: Will your work matter?
  • Culture: Do you like the people and environment?
  • Stability: Is the company financially stable?
  • Location: Remote? Office? Commute?
  • Title: Does it advance your career trajectory?

Common Negotiation Mistakes

1. Not Negotiating at All

55% of engineers accept the first offer. The company expects you to negotiate — the first offer is rarely their best.

Fix: Always ask for something. Even “could you review the leveling?” opens the door.

2. Negotiating Before You Have an Offer

Discussing salary before the company has decided they want you weakens your position.

Fix: Say “I’d like to discuss compensation once we both agree this is a good fit.”

3. Lying About Competing Offers

Companies may verify competing offers. Getting caught destroys trust and can result in offer revocation.

Fix: Only mention offers you actually have. If you don’t have one, negotiate on market data.

4. Focusing Only on Base Salary

Base salary is important, but equity and signing bonus can be more flexible.

Fix: “If the base is firm, could we increase the signing bonus or equity?”

5. Being Adversarial

Negotiation doesn’t have to be confrontational. The recruiter is on your side — they want to close you.

Fix: Frame it as collaboration: “Help me understand what’s possible so we can find a package that works for both of us.”

6. Accepting Immediately

Even if you love the offer, accepting immediately leaves money on the table.

Fix: “Thank you, I’d like to take 2-3 business days to review the details.”

7. Not Considering Total Compensation

A $10,000 base difference matters less than $100,000 in equity difference.

Fix: Always evaluate total compensation, not just base salary.

Practice Questions

1. What are the five components of total compensation?

Base salary, annual bonus, equity (RSUs/options), signing bonus, and benefits.

2. What is the difference between RSUs and stock options?

RSUs are actual shares granted at hiring, vesting over time. Stock options give you the right to buy shares at a fixed price (strike price) later. RSUs have value even if the stock price stays flat; options only have value if the stock price exceeds the strike price.

3. How do you research market rates for a role?

Use Levels.fyi, Glassdoor, Blind, and the H1B salary database. Factor in location, company size, experience level, and specialization.

4. What should you do if base salary is non-negotiable?

Ask for other components: higher signing bonus, more equity, performance bonus guarantee, better title, earlier refresher, or relocation assistance.

5. How do you handle a situation with no competing offers?

Negotiate based on market data: “Based on my research, the market rate for this role is $X. My skills and experience align with the higher end of this range.”

Challenge: Research current market rates for your role and experience level using Levels.fyi and Glassdoor. Create a compensation target range with minimum, target, and stretch numbers for base salary, bonus, and equity.

FAQ

When should I start negotiating?
After you receive the written offer. Never negotiate before you have an offer in hand.
How much can I realistically negotiate?
20-30% above the initial offer is possible, especially if you have competing offers. The average increase is 10-15%.
Should I negotiate equity at a startup?
Startup equity is speculative. Focus on base salary and cash compensation. Evaluate equity potential separately as a lottery ticket.
How long can I take to decide on an offer?
Standard is 1-2 weeks. If you need more time, ask for an extension. Most companies will grant 1 additional week.
Should I negotiate if I’m happy with the offer?
Yes — companies expect negotiation. Not negotiating may actually disappoint recruiters who think you’re not engaged or assertive.

What’s Next

TutorialWhat You’ll Learn
Mock Interview PracticeFull-length interview simulations
Career Growth for EngineersAdvancing your engineering career
Technical Interview StrategiesComplete interview preparation guide

Built by the developers of Doda Browser, DodaZIP, and Durga Antivirus Pro. Updated 2026-06-20.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro