This is the article I’ve been putting off. I touched on software developer pay in my data scientist comparison piece a few weeks ago, but I kept it brief because the federal survey data for tech jobs is, honestly, kind of broken. I live in Palo Alto. I run a tech company. Half the people at my kids’ school work at Google or Apple or one of the hundred startups on Page Mill Road. When I tell them the survey says software developers earn $133,000, they look at me like I told them water is dry. The number is accurate and useless at the same time, and writing an honest article about it means explaining why.
So here goes. This one is part salary guide, part confession about the limits of the data that powers this entire site.
The Survey Number (And Why It’s Both Right and Wrong)
The federal survey median for software developers is $133,080 as of the most current data. That makes it one of the highest-paying occupations in their database, behind doctors and ahead of pharmacists, lawyers, and basically every other profession that requires a graduate degree. There are about 1.79 million software developer jobs in the U.S. Growth is projected at 15% through 2034, with 129,200 openings per year. Strong numbers.
Here’s the problem. The survey measures base salary. In tech, base salary is one component of a compensation package that also includes stock grants (RSUs), annual bonuses, signing bonuses, and stock refreshers. At a company like Google, a mid-level engineer’s base might be $185K, but their total compensation is $350K because of stock. The survey doesn’t see that stock. It doesn’t see the bonus either. So the $133K median is an accurate measurement of the wrong thing if you’re trying to understand what software developers actually earn at the companies that employ the most of them.
This is a problem I don’t have with nurses or electricians or police officers. Their survey numbers are close to their real compensation. For software developers, the gap between the official median and reality can be $100K or more, and it widens at every level.
I brought this up in the data scientist article too, and I’ll keep beating this drum because I think it matters: if you’re choosing a career path and you look at the survey side by side for software developer vs nurse practitioner ($132K), the numbers look similar. But the actual earnings at year five are wildly different for someone who lands at a FAANG company versus someone in a hospital. The survey flattens that distinction.
The State-by-State Data (Which Is Still Useful, Just Incomplete)
Even knowing what I know about total comp, the state data tells you something real about where the demand is and where companies are willing to pay for base salary alone.
California is first at $170,910 median. I won’t belabor this because I’ve said “California is first” in twelve articles now and it’s starting to feel like a running joke. But the state employs more software developers than any other, nearly double Texas which is second. The San Jose metro is absurd: $180K median base. San Francisco is $161K. Those are base numbers; total comp in those markets for mid-level engineers is north of $300K.
Washington is second at about $151K. Seattle is the reason; Amazon and Microsoft are headquartered there, and after cost-of-living adjustment Washington actually comes out ahead of California. About 30% of Seattle’s employed residents work in tech, which is a crazy concentration when you think about it. New York is third, followed by Massachusetts and Maryland. All above $130K.
What’s interesting is how far down the list you have to go before the salary drops below six figures. Even Iowa and Nebraska pay software developers above $90K. Mississippi is last at $86,460, which is still more than the median salary for all workers in most states. The floor for this occupation is high, and it’s high even in places where the tech industry barely exists because every hospital, bank, insurance company, and logistics firm needs developers now.
Mississippi at the bottom again, for the twelfth time in twelve articles. At some point it stops being a pattern and starts being a law of nature.
The Total Comp Reality
I went into this in the data scientist article but I’ll expand here because this is the standalone piece.
Levels.fyi collects verified total compensation data from tech workers. Their numbers for software engineers at major companies, based on what I’ve seen and what matches what people around me earn:
New grad (L3 at Google, E3 at Meta): $180K to $220K total. This is someone right out of college. It’s more than a pharmacist earns with a doctoral degree in most states. I know how that sounds. It’s accurate.
Mid-level (L4/L5, 3-7 years): $250K to $400K. This is where the stock grants start to dominate. An L5 at Google with 5 years in might have a base of $185K, stock worth $150K a year, and a $30K bonus. The survey sees the $185K. The engineer sees $365K on their W-2.
Senior and staff (L6+): $400K to $700K. At this level the engineer is among the highest-paid non-medical, non-executive professionals in the country. Staff engineers at some companies out-earn partners at mid-tier law firms.
These numbers are geographically concentrated. An engineer at a non-tech company in Ohio or Georgia might earn $110K total comp with no stock. That’s still good money, but it’s a different universe from what I just described. The tech salary conversation is really two separate conversations that people keep mashing together.
Remote Work Changed the Map (Sort Of)
I know a guy who was a senior engineer at a startup in SF making $220K. He moved to Boise during COVID, kept his job, kept his salary. His mortgage went from impossible to trivial. For about two years that was the play: earn Bay Area money, live somewhere cheap. Geographic arbitrage, people called it.
Then the correction came. Some companies started adjusting pay based on location. Others went back to requiring in-office work. And some (Spotify, Airbnb, a few others) said they’d pay the same everywhere and let people live wherever they want. So there’s no single answer to “can I earn SF pay from a cheaper state?” It depends on the company.
What I can tell you from the survey data is that states without traditional tech hubs have seen software developer salaries climb faster than the national average over the past few years. Utah, North Carolina, Tennessee, and Colorado all have growing tech scenes, reasonable cost of living, and employers competing for talent. A $120K salary in Raleigh or Salt Lake City buys you a better life than $170K in San Jose; the math isn’t even close. I covered cost-of-living adjustments in practically every article in this series and the lesson is always the same: raw salary is a bad proxy for financial wellbeing.
The AI Question (Which Is Real This Time)
In the truck driver article I said autonomous trucks weren’t a near-term threat and I believe that. With software development the situation is different, and I want to be straight about it because this is the industry I work in.
AI coding tools are real. GitHub Copilot, Cursor, Claude Code, and a bunch of others are making developers measurably more productive. Companies report 40% to 55% more code output per sprint from engineers using these tools. The math is straightforward: if a team of ten engineers can now do the work of fifteen, you need fewer engineers to build the same thing.
This is showing up in the market. Software engineering job postings have softened compared to prior years. Entry-level hiring at the biggest tech firms has pulled back from peak levels. Layoff cycles have included roles explicitly tied to AI and automation alongside broader restructuring. That’s new compared to the pandemic-era overhiring story.
At the same time, I don’t think software development is going away. What I think is happening is a compression at the entry level and an expansion at the senior level. Junior roles (write this function, fix this bug, build this CRUD app) are the ones most exposed to AI assistance. Senior roles (design the system, make architectural decisions, figure out what to build in the first place) are the ones AI can’t do and probably won’t for a long time. Industry reporting suggests companies are still rebalancing teams rather than eliminating engineering entirely.
My honest take: if you’re entering software development now, you need to get good fast. The days of coasting on knowing React basics and collecting $120K in every market are harder than they used to be. The days of being an excellent engineer who can architect systems and ship products and think clearly about hard problems are not over; the demand for those people is still intense. The career is narrowing at the bottom and widening at the top. Act accordingly.
If You’re Choosing a State
Highest total comp: California or Washington, targeting a big tech company. The numbers speak for themselves.
Best financial outcome after cost of living is a different question. Washington edges out California because of no state income tax. Texas is strong for the same reason, and Austin’s tech scene is mature enough to support senior-level careers without FAANG. North Carolina (Raleigh-Durham), Utah (Salt Lake City), and Colorado are all rising.
And if you can lock in a remote role at SF or NYC rates and live in Indiana or Tennessee, you’re in an incredible position. Some companies still pay location-agnostic; others don’t. Make sure the policy is in writing.
We’ve got full breakdowns for software developers, software QA testers, web developers, computer programmers, data scientists, database architects, information security analysts, and computer and information systems managers. State hubs for California, Washington, New York, Texas, and Massachusetts have every tech occupation ranked by pay.