One big problem I have with the H1B visa is that it was created in response to an alleged "shortage". I'm very enthusiastic about creating a general skilled immigration under a points program (like Australia or Canada), but I'm far less enthusiastic about specific visa programs designed to remedy shortages in a particular and narrow segment of the economy. As you can probably tell, I'm one of those people who doesn't really believe that "shortages" of workers exist in a properly functioning market. I wouldn't rule it out completely, as we don't have a true free market and there are externalities to consider, but in general, I think most companies talking about shortages are really just having trouble hiring at the rate they want to pay.
Double or triple that salary, and you'll get your engineers. If that's too expensive, then maybe the talent you seek has just found higher value things to work on. One extremely regrettable aspect of the H1B is that it restricts mobility. Yes, changing jobs in related fields is possible and common, but an H1B holder can't stay on that visa to go to med or law school, start a new company, or respond rationally to all kinds of market signals they way free people in a free economy would be able to... and the ugly truth is that this is part of the appeal of this visa to some companies - a captive engineering workforce with all the market distortions that brings.