Sunday, August 17, 2008

H-1B Visas Hurt US Tech Industry Competitiveness in the Long Run

How many times have you heard tech industry luminaries like Bill Gates or Intel’s Craig Barrett lament about the shortage of engineers in the US and the need for more H-1B visas?

The truth is that these guys are really complaining about something else … the lack of cheap engineering talent. There is ample evidence that we don’t have a shortage of engineering in the US.

If the US does have a shortage of engineers, the best way to get more people into engineering is to increase their wages; not to decrease them, which is the net effect of allowing more H-1B visas (in their current form).

Let’s be real, could you see Bill Gates standing up in front of Congress to testify that engineers cost too much, and the best way to drive down wages would be to increase the number of H-1B visas?

Long-term danger

There are two major problems with continually increasing H-1B visas: the temporary nature of H-1B visas causes a brain drain, and the decrease in engineering wages leads to a decrease in enrollment in engineering programs.

First, since H-1B visas are temporary, foreign engineers receive great training for a period of time, after which they take their acquired knowledge capital with them, and return to their home country; they aren’t given the option of staying and keeping that knowledge in the US.

Second, and more importantly, these temporary workers drive down the wages of permanent workers; the biggest impact of which is to decrease the number of people choosing to study engineering. College students aren’t dumb (especially those who could complete an engineering program), they do the math, and if the salary isn’t there, they’ll pick another more lucrative field (like law or finance).

The best way to get more people into engineering is to increase the wages.

The measurement problem

One of the biggest problems with trying to increase wages for engineers is that companies do a poor job of determining the quality and output of engineers. Companies can’t afford to pay all engineers more and remain globally competitive; however, they could afford to pay the best more and the worst less.

In computer programming, your top programmers are 2-3 times more productive than your average programmer, and 5+ times more productive than a bad programmer. Yet, there are very few companies that have a wage differential that reflects this. Say your average senior programmer makes $85K a year, how many companies pay their top programmers $250K a year? Very few!

Ironically, one of the biggest impediments to ‘judging’ programmers is the programmers themselves. They claim (as do most other professionals), that you can’t measure their productivity and quality adequately. However, with today’s technology this simply isn’t the case. While there is no perfect algorithm yet (although I’m sure Google is working on it), there are numerous metrics available to measure performance against; yet they are seldom deployed.

If engineers want more money, they should insist on being measured. I hear many US engineers lament about the poor quality of code created by 'H-1B visa holders', with few, if any metrics, to back up their claims. If these engineers hadn’t stood in the way of tracking quality metrics in the first place, they’d have a much easier time making the case that while being more expensive they are actually cheaper for the company in the long run, because of higher output & quality. It’s time for engineers to embrace this change and ask to be measured.

Short-term policy solutions

One of the reasons H-1B visas drive down wages so much is that they are tied to a particular employer. This means that a guy coming over from India on an H-1B visa, who has a job at Microsoft paying $24K a year, can’t take another job at Intel that pays him $50K a year. The net effect of this is to keep wages depressed, as H-1B visa holder are essentially indentured servants.

An easy solution would be to modify H-1B visas to remove the employer dependency, and let visa holders take the highest paying job. Wages will still be decreased, since you're increasing supply of labor, but by much less. (Many companies will complain that they wouldn’t go through the cost of acquiring H-1B visas unless they could guarantee that the employee stay with them; the reality is, there’s another way to accomplish this, pay your visa holders market wages!)


To address the brain drain problem, H-1B visas should be starting point for US citizenship (or permanent residency); who better to have as future citizens than well trained engineers?

There may very well be a need for more H-1B visas in the US, but how do we expect homegrown talent to be able to compete with indentured servants?

In summary

Solving our ‘engineering shortage’ by simply allowing more H-1B visas in their current form will drive down costs in the short run and allow tech companies to remain globally competitive, but in the long run it will only serve to increase the long term decline of engineering in the US.


Companies need address this problem over the long run, by tracking the output of their engineers more effectively, and paying salaries based on that output. How serious would the current engineering shortage be if companies regularly paid their top performing engineers $250K year or more?


Legislators should reach a compromise with tech companies to allow more H-1B visas, but only if their format changes to make them company independent, and a path to permanent residency or citizenship.

1 comment:

Anonymous said...

This was a great analysis of the issues and provided a useful perspective. Given that, I find it ironic that corporations that have benefited through successful use of supply and demand to establish themselves are now trying to manipulate that law through the use of H1B visas. The fact that they are tied to a single company does create the deleterious effects cited in this blog.