It really is simple economic at work here. When lawyers, doctors, investment bankers, or managers got paid much higher than engineers, why would smart native born Americans want to be engineers? Engineers are populated with smart people who don't have verbal fluency in English, i.e. smart first generation immigrants or smart foreigners.