I enjoy meeting the very smart people from all sorts of backgrounds - they share the values of education and hard work that my parents emphasized, and they have an appreciation for what we enjoy as software engineers; US born folks tend to have a bit of entitlement, and want success without hard work.
I interview a fair number of people, and truly first rate minds are a limited resource - there's just so many in each city (and not everyone will want to or be able to move for a career). Even with "off-shoring" one finds after hiring in a given city for a while, it gets harder, and the efficient thing to do is to open a branch in a new city.
I don't know, perhaps the realtors from my class get more money than many scientists or engineers, and certainly more than my peers in India (whose salaries have gone from 10% of mine to about 40% of mine in the past decade or two), but the point is the real love of solving novel problems - in an industry where success leads to many novel problems.
Hard work, interesting problems, and building things that actual people use - these are the core value prop for software engineering as a career; the money is pretty new and not the core; finding people who share that perspective is priceless. Enough money to provide a good start to your children and help your family is good, but never the heart of the matter.