I know the Montreal job market for software engineers isn't nearly as lucrative as it is in the US, and I'm okay with that; it's still enough money for me to live comfortably as a single person in Montreal. I'm just concerned whether I'm hurting my future earnings, were I to return the the US in the future. Is this really something I should be worried about?
I don't understand how your current earnings can affect your future earnings, especially in two different countries? You have no obligation to tell the new company (if/when you move to another one in the future) what you earned before, and you also have no obligation to tell them truth about what you used to earn.
> I'm just concerned whether I'm hurting my future earnings
Your previous salary does not matter in future negotiations. If you're told otherwise by the recruiter, push back with expected future salary.
How is the difference in cost of living? Taxes? Benefits? It all adds to the value of the job. If your last working environment was toxic, then any change is a move up.
If your prior job was not toxic, have you looked at going back?
When you get your masters, then is a perfect time to move on if your salary has not risen enough. And because of your masters you would expect a significant raise, which companies give to the new person, but rarely reward the old employee.
So for short term, if you want to be in Montreal, go for it. In the future if/when you want to move back to US, just look for a job and ask them for a salary that you think is a good match then. Don't sweat it right now.
How about your expenses, lifestyle, dating, and vices