Thanks for doing this AMA. I'm a Canadian who just got his TN visa (Systems Analyst) but in practice, my salary/responsibilities will be pretty similar to that of a Software Engineer. As far as the law is concerned, where is the line drawn between those two occupations?