I've posted about this before many times.
I have a pulse
I am not sure about having a conscience -- that may disqualify me.
I have an IQ over 30
I am a citizen
I am not a politician
I am not a CEO.
I've been an engineer at Microsoft since 2000. I've worked on developer tools and ERP products. I've worked in Redmond; I currently work in Fargo.
I have interviewed hundreds of people for Microsoft positions. I am not a manager, but I've played manager at times. I understand the compensation system quite well, and how it has evolved over my 15 years at the company.
I have also worked with non-citizens and non-native born my entire career, including many who are on H1-Bs currently.
You could go and dig through my old posts if you wanted to. I'll try and give the short version
1) In my opinion, Microsoft pays very well. If i lost my job in North Dakota, I think i'd be taking a huge pay cut to work anywhere else. I base this on the numbers people throw out when I've interviewed with other companies. (You get frustrated from time to time in 15 years with the same company. I've shopped around. I've stayed put)
2) There are a lot of "paper qualified" people out there. I can't hire even half of the ones I talk to.
I see both ends of the "funnel" of candidates. For university recruiting trips, there is essentially no filtering done before I get to talk to them. For industry hires, they had to get through a few people before they talk to me.
We're already paying a competitive wage and we cannot hire many of the people we talk to. The obvious move is to try and expand the # of people we're able to talk to.
3) For a variety of reasons, it is MORE expensive for Microsoft to deal with H1-B candidates. There are all kinds of legal costs and challenges, as well as employee time wasted dealing with immigration bullshit -- that normal domestic employees do not incur.
For each domestic job type at Microsoft, there is a flyer posted in the breakroom that says what the title is, what the qualifications are, and what the salary range is. The salary ranges are the ones I am familiar with. Any H1-B could simply look at the flyer, and if they were getting paid less than that, they could lawyer up and retire. Every state's attorney in the US would want in on that lawsuit. Saving a few thousand dollars a year on salary costs couldn't possibly be worth it to us.
4) I feel no particular allegience to "the american worker". So you were good at choosing where your parents were when you were born? And the benefits of this should accrue to you WHY?
I am interested in people who will improve the caliber of my company and the caliber of my society. Hard working, intelligent people often have that potential. I don't care about where they were born. i care about what they will do.
I want the US to suck every brilliant engineer out of India and China. I don't want China getting any better at matching the US military industrial complex, and I want India to change its society so that innovators can effect meaningful change there, instead of being trapped in a hopeless system of patronage and bribery.
(have you talked to Indians who are in the US? There's a reason they are here...)
I would love to have the problem of drowning in qualified American talent. But that isn't a problem I've ever had in my entire career.
Finally, before you run your mouth about Microsoft not doing anything about to help with the domestic labor supply, Microsoft pays for me to volunteer 1 hour a day teaching Computer Science at a local high school. I start my 2nd year this Monday. I'll be helping teach a section of AP Computer Science -- in JAVA. Do you think this is some kind of sweetheart deal for MS? They are losing my work time, they are giving money to the school, and I am teaching the kids using Eclipse and the Java stack -- the direct competitors to the product and ecosystem that I work on (i work on Visual Studio).
What we're doing, is widening the pipeline of people who get exposed to CS, so that hopefully, more of them do CS in college, and more of them are GOOD at it. That is going to help the entire industry.
I don't know what experiences you've had, but I feel confident in saying that they haven't been at Microsoft.