Which is the best U.S. city for Software Engineers?

One of the things I think is completely fascinating in the world of Tech Recruiting is labor markets. More specifically, how do Software Engineers evaluate the complete package of an offer v. how the employer views the candidate? How and why are the markets shifting today?

Seemingly, the easiest piece to figure of “the package” are the elements that make up the cash and equity compensation: salary + bonus + equity. This is the current state of affairs in 2017 because the largest software tech companies like Google (Alphabet), Amazon, Microsoft, Facebook, etc, set the market for Software Engineering compensation. If you are uncertain of this, there’s been a fairly clear statistical linkage over the last several years between the value of RSU grants at the second and fourth year of employees at Amazon, Google, Microsoft, and housing prices in Seattle.

For Software Engineering types, inclusive of Data Scientists, when you evaluate an offer, consider the overall value on a four-year timeline as most initial equity grants vest over a four-year time period. Too, be sure to include follow-on grants that most firms give to employees who are performing well.

Beyond that, the elements that make up “the package” get murky quickly. They include the boss (arguably the most important); work values; the team; the product; company mission; personal skills development; and career opportunity. As a candidate, you need to clearly understand what you want as outcomes from the next two to five years of work in priority order, and what your employer will be able to reasonably provide within that same time period.

The demand for Software Engineering talent is so high now that recruiters are reaching out to candidates who they think are qualified even if they don’t live in the same city as the job. In other words, employers are not thinking only about their local labor market at their HQ, they are thinking about the overall U.S. labor market for these talented individuals.

Here’s the scenario: Your inbox has an InMail from the recruiter of your dream company, and they want you to move out of Seattle and go to SFO, or NYC. They’re talking about your dream product with a dream boss. Is this the dream you want as your reality?

There’s no harm in interviewing. Life is short, why not check it out? But, do your best to understand the possible financial outcomes.

As of Spring, 2017, here are the tradeoffs you’ll make with regard to Software Engineering roles in different U.S. metro areas:

  1. Seattle: Best overall value of cost of living v. salary. Housing prices, though going up, are still less than the two other major tech centers (Bay Area and NYC). Plenty of interesting products to work on. Startup scene is strong, though outclassed by the Bay Area. Overall population of software engineers (SDEs of all levels, SDETs, Data Engineers, Data Scientists) is tied w/NYC for 2nd, nationwide (signaling a healthy software engineering ecosystem, which is good for your longer-term career).
  2. Bay Area: Higher cost of living than Seattle, and though your yearly income will be higher than Seattle, it will not go as far as in the Seattle market, especially for housing (and don’t get me started on the costs of having a family here!). If you’re looking for a big payout due to working for an amazing startup, you’ll have better odds here than in Seattle as the startup scene is second to none. If you go w/a startup, plan on playing startup roulette; what’s defined as job hopping elsewhere is part of the startup game in the Bay Area. Finally, this geography has, by far, the largest population of software engineers in the U.S., at least 2x the size of each of the 2nd place cities, SEA/NYC, underscoring the amazing startup scene.
  3. NYC: Most expensive cost of living, and your salary will be a touch lower than in Seattle. But, if you’re great at Data Science, including building the data platform, and data flows, and you like the ethics of the finance field, this could be your place. Why? Finance drives the market for software engineers here. Yearly bonuses can be amazing if your product ends up being very successful. Tied for second in the nation w/Seattle for software engineering population.
  4. Boston: Cost of living is a touch higher than Seattle, but salaries are lower, so your income won’t go as far. Startup scene is not as vibrant as the Bay Area or Seattle. Fourth in software engineering population size, about a third less than NYC or Seattle metro areas.
  5. Austin: Overall, best income to reward ratio, even though your salary will be significantly lower than in Seattle. Not as vibrant a startup scene as Seattle. Comes in at a distant fifth overall in software engineer counts, with about half as many vs. the Boston metro area. Summing up: Great place to live economically, but career opportunities will be significantly reduced v. the top three (Seattle, Bay Area and NYC).
  6. Raleigh-Durham: Markedly lower cost of living v. Seattle, and your salary stretches further. Very close to Austin in terms of income to reward ratio. Nationwide, a close sixth v. Austin overall for total software engineers. Same career opportunity picture as Austin.
  7. Portland: Cost of living is just a touch below Seattle’s, but software salaries are significantly under the Seattle market, so you’ll pay to live here. Seventh largest market for software engineers in the U.S. Intel is the big fish in this market.

Summarizing, Seattle is the winner for software engineering-types. As Amazon continues to add more staff, and as more companies site development centers in this metro-region, there’s a high probability it will continue to be the best place in the U.S. to be a software engineer.

Sources: Payscale for compensation; Nerdwallet for Cost of Living information.