Yes, your best bet as a Canadian software eng is to get a job working for an American company. It's good for them because of the currency differential and the high quality of the talent here.
The downside is that often these jobs end up with a pattern of 'branch plant' or 'nearshore' perceptions; I've had several jobs where the relationship between the Canadian office and the U.S. one was strained due to an assumption of command and control from the American office.
The downside is that often these jobs end up with a pattern of 'branch plant' or 'nearshore' perceptions; I've had several jobs where the relationship between the Canadian office and the U.S. one was strained due to an assumption of command and control from the American office.