Um momento
0x70Lesson 8 of 10

Compare offers side by side

Compare offers over several years, not just year one.

20 min 5-question quiz 1 code exercise
By the end of this lesson you can
  • Compare offers year by year and over four years.
  • Account for different vesting schedules.
  • Weigh non-financial factors.

When offers differ in shape - one with a higher base, another with more equity or a large signing bonus, one vesting evenly and another back-loaded - comparing a single year misleads you. Lay the offers out year by year, then weigh what the numbers do not show.

A fair comparison

  • Year by year: base + bonus + equity vesting that year + one-time payments that year.
  • Four-year total: the sum across the vesting period, before refreshers.
  • Risk-adjust equity: public RSUs are close to cash; private options deserve a discount.
  • Non-financial factors: the team and manager, growth and learning, level and title, stability, remote policy, commute, and the work itself.
offer.py
1offers = {
2    "Even": (160_000, 200_000, [25, 25, 25, 25], 0),
3    "Back-loaded": (150_000, 240_000, [5, 15, 40, 40], 30_000),
4}
5for name, (base, grant, schedule, signing) in offers.items():
6    year1 = base + grant * schedule[0] // 100 + signing
7    total = 4 * base + grant + signing
8    print(f"{name}: year 1 = {year1:,}, 4-year total = {total:,}")
Output
Even: year 1 = 210,000, 4-year total = 840,000
Back-loaded: year 1 = 192,000, 4-year total = 870,000

The back-loaded offer pays less in year one but more over four years - if you stay four years. If you might leave after two, the even schedule wins. Your plans change which offer is better, which is why the year-by-year view matters. It is also a negotiating point: ask for a larger signing bonus to smooth a back-loaded first year.

Key takeaways

  • Compare year by year and over the full vesting period.

  • Vesting schedules and signing bonuses change the shape of an offer.

  • Weigh team, growth, and stability alongside the numbers.

Lesson quiz

5 questions · pass with 4 correct · up to 50 XP

Passing this quiz completes the lesson and keeps your streak going. Questions you miss come back in review sessions later.

Practice: run the numbers

Use short Python programs to calculate total compensation, vesting, market percentiles, and counteroffers. These exercises run locally in your browser.

Exercise 1

Compare offers over four years

+25 XP

Read a count n, then n lines of name base grant p1,p2,p3,p4 signing, where the percentages are the yearly vesting schedule. For each offer compute year one (base + grant * p1 // 100 + signing) and the four-year total (4 * base + grant + signing). Print name: year 1 = X, 4-year total = Y for each offer, highest four-year total first (ties alphabetically), with thousands separators.

  • Even versus back-loaded
  • Tie broken by name
main.py
Loading editor…

Python runs in a sandboxed browser worker with a 60 second time limit. Its runtime loads from the Pyodide CDN; your code stays in this browser.

Questions about this lesson

Stuck? Ask. Figured something out? Share it. Explaining is one of the best ways to learn.

Loading posts…

Gostou da aula? 😆👍
Apoie nosso trabalho com uma doação: