H1Bs (and O-visas, etc.) tend to be more expensive than otherwise just hiring someone local. I'm not looking for someone cheap, as other commenters have infuriatingly speculated. In fact, I actually think that's a very dangerous path to go down, as you'll either find
1. Someone who isn't very good (or else they wouldn't work for sub-market rates) 2. Someone who is very good, but doesn't know their value - in which case, you'll lose out on your investment once they find you've been screwing them over.
I also don't understand why - if I like someone enough - I can't just hire them to come work in the US, regardless of national origin, assuming I pay enough. I suppose there's a danger of pay-for-play there, but I can't believe the trouble I've had working with amazingly talented people because they didn't have a recognized masters degree.
Finally, `exercise your duty to your own country` is an inherently suspect phrase that makes me suspicious about the thought process behind that lead up to it.
I also don't hire for "American" jobs. They are just jobs and if you can do it, I don't care about your race, ethnicity, origin, preference of Star Trek to Star Wars, etc. On a macro level, I believe there's more value to the US with the foreign nationals bringing their labor and keeping its products here rather than competing with US companies from overseas. Let's not forget that these foreign nationals pay taxes and spend money in the US as well.