Northeastern vs UBC (University of British Columbia) vs Emory vs Penn State

Here this would come down to UBC and Northeastern to me. Emory and Penn State aren’t particularly known for CS (though both solid, and within a tier or less of Northeastern for CS), Emory costs more by a smidge, and Penn State doesn’t give the city environment you want. The real kicker between the American schools is that co-op goes a long way for securing a job in America and it will offer by far the most support for finding internships and making connections in order to get work authorization or eventual green card sponsorship.

Between Northeastern and UBC, I’d give Northeastern the edge for CS in a vacuum, but both are solid programs. That said, I think this comes down to what you said here:

I get both sides here, and I think this is the decision you have to make yourself. America has a larger tech scene and more of the top-paying jobs, but Canada offers a stable alternative with solid tech scenes in Vancouver and Toronto that are only getting bigger. And if you could have both visas, where would you prefer to live long-term between the two countries?