There are lots of great programmers in the United States, they just want to be paid more than immigrants, so the companies lobby congress to allow them to import more cheap softare factories.
If you had actually bothered to read the article, you will find that the person featured has been educated in US from when he was 14. He went to Harvard. Now do you want such a person to be just sent back because he is an "immigrant" or that his skill and intelligence be recognized and make it such that it is easy for him to work in US, contributing to the US economy.
The US attracted the best and the brightest. If you insist on sending them back because they are "immigrants" then the loss is not just theirs.From the article "Many innovators in Silicon Valley come from overseas; 42 percent of engineers with master’s degrees and 60 percent of those with engineering Ph.D.’s in the United States are foreign-born."
Do you know why Chinese and Indians population in Universities are increasing? Because in those cultures being a geek is cool, unlike in US. In China and US, the topper in the school is the super star unlike in US where it will be the college football captain. The toppers from such places come to US because the US universities are far ahead in higher education. But if you send these people back, this lead in education will slowly evaporate as the best students go back to their country instead of staying on and becoming entrepreneurs and professors.
I came in 2001(18 yrs) for my BS in Comp Sc and I am currently in my H1-B. The Green Card process is long and far away, so I don't even think about it. However, I see a few drawbacks of being on H1:
i. It hampers my capability to jump jobs to risky startups, because if that startup goes bust, I need to find a job in 2 months to stay in the country. Especially with a recessionary season, it adds to the risk while your existing employer is pretty strong.
ii. I am always looking for avenues to work on Ideas, and I do that too. But, because I need to be employed to maintain my Visa Status, I can only devote my evenings and weekends.
iii. I am also worried about the Laws (Immigration and other) that may prevent me from having my own venture etc.
I have been in the US for close to 10 years(8 years now and 2 years when I was a Kid). So, I have lived most of my decision making, understanding the world, ups/downs of life here in the US and I feel really connected to this country and really love it. I even pay good amount of Tax dollars plus work for a US company that works towards the growth of the US economy even in this downturn. But my fate still lies
on the Immigration Policy.
Another point I wanted to mention was about my experience in College. In my freshman year I realized hanging out with kids that went to Highschool here that being Smart in school equates to being a Geek, which is not considered Hip and Cool. On the contrary back home in India where I grew up, being smart(not necessarily Geek) was considered Cool and everyone wants to be friends with the Smart Kid. Luckily, it worked out good for me as I had a solid academic background from India and then had cool friends out here.
To add to code_devils list, I don't think you are allowed to earn any money in the US other than from your employer. I am not cent percent sure on this, but I think this might even prevent you from something simple as putting advertisements on your blog.
okay come on you have totally warped expectations of what a work visa provides. work visas are not created to allow you to wonder silicon valley looking for cool startups to join. nor should it. thats what residency visas are for. a work visa should be tied to an employer. you seem to think you need a work visa in order to get a residency visa...no. tens of thousands of people every year become US citizens simply because they want to.
Unless you know something the rest of us don't, I think you're grossly misinformed. There's no skilled labour immigration track in the USA, and the only way to live/work in the country for many people is on the H-1B and TN visas. The latter does not lead to permanent residence, while the former does (and chains to your sponsor company as a wage slave).
The point that the article (and other posters here) are making is that you should be allowing these people to wander Silicon Valley looking for jobs. Instead of treating them as temps who must leave the country shortly, they need to be welcomed and given the opportunity to become Americans.
Actually, if you had bothered to read the article, you'd have seen that the person featured was totally legal in the United States. He wasn't "sent back."
He chose to move to Canada because his WIFE was not legal in the U.S. and she didn't have any skills to import.
This is pretty much true at any level of supply (increase supply and the price will drop). You could just as easily argue that if more students study engineering its hurts those currently in the industry, that alone is not a reason to be against it.
From talking to my other friends with startups in the Bay Area it is apparent that there are not enough good engineers here. I had a conversation last weekend with one of my friends who always struggles to find good Ruby engineers, even at above market prices, and using every recruitment method available.
As the founder of a company originally started to help companies hire technical talent I've seen this firsthand. Everyone is frustrated with recruiters piping them lots of unqualified resumes, Dice, Monster, and Craigslist also provide high volume, but often low quality. Even the niche boards are underperforming.
If there are really "lots of great programmers" in the US where are they? I know a lot of companies around here who would gladly pay $150k+ for a truly "great" programmer, if they could only find them.
Maybe part of the problem is the vast difference between "decent" and "great" in terms of on-the-job performance and the unwillingness of many companies around here to settle for less.
'If there are really "lots of great programmers" in the US where are they? I know a lot of companies around here who would gladly pay $150k+ for a truly "great" programmer, if they could only find them.'
I know a lot of companies around here who would gladly pay $150k+ for a truly "great" programmer, if they could only find them.
People say this all the time but $150K is a rare salary for a programmer. You have to work at Google for years to be paid that much as a base salary. If a company is offering $150K but can't hire anyone it usually means the company sucks. I.e. it's an overfunded VC time bomb, a boring telecom/security job or something semi-shady.
"I had a conversation last weekend with one of my friends who always struggles to find good Ruby engineers ..."
Well then, doesn't it see that perhaps he is creating his own limitation by focusing on Ruby?
Just because a particular language may have too few experts in the USA does not mean there's a shortage of qualified programmers in other languages! I'm an exceptional programmer in the language I know best, but it is not Ruby. Your friend would not consider hiring me because of this too I'll bet -- yet I could probably build his site twice as fast as the best Ruby programmer.
You live with the limitations you impose upon yourself.
Wait wait wait. You expect your employers to tailor their required skill set for you, instead of following market trends and acquiring new, relevant skills for yourself?
I really have a hard time telling if you're trolling or serious.
It seems to me that businesses need to adapt to the nature of the labor market as much as vice-versa. Complaining about the lack of X programmers isn't going to generate any.
Perhaps, but that is a decision that has to be made with foresight, because even though it may be hard to find a developer in X language, its probably a lot more work (and cost) to migrate an established product from one language to another.
" I'm an exceptional programmer in the language I know best, but it is not Ruby." "Your friend would not consider hiring me because of this "
I don't know how exactly you define exceptional, but if you are indeed exceptional in the sense of being in the top 5% (say) of developers in your chosen language, and assuming your language is not some forgotten relic from the 60's, then you should be beating off employers every day.
If I wanted a game written in Java (for whatever reason) and John Carmack wanted to take the job but he knew only C/C++ (but was ok with learning java) I couldn't imagine turning him down because I have Joe Blow's cv showing 10 years experience in java. If you are really exceptional in your language, I doubt someone would turn you down just because you'll take a couple of weeks to pick up ruby.
Moving on, I wonder how came to the conclusion you are "exceptional"? This isn't a mocking question. I am just curious because even though I am a good programmer (if I do say so myself), and I have improved a few quanta of magnitude in the last few years, I always find that there are many people much better than me,no matter what level of proficiency I attain.
Maybe I just don't work hard enough but I am very interested in knowing at what point one would classify oneself as exceptional (vs other people making that judgment).
What have you achieved in your language of choice that made you conclude this? Maybe you have some code out there we can look at?
"Your friend would not consider hiring me because of this too I'll bet -- yet I could probably build his site twice as fast as the best Ruby programmer."
This doesn't compute. The best ruby programmer in the world (whoever he/she is) should be massively productive. What enables you to get a 100% boost as compared to him?
EDIT: On judging oneself exceptional. There is a local legend that goes like this.
Once upon a time, long ago, a prince told his father(the king) that he wanted to become a martial arts expert and an exceptional warrior. So the king apprenticed the prince to the best martial artist in the kingdom. The master was a greet teacher and the prince was very talented and diligent, and he threw himself into the training. The king got regular reports from the teacher that the prince was steadily advancing in his proficiency.
A year later, the prince came home for a holiday and the king asked him how his training was going. he replied " I've learned a lot. I could take on a 100 opponents at a time and win, easy". The king said " That isn't good enough. You need more training"
The next year the king asked the same question and the prince replied " well I've learned a lot more and I've changed my estimate. 100 people may be a little tough but I can take on 50 and win" and the king just shook his head sadly and asked him to train more.
Every year after that the king would ask the same question and the number of people the prince thought he could fight simultaneously kept coming down till after many years he replied "I think I could handle one opponent, maybe, but if possible I'd rather fight a duel only when absolutely necessary, because you never now what the result will be. There is always the possibility that your opponent totally outmatches you."
And the king replied " Now your training is complete". (And by then the prince was indeed a deadly fighter, the best in the kingdom).
The problem here is that they want a candidate that is already perfect for the job and can jump straight in, and are unwilling to do any sort of training. Hence they let a position stay open for months out of irrational fear of spending a few weeks on training a smart but imperfect candidate.
edit: also, if there's really a 10x difference in productivity between the worst and the best programmers, isn't a truly great programmer theoretically worth more like 300-400k a year, rather than 150k?
Why should they spend time training? Isn't increasing the money on the table enough motivation for people to train themselves on whatever skillset is required and apply for the position?
Part, if not whole, of the truth is that the learn-unlearn-learn cycle in itself is a skill. People who posses that skill acquire new skillsets and stay relevant; people who don't have to wait to be trained.
You could just as easily argue that if more students study engineering its hurts those currently in the industry, that alone is not a reason to be against it.
You're so wrong. The whole purpose of bar exams and similar certification requirements in most trades is to limit supply. Almost every profession does this in one way or the other, except engineers.
Sure, cheap idiots shouldn't be allowed to immigrate into the USA. I'm totally against the trend of mass produced know-nothing "programmers" who were imported into the US in the late 90's and early 2000's. But there's a lot of legitimately intelligent and capable people out there, and it's in our best interest to try and get them to play for Team USA.
It's the same at every level of society.