For example, from Google just now, the average software engineering salary in Vancouver BC is about $73k CAD (about $57k USD), and the average software engineering salary in Seattle is about $96k USD. That's about a 68% increase over the Canadian salary, and the cost of living is similar in both cities.
Incidentally, my company has had a number of Waterloo interns over the years and they have all been excellent. Many of them have moved back to the US after graduating.
I would take what I've learned along with the connections I've made and start a business in a country that's more immigrant friendly, has universal healthcare and is very close to the US.
[1] https://www.motherjones.com/files/blog_unionization_usa_cana...