The thing about software engineering is that it doesn't require expensive post graduate education like med school. The barrier to entry is much lower. Many status seekers will eventually realize a few things about software:
1. Wait, I really have to look at this screen most of the day?
2. The pay check is nice, but the job itself isn't high status. I'm treated like a grunt
3. I have my whole life ahead of me, plenty of income, and a degree from a top school. I can leap frog to another position in the company, or go back and get my masters.