91 comments

[ 4.0 ms ] story [ 183 ms ] thread
(comment deleted)
Nobody in Canada can legally call themselves engineers unless they hold an Engineering degree.
*Unless they hold an engineering license, for which the requirements are more than a degree alone. Or they're the train conductor sort of engineer.
In the US everyone can be an engineer. We have Customer Service Engineers, People Engineers (Honest! I heard that the other day), People for the Ethical Treatment of Engineers. It's nuts. I used to think I was special with my BsCpE, but now I just tell people I "do computers".
Not necessarily true:

> Provincial laws, other than in Quebec and Ontario, regulate only the use of term professional engineer and not any title with the word engineer; in Quebec and Ontario, the term engineer is protected by both the Engineers Act and by Section 32 of the Professional Code.

https://en.m.wikipedia.org/wiki/Regulation_and_licensure_in_...

While this may be the rule on paper, if you have something like "Mechanical Engineer" on your LinkedIn profile, even without the word "Professional" you'll have your engineering organization send you a scary letter asking you to remove it or face the consequences. The reason is that the "Professional" part is usually implied by the "Engineer" part.
It should be like that everywhere.
I guess this is good, but what's the point in software? It is possible to do real engineering work in software, there's just no certification. I can't say I'm a "PE", but when you're regularly computing, measuring, implementing algorithms selected on a theoretical basis, and structuring a calculation to work at scale, these things seems like an engineering problem. There's just no rulebook you are forced to follow.

Is engineering building things using scientific principles, it is building things that are critical for human health and safety, or is it building things according to a code set by some authority? The licensure argument seems applicable only to the last criterion (though often it makes sense for 2 and 3 to be linked for a well explored domain).

People often think "engineers are those people that can build stuff" but at least in the nordics it is "engineers are those that studied math about building stuff" which is why an engineer here will get a computer science degree not a programming degree.
Good on this analysis for looking at the cost of living subtracted from the salary, instead of just the ratio between the two. I don't know why this calculation isn't more commonplace.
Yes, I think that net income chart is what people really should be looking at when considering salary vs cost of living but too many times these analysis are so hyper focused on home prices.
Seeing this is concerning. I'm 8 years into design Engineering(and self taught programming 12 yes) and at 125k. It seems there is no way up without extreme speciality. I know a FAANG guy making 160k doing server Java but we both think it's a temporary anomaly.

I thought embedded might pay better than design Engineering, but I haven't seen too many people saying they make significantly more.

I'm not sure how to angle my career. I've peaked?

Current thoughts, side business is ultra important for a pay raise. Maybe AI.

125k is pretty good, isn't it? 8 years into my career I was at 60k. If you want to earn more then go for it, but you shouldn't feel bad about yourself.
It's great, but I don't see a path higher.
Where are you located? The numbers are way off compared to total compensation in FAANG. A software engineer in the level immediately above junior (2-3 years experience) earns ~250k at Google or Facebook in San Francisco: https://www.levels.fyi/#
(comment deleted)
My FAANG total comp was >150k (2015, new grad, major US metro area), and that was just the regular offer they made to everyone if you didn't try to negotiate.

You can definitely go higher, at least once the current coronavirus hiring freezes get lifted.

> ...at least once the current coronavirus hiring freezes get lifted.

FWIW I heard google has slowed down but I know FB is Accelerating hiring and and onboarding new hires virtually.

If you're only after money then be a Quant for financial company. But you probably had to plan that from college.

The other option is start your own companies (plural cause it's unlikely your first several will be "the one").

$160K (US Dollars) is definitely on the lower end of FAANG for a software engineer.

My recommendation to folks is work at a FAANG at least for 3-4 years. You won’t be able to afford the kind of home you can get in Houston, Kansas City, Nashville, etc. but the experience and typical scale of problems you’ll work on is well worth it. To be clear, I mean home in terms of Seattle, Bellevue, Redmond pricing. I live in Bellevue, WA.

Source: been at two different big tech companies over the past ~10 years.

(comment deleted)
Embedded makes less for whatever reason.

What I'll say is that over $100k-ish at non-FAANG, the salaries say more about the company than the person doing the work.

> Embedded makes less for whatever reason.

Embedded goes into hardware, which is mostly a low-margin product. Whereas software products (be it FAANG or startups) either make a ton of money or are perceived by investors to have a potential to make a ton of money, so they can afford to spoil their devs. In the realm of non-product development, enterprise software can deliver milions/bilions in increased efficiency for the enterprise, so it's another field where there's enough money to spoil devs.

Margins are super low on pretty much everything that's not a B2B behemoth. And in a world where a good oscope is $30k, these companies can afford to pay their devs a bit more for the most part too; I've seen their budgets.

I think it's just a market failure where everyone already pays these wages, so no one goes out of their way to pay better. You can see this on the software side with China's "code peasants", or the UK salaries.

> Margins are super low on pretty much everything that's not a B2B behemoth

There's tons of in-house custom enterprise software development where, depending on the skills of the manager leading the project, the idea for the developed solution can be sold to upper management as the second coming of Christ (e.g. we'll spend $10m over two years on developers and potentially earn/save hundreds of millions) and this unlocks a pot of gold for the development budget. The manager will then want to hire good/expensive devs as this increases the chance that the team will deliver what he promised to the upper management. I've seen this multiple times in large organizations I've worked for.

That's equally true of a lot of hardware. I worked on a storage device that could store an exabyte. Went for 10s of millions before even talking about the support contract where the money is.

It doesn't change the underlying equation.

I suspect there's just not enough jobs like that (most is low-margin consumer electronic crap), hence there's little competition (in terms of throwing money at people) for the best people, and the salaries for that skillset don't rise. Meanwhile, all the corporations need millions of Java developers to work on important projects and it creates enough pressure on salaries.
The thing about embedded is that you can stay in it. I'm 58, and my salary hasn't stopped going up. Sure, it's not at FAANG levels, but it's better than people with 8 years of experience get. In embedded, that extra experience actually is worth more money. It's not the "you don't know this week's web framework? No job for you" world.
I'm not sure Glassdoor alone is a good source of salary data. I'm not sure a good source really exists, but I would recommend checking out sites like levels.fyi and the many H1B salary sites that seem to come and go to get more perspectives.
(comment deleted)
Thanks for the note! I suspect the issue with those sites is that (as far as I know) they don't offer data on European and Canadian salaries which I wanted for this particular comparison. Feel free to correct me though!
I think that is true, especially for H1B sites since that is US specific. But I would say comparing inaccurate data is worse than not comparing data at all.
Hmmmm, is this why Austin has had continuous surge in population (from immigration, anecedotly mostly from California) for past several years?

btw Austin is horrible, don't move here. ;)

As another person living in Austin, do you see our current pandemic increasing or decreasing immigration in the next couple years? I have a guess it will actually increase as companies shift to lower cost locations.
Increasing number of SV companies are getting comfy with remote working due to the pandemic. That’s likely to contribute to the exodus from CA as well.
I'm curious about the economic impact to CA if a lot of those jobs migrate out. But CA has plenty of other industries, so they'll be fine.
Those jobs aren’t going to other cities. They are going to other countries. The most affordable city is the US can’t even come close to the salary savings from moving to many of the well established outsourcing markets.

Remote work is incredibly popular with US companies. It’s called outsourcing and it’s about to get even more popular.

There was a comment about Paypal migrating some jobs over there. Don't know about their veracity.

Funny as I'm moving back to Round Rock, but as a remote worker. Housing is about to get more expensive I gather. :(

Moving to Austin in August after I finish my degree. Definitely feeling validated with my choice by this graph.
Curious what's so horrible about Austin, as I've thought about Texas as somewhere I might want to move sometime in the future.

Any chance you could elaborate a bit? Would appreciate the opinion of a local.

It sounds like sarcasm to me, suggesting that the only reason people would move is the salary ratio
I think it's the "This place is wonderful, you'd love it, but we don't want the whole world to move here and ruin it, so we say that it's terrible" schtick. I think the ;) in there was a hint...
Oops! Missed that. You're right. Thanks for pointing it out :)
Replying to myself since the edit window is gone:

Clearly I missed the sarcasm there. Would still love to hear a local's thoughts about why it's a good place to live!

It’s unfortunate housing has gotten so expensive there too. You get more house for the money, but if you don’t want a 45-60’ commute in traffic, and you control for the much higher property taxes, the monthly payment required for housing isn’t that much cheaper than the Bay Area these days. To be fair if you don’t mind a long commute it’s a lot more affordable... but I really dislike commuting :/
The salaries for NYC and San Francisco seem way too low. Only using base salaries significantly deflates compensation.
I can't speak for NYC, but the salary noted for SF (just under $120kpa) is almost certainly base pay for the most junior engineers you can find who aren't interns. Three years ago my team hired an intern into a FT position for $100kpa base, and it was widely acknowledged that he was grossly underpaid, because he was far below the target midpoint for the entry-level pay band (that company was targeting the 65th percentile, and he was below it by a double-digit percentage).
I know a SWE joining a small startup whose base salary is 120k. This person is a new grad and doesn't have a CS degree.

So, yeah... 120k is on the low side. I imagine they're averaging a bunch of different jobs together that aren't actually all software engineers.

> that company was targeting the 65th percentile, and he was below it by a double-digit percentage

By what metric?

Companies big enough to need real HR departments typically prescribe "pay bands" for every job position, e.g., a "Software Engineer II" might have a band between $100kpa and $130kpa, and to go above that band an employee either has to be promoted or receive a special exemption. Typically the midpoint of these bands (e.g., $115kpa in my example) are targeted to some percentile of one or more salary surveys done by companies like Aon. Those surveys are what set the "market rate", generally. At least for non-FAANG companies, though I imagine FAANG companies use them as well, but with (much) higher multiples.
Yeah, from what folks are saying here it seems I made a mistake using Glassdoor for the analysis. In the future, if I do something like this again, I'll probably use Levels.fyi or something else.
Glassdoor data seems years old at best, my conspiracy theory is that they invent data points for companies with no salary submissions
I bet most Glassdoor accounts were created years ago and haven't been touched since.
here is my own breakdown ranking cities based on software engineering pay and cost of living: (the data is about 4 months old, as I haven't updated it in a while) https://skilldime.com/blog/see-which-cities-pay-the-highest-...

I did something somewhat similar, except you can break it down by skillsets, city, remote/non-remote, etc: https://skilldime.com/app.php

This is a nice list, and your numbers for salaries look at lot better than for the submitted post, but I would question your methodology.

While housing is absolutely ridiculous in the Bay Area, the total compensation much more than offsets it without having to live in a tent. I moved from a solid job in Raleigh NC (low COL) to a good (but not especially remarkable) job in SF and my annual savings increased almost 5x. It would take a few more years here before I could _buy_ a house, if I wanted to pay the absurd local prices, but I also have the option to work here for 5-7 years total and then _retire_ to one of the many low COL areas in North America. Living in an apartment for a few years is not that big of a deal when that’s the payoff.

I would say being able to retire comfortably to a low COL area in a decade or less a lot nicer option than going straight there and _needing_ to work a full 30-40 year career. Of course you can still work after retiring from SF if you want, but not _having to_ is kind of a big deal.

leaving the BA after 5-7 yrs working is a good plan.

Be careful you don't meet anyone. Because, leaving someplace becomes much harder once you've met someone or you have family in the area. moving 2 jobs/ moving 2 social life's is harder than 1. just keep it in mind

Yeah, I've moved with my family twice now, each about five years apart. It's not the easiest thing in the world, but it's worthwhile when you have a compelling reason _why_ you're moving. I think in each case so far we've known that our stay would be 4-7 years or so, and thus in each case it's been kind of "bittersweet" but not too hard when the time finally came. It is definitely harder now as my kids are school-aged, though.
I don’t know where the data comes from, but as a hiring manager at a mid-size public company in SF, I would say these numbers are way, way off the mark.

An ordinary mid-level engineer (3-4 years of experience) would expect to make $150k salary with 10% bonus and about $120k equity. If you add that all up your tax return for the year will show approximately 150 + (150*0.1) + (120/4) = 195k taxable income.

As a rule of thumb I would say:

New Grad: $140k total comp

Mid level: $200k total comp

Senior level: $250k total comp and up

Numbers can go far above that for FAANGs, especially Facebook and Google.

I can’t speak to the rest of the numbers, but given the numbers for the bay area are so far off, I would not put much stock in this analysis.

Yeah I would say your numbers are even on low end for sr roles (depends on how sr ofc). They probably mixed all kinds of engineering-but-in-name-only compensations there.
Agreed, trying to describe the bottom of each range fairly. Of course there’s some variation but those are good benchmarks as of today.
The “taxes” assessment is also way off as soon as the numbers a bit larger.

In Ontario, you’ll hit the top marginal rate of 54% just north of 200k CAD (140k USD), and you’ll already have an effective rate of ~36% so you’re only keeping ~130k and giving most incremental earnings to the government.

In Washington state, your effective tax rate on that much is ~25% and so is your marginal rate. The marginal rises to at most 37% above 700k CAD.

California and New York are probably 5-10% more (progressively), but that still puts it a ~10% under Ontario.

It says where the data comes from: Glassdoor. Every time someone uses glassdoor to make claims about salaries in the Bay Area, someone else chimes in to say that they're way lower than their own experience. I wonder if there are two strata of software engineers operating there; a "chump" majority who are on the sort of salaries advertised, and a minority who are much more selective or self-confident and who post a lot on hacker news.
There are surely a lot of biases in any self-reported salary data. And for firms that pay salary+bonus+equity, it matters a lot how one counts it.
It's not just industry-wide that people say Glassdoor is wrong, it's individual companies. The last I looked at Glassdoor for companies where I knew the pay scales, the averages from Glassdoor were way too low.
I don't think glassdoor salaries are correct. It looks like they auto-generate salaries using some algorithms for companies they don't have data
What a lot of these types of articles seems to miss out on (other than just being out of date, not including equity, flexibility on CoL) is upside potential.

Senior engineers should be making $250-450K including equity in the Bay Area. As long as you’re somewhere in the middle of that, which isn’t that hard, you should be doing pretty great. And if you’re really good, $600K+ is possible, or $1M+ if you take the management route.

This hits the nail on the head. For a strong performer at mid-level stock+bonus should be equal to salary. For a senior equity exceeds salary by six figures.

Moving to the Bay area is still one of the best financial decisions Ive ever made. It helps that the work is way more fulfilling too.

This makes me strongly consider moving to the Bay Area. My wife has family there, and we love the city. I've climbed up in pay very quickly here in Salt Lake City which still puts me ridiculously lower than Bay Area salaries. Cost of living is obviously way lower, but $500k in San Francisco would give me a much higher quality of life than $150k in SLC which is about the max around here unless you have a niche skill. A friend of mine just accepted a role as VP of Engineering at a very successful startup and he's not quite cracked $200k.

Options around here are so pathetic that in the best case scenario after your options vest you might be able to pay cash for a brand new Kia Sorento.

My only concern is work life balance. In Utah it's pretty uncommon to find a company where people work over 40 hours a week. This is nice, but I'd like to become "wealthy" and I'm not sure how to do that as a Software Engineer here without starting my own company.

Netflix & Google work-life balance is actually pretty good. Amazon it's very variable - some teams have decent hours, others work you to the bone. Apple has a reputation for preventing engineers from having a life, though it might've gotten better since Steve Jobs died. Facebook is probably similar to Apple overall - you work harder than at Google, and also have less time for reflection (Facebook is all about metrics and hitting the numbers).

I would shop around and see if you can get an offer from a FAANG or Bay Area growth company before moving out, though. They'll often pay your relocation, and it's a lot less stressful than moving out, paying Bay Area rents, and hoping you get a job without any firm commitments.

Also beware of down-leveling. People who have not previously worked at a FAANG or hot growth company often take a title demotion (but salary bump) when moving to one of them. I've heard of folks - in the Bay Area, but at a bank rather than a tech company - going from being a Director with ~20 people under them to an IC at Facebook (but making more money), and of people being VPs at their previous company but going back to being an IC to work at Stripe. If you were a senior-level engineer making $150K at SLC you might get a mid-level engineer position at a FANG for maybe $250K, which is basically a wash after CoL adjustments (actually probably a step back in quality of life, because Bay Area housing & traffic is so terrible). But then you have a FANG on your resume, and you can either stick with it and get promoted into those $500K-$1M roles once you get back into management & senior engineering, or you can turn it into a very senior engineering or leadership position at an up & coming startup.

Thanks for the note! Looking back on it, I probably would have use levels.fyi and tried to construct an analysis that would account for how salary grows over time in different regions but c'est la vie.
This doesn't seem right to me.

Zürich was the most expensive place I've ever lived, and I've also lived in New York and London.

Admittedly, this analysis isn't perfect since all my data sources have their problems.
Ugh, why didn't you sort by the Y-axis value before doing the plot...?
Because then the order of cities would change for every plot making comparison of two cities a pain.
Looking at the cost of an apartment in a center of a city looks to me like an unreasonable assumption.

Places like midtown Manhattan or central London are populated more by financial people and celebrities than by mid-level software engineers. Such places can be ridiculously expensive because of that.

Instead I'd look at places within 30-45 minutes of commute to the center, which would give much more affordable figures for NYC and London (though not SF).

I think a one bedroom apartment in the city center is a very reasonable expectation. I also don't think celebrities and financial types compete with the average software developer for said one bedroom apartments.

I think your comment perfectly illustrates the issue some cities on that list have. Namely, their salaries might seem high on their own, but are not really competitive anymore when taking into account cost of living (and taxes, I suppose).

I am amazed how the article manages not to mention Berlin a single time, although it is clearly the most interesting city according to the graphs.

Maybe because it's not an English speaking city?

He mostly goes into US Cities only mention Zürich once. He looks at the data more with an American lens.

> Maybe because it's not an English speaking city?

It's because it's a german city. In germany you and the company have to a percentage of you salary to healthcare system [1], which isn't listed on your salery.

[1] https://en.wikipedia.org/wiki/Healthcare_in_Germany#Insuranc...

I would hope the tax calculator I used would account for healthcare but admittedly I'm not sure.
Looking back on it, I probably should have but I wrote the whole thing a bit mindlessly after making the charts so I didn't give Berlin the attention it deserves. Personally, I'm a bit skeptical that I'd enjoy living in a non-English speaking city but to those willing to do that, I'm sure it would be a great city!
Comparing Software Engineer Salaries Across Euro-American Cities, and Ignoring Software Engineer Salaries across all the other cities where the majority of software engineers live.
What other cities would you suggest adding?
Bangalore, Hyderabad, Chennai, Pune, Beijing, Shanghai, Chengdu, Hangzhou, Shenzhen, Hong Kong, Manilla, Ho Chi Min, Singapore, Kuala Lumpur, Jakarta, Bangkok, Karachi, Tel Aviv, Tokyo, Osaka, Johannesburg, Cape Town, Kigali, Luanda, Nairobi, Dubai... etc.
I mean, Kitchener, ON is a nice place, but...
Great, here comes another flood of douchebags to Austin.
Hm. I live in Iowa. Not a lot of developers here. The ones I know, that chart doesn't go high enough.