It's not bogus. Many if not most of the big high tech companies have open positions they can't find people for.
If anyone is curious where the mistake is in this article's reasoning, it's in the assumption that people are more or less interchangeable, and that all you have to do is train them to be Xes, and you can have as many Xes as you want.
Whereas the reason there are open positions for programmers at high tech companies is that these companies want star programmers, and you can't train people to be stars. Someone asking why we need to hire programmers from other countries might just as well ask why Real Madrid has to hire so many non-Spanish players. Can't they just train more Spanish players to play at the level they need?
Incidentally, when I first started to see these articles a few weeks ago (I don't know if it was this one or another one like it), I was curious why anyone would put so much effort into saying something false. It turns out the authors work for something called the Economic Policy Institute, which is funded by a consortium of labor unions. I was a little puzzled that unions would care about this, since none of these programmers are unionized. I suppose they must see it as the thin end of the wedge.
If anyone is curious where the mistake is in this article's reasoning, it's in the assumption that people are more or less interchangeable, and that all you have to do is train them to be Xes, and you can have as many Xes as you want.
What about the assertion that companies are struggling to fill these roles because (a) they demand more from potential candidates while (b) offering no more in wages than what we saw 10 years ago (edit: 15 years ago, according to Salzman et al. [1])? For example,
"Or is the hidden truth quite simply that large supplies of guest workers allow many firms to swap out higher-paid, high-skill domestic workers for lower-paid, high-skill guest workers?"
The article spends very little time arguing for the training of Xes and much more time arguing for higher wages for potential Xes. This gets rehashed on HN all the time: offer Xes more, and maybe they won't roll over to finance instead of accepting your offer.
---
RESPONSE TO PG'S EDIT: discrediting the source is kind of misguided for two reasons: (1) their wage data comes from the Census Bureau (see pg. 19 of [1]) and (2) the Brookings Institution essentially agrees with the EPI [2]:
"[I]t is likely that the extra supply of foreign-born workers does bring downward pressure on the wages of incumbent workers, as research suggests."
I don't think you could accuse Brookings or the Census Bureau of having a similar agenda.
---
FINAL EDIT: PBS quoted Brookings out of context, and I took it at face value. The paper doesn't support the EPI's findings, and the full Brookings quote is below:
From a theoretical standpoint, it is likely that the extra supply of foreign-born workers does bring downward pressure on the wages of incumbent workers, as research suggests.20 Yet, it appears that demand is so strong relative to supply that even the inflow of H-1B workers is not enough to meet the demand of U.S. companies and push wage growth down to normal levels.
Ugh. Apologies to PG and HN for citing this blindly.
I don't think there's granular enough information in there to support your conclusion.
To illustrate, imagine that IT workers used to get paid a $100k real wage in 2000 and a $50k real wage today. Imagine computer scientists and programmers got paid a $100k real wage in 2000 and get a $150k real wage today. Bundling them all into IT would lead you to mistakenly conclude that a computer scientist would expect to make as much today as they did 10 years ago.
Can someone confirm this logic is correct?
I don't know what the real stats are, but you haven't provided them. I also notice that the Brookings article you linked states that real wages have increased for those occupations in the past few years, but I don't how if at all they are bundling professions differently.
"Or is the hidden truth quite simply that large supplies of guest workers allow many firms to swap out higher-paid, high-skill domestic workers for lower-paid, high-skill guest workers?"
The Brookings article you cited states the opposite. Foreign workers get paid more. If there truly are enough good programmers and computer scientists available in the states is there a conspiracy to subject oneself to the nightmarish visa system and pay high legal fees to be able to hire foreign workers and pay them more than Americans, all the while not offering high salaries to qualified Americans? What would motivate one to do that other than a shortage of qualified candidates?
To be fair, it's not my conclusion. I just suggested an alternate explanation. :)
You're right that the Brookings article suggests that my quote isn't the case. I wish we had more information on how they controlled for different effects. IIRC BLS etc don't generally control for cost-of-living, and Brookings doesn't discuss the issue except for in the conclusion:
Likewise, the bureau should also consider how demand and supply play out in regional or metropolitan area labor markets, since job search and recruitment often happen locally.
I'd be interested in seeing those results, as I would expect a greater concentration of H1B workers in large metropolitan areas (SF/SV, NYC, Boston), where wages are much higher than the flyover states (where I'd expect less racial/ethnic diversity).
Good point on the location of H1B hires. I wish we had more info too, it almost feels like nobody is genuinely trying to measure the right things and instead retro-fitting data to fit their conclusions :/
The finance companies competing for programmers are also American. So even assuming that SV companies could draw star programmers away from Goldman Sachs by paying them more, there would still be exactly the same net shortage of them in the US.
The article is addressing a shortage of workers for STEM jobs. Quote from the article:
"If you're a high math student in America, from a purely economic point of view, it's crazy to go into STEM." The best of these students flock to Wall Street and corporate law firms and the rest end up employed in non-STEM jobs which often pay less and underutilize their skills.
If SV companies could draw star programmers away from Goldman, we'd then be talking about a finance shortage, no?
The finance companies pay considerably more than Silicon Valley companies thus don't have the same problem with filling positions as SV does. Do you disagree with that?
Search 'finance companies lobby h1b visa'. Nothing
Then search 'bay area companies lobby h1b visa'. Tons of results.
I don't know whether finance companies pay or whether they have less problem hiring people. But what difference would it make it that were the case? We're talking about the same pool of people. The specific companies where the shortfall appears doesn't make any difference to the argument for immigration.
We're talking about supply and demand. Wall Street understands that if the demand for talent is higher than the supply then the solution is to pay more, not whine about it.
Finance shops typically contract through an outsourcing agency. Wipro, Tata and InfoSys are typically among the most prolific filers for H-1B, and those filings fell significantly in 2009 post financial crisis.
If the finance companies couldn't hire top techies, they'd be fine.
It's a Red Queen race; whoever runs the fastest front-running operation skims all the rent from naïve institutional and individual investors. If everybody is 200ns slower, everybody is in the same position as before. All the talent invested in saving a few ns does no good to the world; it just changes the relative position of finance companies.
They might even be happier if there were fewer techies they could hire.
I'm not sure why you keep bringing up the Brookings paper [2] to support the authors' case. They clearly said this at the beginning: "Without attempting to fully resolve this complex issue, new detailed data on H-1B wages by occupation, presented more fully here, suggests that the H-1B program helps to fill a shortage of workers in STEM occupations."
From a theoretical standpoint, it is likely that the extra supply of foreign-born workers does bring downward pressure on the wages of incumbent workers, as research suggests.20 Yet, it appears that demand is so strong relative to supply that even the inflow of H-1B workers is not enough to meet the demand of U.S. companies and push wage growth down to normal levels.
You're absolutely right--what lazy work by PBS (and me, for assuming they fact-checked). Ugh.
Whereas the reason there are open positions for programmers at high tech companies is that these companies want star programmers
Maybe they should try paying like stars. What percentage of engineers that aren't founders or within the first five employees make over $300,000 a year? The money is in Silicon Valley, Google's 2011 net income was $299,874/employee [1], but the vast majority of engineers aren't going to be the ones to get it.
How about paying a market wage, instead of offering a "free lunch" to people that cannot negotiate. I am not interested in playing video games at work, I have a house for that. Last I looked at it, the difference in pay between finance and stem jobs is enough to hire a personal chef to deliver lunch to you at work every day, and cook for you at home, and buy all the games you want, with a bunch of money left over. Apple and Google are both posting ~25% net profits because engineers are willing to work for peanuts, and a free lunch. On top of that, cost of living in the bay area is outrageous, we're talking $35,000/year for housing, unless you want to live like a college student.
An average (median) engineer should be making $200,000 a year, and the "rockstar" (>80th percentile) engineers that everybody is trying to hire for $85,000 and 0.5% of equity, should be making $350,000+. These are hard jobs that few people can do at all, and fewer can do well. Great engineers can create millions of dollars of value a year.
It seems that the industry has shifted focus, now that the collusion agreements have been squashed, toward importing cheap labor. This problem has been solved in other industries through partnerships and professional societies (e.g. in the legal industry, with large partnership firms and bar associations). In the interim, it seems like the best way to capture value is to build companies to flip in talent acquisitions, while planning to leave to do it again as soon as you're vested.
[1] Goldman Sachs 2011 net income was $162,913 per employee. Average pay was $367,057. It's harder to get data on Google, but it looks like the mid-career median salary is $141,000.
Google's Gross Profit (Total Revenue less Cost of Revenue) was $24.7B in 2011, and GS's was $24.5B. At the same time, Google had 32,467 employees to GS's 35,700. Yet, the Google net income was $9.7B compared to $4.4B on the GS side. The difference seems to be made up entirely by the difference in employee compensation.
> In the interim, it seems like the best way to capture value is to build companies to flip in talent acquisitions
Interesting point, and really indicates that companies are not willing to pay enough for talent when hiring them individually. Even a startup that is nothing more than a bundle of talented individuals has enormous leverage just because of that bundling.
The finance industry majorly stepped up stock grants after the financial crisis to decrease moral hazard. How often do you hear about SV engineers getting million dollar spot bonuses? Tech bonuses are peanuts compared to finance bonuses. And cash is king, you're already overexposed to your employers stock because you rely on them for income, you are better off with a pile of cash.
Big high tech companies with open positions for stars would benefit most from a bidding system for a fixed number of visas. That way, the companies that really need top people could just pay enough cash to get a visa and be assured of having one available. The whole system could operate much faster, too.
But what's being proposed is a vast expansion in the number if visas available. Most of the new ones will go to the same mediocre outsourcing company drones that fill the current quotas.
It's just an expansion of the current system that rewards blizzards of similar applications from cheap workers with faked credentials. (Or credentials that document some kind of educations and experience without reflecting any talent)
A bidding system would wipe out those drones in favor of American workers. Meanwhile, everyone who needs stars would get them. Of course, bidding hasn't been on the table since the early 1990's. Republicans were inalterably opposed to it then because it would support middle class wages and Democrats oppose it now because they expect a mass of immigrants to eventually vote for them.
It would be interesting if the amounts of the winning bids were made public.
It could raise a non-trivial amount of money. If there are only 65,000 H1B visas (there is talk about doubling it, and with exemptions the actual number is almost double currently)and the average winning bid is $20,000, that would be $1.3 Billion total!
If anyone is curious where the mistake is in this article's reasoning, it's in the assumption that people are more or less interchangeable.
The basis of outsourcing at most large corporations is that people are more or less interchangeable.
Someone asking why we need to hire programmers from other countries might just as well ask why Real Madrid has to hire so many non-Spanish players. Can't they just train more Spanish players to play at the level they need?
Sorry but that is a ridiculous analogy. Most programmers here on H1B's are boiler room grunts. They work for large consulting companies where their key talent is looking like they know what they are doing. There are very few remarkable Cobol programmers working for InfoSys at Fortune 500 companies.
So if you tell Infosys that they can't have Indian H1-B cobol programmers in the US, don't you think they'll just hire them in India at even lower wages? So we lose a job, we lose the taxes they would have paid, we lose the spending in the community, and we lose good people in the country.
It will be interesting to see if there is still a shortage of "valley-quality graduates" in 3-ish years. The reports I'm hearing from most of the top-15 departments are of record CS enrollments starting from last year, far over even the boom in the dotcom era.
Of course, the growth in graduates may not keep pace with the growth in companies!
Certatinly, but there's a correlation present, at least between the first two.
"Star programmers" are a completely separate problem, as Joel has mentioned before (e.g., are your stars really "Stars" if they're just the best 21-26 year olds your network knows of that are willing to live in your geographic region and not interested in graduate school?). But it's the horribly poorly managed firm that can't turn an A student from a top-fifteen CS school who did any Big Project at all succesfully into a very productive team member.
Sure, but statistics is on your side too. More enrollments has a higher shot at increasing the number of star programmers than not (all education and teaching ability staying the same).
Lots of people also want to play pro ball. They can't, and no matter how much they train, they never will be able to. Their body just isn't built for it.
Similarly, there are people who can study their ass off. They'll probably become pretty good, not great, but pretty good.
Then there are a tiny, razor-thin minority of people who were born as some sort of intellectual freak, who will also study their ass off, and become great.
I've known a few people like that. It's frustrating, because I feel like I'm working just as hard, but not getting as huge of results.
Except the league minimum for an MLB player is quite high, and has been going up. Why is the starting salary for highly recruited devs relatively flat?
Agreed; I like where I work, but it would be hard for me to turn down 2x what I'm currently making at just about any company. I suspect that is true for most people.
I'm not a fan of this analogy, as it perpetuates the idea that SV companies need a humongous collection rockstar ninja h4x0rs. I suspect that's not the case for the majority of positions--there's probably a shortage at the tail of the job distribution, but not at the mode.
Sure. I don't think anybody is arguing that every single programmer needs to be a pirate rockstar ninja-hacker, but there is a need, in some places, for those people.
define "enough". Easy enough for you to pontificate, if you know better, start your own company and pay everyone million $ salaries. What are you waiting for?
p.s. I am an entrepreneur and have had significant hiring challenges for my company. So not spewing out stock lines from Lou Dobbs and his ilk.
It's kind of bogus. There's more reasons than what you're listing - and some help the author's statements. For starters, why throw a résumé away because it doesn't have [Top-Tier CS Program] listed? Make the potential employee pool bigger, and statistics says you'll get better candidates thrown in the mix as well. For companies that emphasize innovation and thinking out of the box, they really want a cookie cutter mold of a person who is insane at implementing a cache with linked lists. Why? There's no wonder why a lot of creativity in SV seems to have stagnated (or gone social really).
I'm just saying take the polarized glasses off and you might see more stars.
Having seen hiring practices in a large corporation first hand very recently, I can tell you that most of our positions were filled by very very unskilled people from overseas that could easily have been filled with average graduates from US computer science programs. It would have taken serious work to hire worse engineers, but hey, they're cheap!
Thats a lot of dogmatic statements without defense.
-On the claim of unfillable positions, "It's not bogus."
-"companies ... can't find people"
-"the mistake ... in article's reasoning is ... "
-"the reason there are open positions ... is ..."
-the writer's "put effort into saying something false" because ...
Can these statements be backed up? Is there is a metric for star programmers that companies can measure? If there is an obviously star programmer, but in some obscure language, do they get job offers? Perhaps in your capacity as startup advisor, you have inside knowledge?
On the other hand, nobody in the US is even attempting to train effective programmers, let alone 'star' ones.
There's a lot of room on all sides to improve the quality and availability of good technical workers.
And, in the US at least, the financial industry siphons off a lot of otherwise excellent talent that could be going towards more productive ends than shaving milliseconds off automated trading.
I understand that the comment you are replying to here says "nobody in the US is even attempting to train effective programmers, let alone 'star' ones." However, a few comments up, you say "The fundamental issue you mentioned above is that companies want stars, and you can't train stars."
Can you elaborate on how you envision things like hacker school to solve the problem of stars, if those can't be trained? I am not trying to be semantically nit-picky - I don't think I understand how star programmers come about, and maybe you have better insight.
The only thing I can think of is that you might imply that being a star programmer is an innate talent that needs to be developed, and things like hacker school would allow for this talent to be discovered. Is that about right?
PG's reply here is still consistent, if we assume that hackerschool is meant to train effective programmers, not so much star ones. But you raise an interesting parallel, though. It seems that a premise of YC is not so much to train great startup founders as to distil them out of the world population. I don't know whether that the former is hard, inefficient, or impossible, but I'm sure a lot of people would like to know.
See https://news.ycombinator.com/item?id=6091086
for a special case of "waking people up".
So go do it! be the change you want! You know, if you want something done right, DIY! Setup a noble, patriotic company that only hires "Americans" and pay then $250K or $1MM salaries... Go ahead!
Stop whining and enough already with the arm-chair generalship, easiest thing in the world.
The issue with this analogy is that the vast majority of the imported foreign workers aren't rock star programmers. They're not Real Madrid starters. They're second string junior league players. They're consultants.
Facebook/Google/Twitter/Microsoft/Amazon aren't the major users of H-1B Visas. Consulting firms are.
Isn't that because of the nature of the beast, since the consulting firms serve many other companies? Wipro, Infosys, etc. each have how many clients? Hundreds? Thousands?
It's true that they have many clients and require many employees. But I bring it up to counter the notion often put forward that foreign workers are needed only to fill extremely skilled, highly paid positions at the top technology companies. That they're the rockstar developers paving the road to our country's economic future.
The truth, of course, is that those rockstars account for a very, very small portion of the sought after visas. The vast majority of the allocations are for average professionals at companies far from the bleeding edge.
It seems odd to me that we would put in such an effort to import average workers when there is both not an insignificant number of unemployed American tech workers, and a large number of tech-educated American workers pursuing other vocations. This smells more like a failure of employers to lure the workers they need than of a true shortage.
I do think top companies should be able to scout internationally for top talent and bring them back to live and work in the country. But top talent demands top dollar, so there needs to be a bar. A company must be willing to pay them significantly more than their position's average salary. If they're the best of the best, they're worth it.
To stick with the soccer analogy, how much more do you think someone like Lionel Messi gets paid than a junior league player, or even an average pro player? It's understood in sports that you must pay top dollar to get top talent. I don't think it's too much to expect industry to do the same.
It implies no such thing. At any point along the supply/demand curves there are specific instances where a particular good or service is demanded by people who are not willing to pay market rates for it. Looking at one of these points says nothing about the location on the curve.
When demand exceeds supply, prices should go up until both reach equilibrium; conversely, when supply exceeds demand prices should fall until both reach equilibrium. In a real market, there will always be buyers who are overpaying or trying to underpay. You cannot cherry pick these instances and make any sort of valid assessment of the market.
I was responding to an oversimplified and vacuous argument, that naively assumes that supply and demand are the only two market forces. You ought to read up on the field of System Dynamics. I am not "cherrypicking", but you are over simplifying.
This: "Someone asking why we need to hire programmers from other countries might just as well ask why Real Madrid has to hire so many non-Spanish players. Can't they just train more Spanish players to play at the level they need?"
> you can't train people to be stars
Just like you can't train people to be star athletes. Except you can. Star athletes get free college tuition. Star college athletes get sent to training camps and minor leagues where they get paid and are trained on their game so they can make it to the professionals. They go through training there as well.
A tuition free university, University of Helsinki, is what Linux came out of. Free CS classes. A star was trained there.
The mentality of "you can't train stars" is bogus...it's more "we don't want to invest anything and want everything handed to us free and easy, and if we don't get it that way we'll complain about a shortage of stars"
It's great that it's been deduced that organizer labor is behind this article, and thus it's not neutral and has a hidden agenda. I'm sure someone who takes a 6% stake of high-growth companies for $14,000 is completely neutral with no hidden agenda. Also it's false that "none of these programmers are unionized". Programmers are represented by unions such as the IAMAW, CWA etc. It's possible 3 person startups have no union representation, but that's not out of the norm.
I've said it before, I'll say it again. Every coding job I've ever been in has ben "Always hiring". We just can't find enough people worth hiring.
We have been small groups, not pursuing H1-B visas or anything and it's possible H1B's are being given grunt work... However, the graph in this article, and really the central tenent that "we have so many tech workers not being hired, hire them first" is complete malarkey. I've gone to Undergrad and grad school. I've TA'd... The fact that even two thirds of those students find jobs (As the article claims) astounds me. Thats a higher number than I'd imagine. In two years TAing at a large research university I think I saw maybe 4 students I'd hire go through the program.
What if employers aren't being "picky". What if deterioration in academic standards means most graduates are not competent? A CS graduate being unable to do fizzbuzz is a travesty, and should be grounds for a school losing their accreditation if widely seen.
I have heard about declining educational standards at the primary and secondary level in the US. There are also studies on the impact of grade inflation at the college level. However, this is the first time I've heard about declining quality of Computer Science education at the college level. Are there any references about this? I am sincerely curious.
I don't have data. It is anecdotal, based on the complaints of friends trying to hire people. A huge proportion of applicants, with CS degrees, fail basic litmus tests (including fizzbuzz) in interview.
I think that is a very interesting observation. I do wonder why, though. Considering another commenter mentioned how he felt that he would only consider hiring 4 students out of a large research university, it sounds as if the US Computer Science higher-ed is failing in a major way, and much more so than other fields of concentration. I've been on both sides, as a hiring manager and as an instructor at a fairly competent university where implementation of the ACM curriculum's more industry-focused units was debated ad nauseam. CS101-type classes in the universities and colleges I've been around fail a good part of each class. If Jane Margolis and Lenore Blum's work on women in Computer Science is to be believed, those classes might actually be too harsh of a filter (not due to rigor but rather the imposing and overbearing influence of those of us who learned programming when we were kids). Yet here we are confronted with evidence that the filter might not be good enough.
Academia has (literally) nothing to do with real-life software engineering. I hope I'm not bursting your bubble, but if you think otherwise you're severely mistaken.
Academia has an awful lot to do with real-life software engineering. It might not be as good of a preparation as spending those four years in internships or as a junior developer, but saying that there's (literally) no difference between the software engineering capabilities of a CS grad and an English grad is hyperbole.
Meta: One funny thing about online discussions is that the activation energy required to make a post means they tend to be by people with extreme positions. The same phenomenon that leads to bimodal amazon review distributions of 1 star / 4.5 stars, or blog posts about how golang sucks/rules, means that an open-minded reader needs to continuously apply this huge smoothing windowed filter over the point-sampled views you read.
Some schools give good industrial training; some are still bemused that machines exist that perform the computations that are so fascinating to study in the abstract. We need both. It's true that schools can't manufacture stars, but they can help train those with latent ability, just as Real Madrid players are certainly helped by coming up through smaller teams.
Likewise, some places (YC startups, or forward-looking splinter groups in larger industry) need rock stars who can do a lot; but there's a huge swathe of megacorps that just need warm bodies that can tab-complete API calls; the problem with debates like this is that arguments are so rarely anchored by a clear context. Are we doomed to always argue straight past one another?
Likewise, some places (YC startups, or forward-looking splinter groups in larger industry) need rock stars who can do a lot; but there's a huge swathe of megacorps that just need warm bodies that can tab-complete API calls; the problem with debates like this is that arguments are so rarely anchored by a clear context. Are we doomed to always argue straight past one another?
Speaking of context, in many discussions on this and related topics here I see many contrasts like this raised. There is a vast gulf between startups that (truly) need rock stars and corporations that need IDE monkeys. There is a vast gulf between top programmers who read CS papers for fun and implement problems in 8 different languages out of curiosity, and "programmers" who can't even write FizzBuzz in pseudocode. In these discussions, I get the impression that this segment is either nonexistent or is so small it doesn't matter. As someone in that segment, it make me question if I should be in this industry. If the industry truly has a programmer shortage, I would think that is a poor impression to give.
Sure we may be graduating more STEM students, but I really hate when studies like this assume all students of a given field are equally talented. I'd say my university had a good CS program, but maybe 1/3 of our CS majors would get hired at top tech companies (Amazon, Twitter, Microsoft, etc) and get those really high salaries.
At the end of the day it's much easier to import top talent to fill the gap than to cultivate more of it in the U.S. Some companies like HackerSchool are popping up to address this need, but there's a long way to go.
But the number of new jobs at Microsoft/Twitter/Amazon pale in comparison to the number of new jobs in the domestic industry as a whole.
In fact, the vast majority of foreign worker visas aren't snatched up by the tech goliaths. They're snapped up by low-tier consulting companies. [1]
Google may be forced to look abroad to find rock star programmers, but the overwhelming majority of foreign workers brought in to the country are not rock star programmers. They're rather low paid consultants.
Good points here, but anyone trying to hire good tech talent knows how hard it can be. "Has a degree" and "qualified" aren't even in the same ballpark, but they seem to be conflated here.
I am interested in the salary thing, though. I think there is at least a little bit of companies bemoaning the fact that they can't find a person to fulfill rock-star expectations on a junior salary. It's macro 101, if there isn't enough supply then increase the price.
I don't have a problem with the guest worker programs, but I think the way they are implemented is seriously screwed up for a number of reasons.
The laws are written so that guest workers are basically indentured servants to the companies they work for. Furthermore, we basically give guest workers 6 years of well-compensated on the job training after which point we say "go home and enrich your home economy." If I were to say the things that need to be fixed:
1. Once you've been working at a company for a year, you should be free to remain in the country whether you have work or not. Companies shouldn't be able to hold you hostage. Companies should probably even have to sponsor you for some sort of H1B level 2 to keep you around past 1 year. (Bear in mind, I'm not looking for the current bureaucratic nightmare, I'm looking for companies to have to give guest workers their freedom well in advance of the current six-year mark.)
2. If you've been gainfully employed in the country for three years under an H1B, you should get a green card automatically. No waiting around, no nothing.
If we do this, wages will rise naturally, and we'll see whether companies have a legitimate shortage or they're just looking for cheap labor.
I call bullshit. I was a H1B worker, and "indentured servitude" has no basis in reality. The job market is amazing. If I need a new job, I can literally walk into one in 5 days (eg. the time I did exactly that).
That said, points 1 and 2 are definitely worthwhile. But you're devaluing your points when you compare a high paying job with some annoying visa clauses, with indentured servitude. Indentured servitude is really serious: it's like when people talk about "raping" the environment. Don't make the comparison, it serves no-one.
The fact is that, as a computer programmer I don't even have to look for a job currently. I am surrounded by job opportunities and freelance contracts. Very high paying ones at that. So if there is indeed not a shortage, then I am missing something. But life is good currently for developers.
More importantly, the answer to the shortage in the long term should not be to try to get more of the same. Our real goal as computer scientists should be in making our own jobs more efficient. We need to empower more users to have control to manipulate the machine they are using instead of entrenching us deeper into this never ending hole of proprietary software that continually re-invents the wheel and never works precisely how the user would like.
More concretely, we need to automate programming by making it more accessible to everyone and eliminate our own jobs.
The real problem is college degrees, especially ones from foreign countries where cheating is not only commonplace but actively encouraged, provide little to zero value in a tech sector that actually expects people to be useful. The education system needs a dramatic revamping (in innumerable ways) if it wants to churn out workers capable of these jobs. Trying to compare # of jobs to # of useless degrees is, unsurprisingly, a useless exercise.
This is why there's such a staggeringly large number of tech-all-stars whose education & experience comes from non-traditional places.
I feel sorry for my fellow H1B workers who can't leave for a higher salary elsewhere. I fell more sorry for myself and American coworkers stuck in short-term contracts with zero benefits.
"Analyzing new data, drawing on a number of our prior analyses, and reviewing other studies of wages and employment in the STEM and IT industries, we find that industry trends are strikingly consistent: ... Wages have remained flat, with real wages hovering around their late 1990s levels."
EDIT: if you're skeptical of EPI, Brookings also agrees:
Wages have been stagnating generally, including in many industries unaffected by the guest worker program, so I'm not sure they are showing a causal relation.
" In recent years, from 2009 to 2011, nominal wage growth for U.S.-born workers with at least a bachelor’s degree has been high for the most prominent H-1B occupations. The average native-born worker experienced flat annual growth in wages over that period (0.0 percent), but wage growth for those in computer occupations—the largest H-1B category—grew by 1.3 percent each year since 2009 and 2.7 percent each year since 2000 for those with a bachelor’s degree. Wage growth was even higher for engineers, with 2.1 percent growth since 2009 and 3 percent growth since 2000."
The real issue is obviously lack of control over labor markets. Sure, dissolving support for unions helped, but we still live in a world where people can decide where to work and how much they'd like to be paid, and this has serious repercussions for the long term profitability of corporate persons.
During the twentieth century, US economists promoting the values of those controlling production talked about how production was fundamentally controlled by laws of supply and demand, and economic theories thinking otherwise were silly.
Yet flying in the face of that is this idea of a "high tech worker shortage". If there really could be a shortage of high tech workers for longer than a short period, than the bedrock idea of supply and demand are bogus. Even miniscule hurdles like visas would mean nothing - if there is a mass of talent in India and a worldwide demand for that talent, then if visas were a problem, multinationals and trans-continental consulting firms would just set up there.
There is no high-tech worker shortage. There's a bunch of "idea guys" sitting around who think how much money they could make if they could hire a bunch of rock-star programmers on the cheap.
I can't shake the feeling that for this crowd (to which the authors/researchers belong), the term guest worker has sort of become a code for "those cheap Indians". I'm also guessing the authors (and most people in this crowd) have never associated with a guest worker outside of their field of work.
I don't necessarily disagree, but I don't see why that shouldn't be just as true for people on the other side of the issue. As in, "We have a shortage, let's get some cheap Indians in here."
If anyone is curious where the mistake is in this article's reasoning, it's in the assumption that people are more or less interchangeable, and that all you have to do is train them to be Xes, and you can have as many Xes as you want.
Whereas the reason there are open positions for programmers at high tech companies is that these companies want star programmers, and you can't train people to be stars. Someone asking why we need to hire programmers from other countries might just as well ask why Real Madrid has to hire so many non-Spanish players. Can't they just train more Spanish players to play at the level they need?
Incidentally, when I first started to see these articles a few weeks ago (I don't know if it was this one or another one like it), I was curious why anyone would put so much effort into saying something false. It turns out the authors work for something called the Economic Policy Institute, which is funded by a consortium of labor unions. I was a little puzzled that unions would care about this, since none of these programmers are unionized. I suppose they must see it as the thin end of the wedge.