All guides

Software engineer salary by level

Software engineer salary rises steeply with level. Among software engineering jobs on PickedJobs that state a yearly US-dollar salary, the median is $127,000 for interns, $140,000 for junior engineers, $179,500 for mid-level engineers, $193,700 for senior engineers, $234,950 for staff and lead engineers and $260,000 for principal engineers. These figures come from 13,884 live listings as of November 11, 2026.

They are base salary only, using the midpoint of each listed range. Equity and bonuses come on top, and at large public tech companies they can add a lot.

By PickedJobs · Updated · Live figures from 62,231 open jobs, as of (method)

Median base salary by level

LevelMedianMiddle half of listingsListings
Internship$127,000$122,500–$131,50026
Junior$140,000$113,613–$164,075356
Mid-level$179,500$150,000–$225,0003,698
Senior$193,700$168,000–$220,0005,371
Staff / lead$234,950$201,500–$270,0003,624
Principal / director$260,000$220,000–$305,300809

“Middle half” is the 25th to 75th percentile: half of the listings at that level fall inside it. Levels with fewer than 20 salaried listings are left out.

What the levels mean

  • Junior: roughly 0–2 years. You deliver well-defined tasks with review and guidance.
  • Mid-level: roughly 2–5 years. You own features end to end with little supervision.
  • Senior: usually 5+ years. You lead projects, make design decisions and raise the level of the people around you.
  • Staff / lead: you set technical direction across a team or several teams, or lead a team.
  • Principal / director: organization-wide technical or people leadership.

Years are only a rough guide. Each company has its own ladder and titles, so the same title can mean different scope at different companies. Compare responsibilities, not just titles.

By specialty

SpecialtyMedianListings
ML$229,5002,467
Backend$205,0002,519
Frontend$200,000442
Infra$200,0003,468
Mobile$200,000262
Full-stack$198,0001,954
Data$180,0001,221

These mix all levels, so a specialty with more senior openings shows a higher median. For more, see machine learning engineer jobs and the market statistics.

Remote, hybrid and onsite

Across all tech roles that disclose pay, the median is $205,000 for hybrid jobs, $200,000 for onsite jobs and $185,000 for remote jobs limited to certain regions. Location still drives pay more than the arrangement does: many companies set bands by city or country.

Why these numbers differ from other salary sites

  • Base, not total compensation. Sites built on self-reported offers, such as Levels.fyi, include stock and bonus, so their totals run higher.
  • Posted ranges, not offers. Pay transparency laws in states such as California, Colorado, New York and Washington require ranges in job postings. Ranges are often wide; we use the midpoint.
  • Who is hiring. PickedJobs tracks software companies that hire through their own careers pages, which pay more than the economy-wide average. The US Bureau of Labor Statistics put the median for software developers at $133,080 in May 2024 (BLS); the median across engineering listings here is $200,500.
  • Disclosure. Only 36% of open tech listings state any salary, mostly US roles.

Using this in a negotiation

A posted range plus these medians is the strongest data you'll have in a negotiation. Our guide on how to negotiate a software engineer job offer shows how to use it, and the job offer comparison calculator adds bonus, equity and benefits to the base.

Open engineering roles; many show their salary range.

Browse software engineering jobs
All guides