Our housing is spiraling out of control, we have no unity between provinces (Alberta vs BC, Alberta vs East), we get screwed on just about ANY service (we pay insane amounts for flights and telecom for instance) and we get paid a bunch less (as in x times less) than our counterparts in the US. Our dollar is far lower than USD making most products far more expansive. Best jobs in Canada are public sector.
Healthcare is better than the US - I am not going to be bankrupted by a broken wrist. But I do have to wait many months before I can see a specialist (I had to wait 1+ years for a surgery for instance).
Better? I'm not so sure. For a tech worker US is a far better place IMO.
Canada does in a sense have a diversity lottery for work permits, but this is only with countries that we have international labour mobility programs with and excludes the biggest world movers like India, Philippines, Nigeria, China... But our population is so small that there are more people that want to move to Canada than there are actual Canadian citizens, being even more open would radically change the country.
Thanks!