I'm a tech worker in Canada and can agree that the tech salaries are nowhere close to the US. Housing is pretty high as well. The better paying jobs are in government.
I'm not saying you're wrong, but I'd like some numbers to back up the government comment. I live in Ottawa, my SO works for government as does many many friends. I make more then all of them. If you speak french, then maybe this is true as you can move up to director etc. but the VAST majority of the people I know in government do not make more than devs I know.
I'm a USA-ian in Canada, working remotely. I'm in a big Canadian city, we have a hockey team.
The average IT salaries where I live are in the ballpark of 70-100k Canadian Dollars (CAD) -- at least according to Indeed.ca, LinkedIn, and Glassdoor. Given a 20-30% currency difference that's capping out at around $80K US Dollars (USD). Not terrible by US national standards, but not impressive for tech; i.e EMC offered me $66k USD out of college in 2008.
Meanwhile, on Reddit's r/networking, or r/sysadmin, where they have periodic salary surveys, network engineers in NoVA or Chicago are pulling $105k-115 USD with only 5 years experience and a CCNA -- and that's just an average, you can often do way better.
In Calgary the highest salaries were related to oil companies, and for tech they seemed to cap out at around $150K CAD for SCADA devs, instrumentation specialists, etc. I'm sure there are higher paying gigs available, but you're getting into specialized, only-found-by-word-of-mouth roles.
I've been lucky to be remote for the past 5 years, working for US firms, but if I wasn't it would probably be close to a 50% pay cut, on top of a higher cost of living. The COL wouldn't shock someone from NoVA or Seattle or Chicago but it's higher than you'd think.
Re: Ottawa -- I'd assume that, like Washington DC, the government contracting and federal bureaucracy are effectively their own mini employment universe that plays by their own rules, and doesn't reflect the rest of the country (e.g. security clearances mean your job can't be outsourced to India). Source: am from DC originally.
Yeah that doesn’t seem great I make 25% more than that with 5 years experience and no degree in the Midwest. Salaries here have risen so a large number of mid level people are making 6 figures. Even at some banks and retail/e-commerce companies that are a lot more corporate and old school.
I am also a tech worker and I second that. Currently paying 2000 per month in rent for a small 1bhk in downtown Toronto. 29 years of age with 4+ years of experience and a masters in CS from one of the top schools in Canada. I am making just north of 100k per year and not at all content with it. Interviewed at several companies in Toronto but failed negotiating something better because what I am being paid is above median for Data Engineer position here. I know I can make it much better in the States by all means and might consider moving there in future.