Advertisement

Bill gates need for programmers???

Started by March 12, 2008 07:17 PM
28 comments, last by d000hg 16 years, 7 months ago
bill gates has made had an argument with congress.It was because he wanted more foreign programmers for microsoft.does anyone know what all of this is about??
----------------I can only be better programmer by learning,practicing,and staying up to date..
This is the 'lack of a decent h1-b quota' (visa availability) issue I would guess.
Advertisement
There aren't enough qualified programmers in the US to fill US business needs. "Qualified" = 3-5 years experience with advanced & difficult programming tasks. Anecdotally, my game team has had open recs for senior level programmers for about 6 months =/

We're flooded with a bunch of low level .COM type programmers: can make HTML/PHP/basic SQL websites but nothing more complex with that. But none of them are qualified for senior positions.

This year i think this years national H1-B quota was reached around Jan 15th (i.e. no more H1-Bs can be issued until next year).

-me
More info.

This, in particular, seems like bullshit to me:
Quote:
Rohrabacher said he's not talking about "top" students. He's concerned about the B and C American students who "fought for our country and kept it free." There's no excuse, he argued, for displacing those people with "A students from India."
Quote: Original post by Driv3MeFar
More info.

This, in particular, seems like bullshit to me:


Definitely, and Gates's response is spot on.

Quote:
An audibly irritated Gates replied that when companies like Microsoft hire top foreign engineers, they create jobs for B and C American students around them.


That is precisely our problem. Because we can't hire a couple senior people, we're blocked from hiring the 3-4 junior people that would work under them.

-me
Agreed, and the shortage of native leads is largely due to the fact that our education in math and science is so far behind other parts of the world, like India, where a serious education is a huge priority.

We're often so backwards that we wear our hats on our asses in terms of education. State's spend millions of dollars developing standardized testing to evaluate performance, in turn, the schools spend months teaching to the standardized tests while at the same time not conveying an understanding of the fundamentals behind the test's answer. All of this takes away from what the schools should be doing -- teaching the fundamentals in a way which engages the students, expanding upon that, encouraging problem-solving, critical thinking, and fitting that into The Bigger Picture.

There's also the unfortunate social aspect to the problem as well, where its not "cool" to be smart or do well in school. The worse performing a school is, the more likely the social aspects are exacerbated, creating a sort of positive feedback loop into the abyss. I was fortunate enough to go to a decent, small school system, but even there I was questioned by some friends "Why would you take calculus when you could take tech math? Its easy!" In short, there's an issue of complacency, both with the system and with the students.

throw table_exception("(? ???)? ? ???");

Advertisement
Quote: Original post by Ravyne
There's also the unfortunate social aspect to the problem as well, where its not "cool" to be smart or do well in school. The worse performing a school is, the more likely the social aspects are exacerbated, creating a sort of positive feedback loop into the abyss. I was fortunate enough to go to a decent, small school system, but even there I was questioned by some friends "Why would you take calculus when you could take tech math? Its easy!" In short, there's an issue of complacency, both with the system and with the students.


Indeed.
This is actually a very complex issue.

Even in this thread there is talk about different positions. Labels like "students", "leads", "senior", and "education" were used without definition. They are all very different.


There is at least one simple fact, fortunately.

The number of H1-b visas has some correlation to pay. Some foreign workers are willing to work for less money than their native counterparts. Some foreign workers will demand more money than their native counterparts. With a potential pool of high cost and low cost workers, the market will tend to the lowest cost for the best return.

From there, it gets murky.

Next, you need to divide the talent pool up by their skills. That's where the "qualified" comes in. Recent college graduates, even if they hold double master's degrees and a Ph.D., are not at the same skill set of somebody with ten or twenty or thirty years of experience. Someone with a decade of experience in one area is not necessarily qualified for many specialized jobs.

So now you've got p "qualified" people, and j jobs for them. If p is strictly less than j then the jobs are unfillable. In that situation we absolutely need more qualified people -- either through importing them, or training them, or relaxing the definition of "qualified".

Once p is at least equal to j, it is simply a matter of luring them to the company. Sometimes it is hard, but it can be done if the company is motivated.

For some jobs, "qualified" includes the pay. For other jobs, it does not. There are a few specialized jobs where an employer is willing to pay as much as it takes, even many millions of dollars every year, to retain the required talent. There are other jobs (consider those who flip burgers for a living) where pay is a very significant factor.



When I've been involved with hiring in the past (not at my current job) we typically had applicants with this ratio, with round numbers made up for convenience:

~20% junk applications. These are people who are just applying to random jobs to meet their unemployment benefits. We've had out of work plumbers, former convenience store clerks, and laid off construction workers. We once had somebody apply to a programmer job who had spent the last two years as a professional stripper and before that worked as an undraped model; We think she meant to apply as a modeler, and it led to some VERY interesting conversations.

~50% unqualified. We have a strict requirement of knowing specific programming languages. We aren't willing to relax it or train people, because we have them in the applicant pool. We have lax requirements on education, but strong preferences which are usually met by the remaining applicants. More on these people later.


Those who are left are probably able to do the job with minimal training.

~20% bad experience fit. These people are generally qualified but lack specific elements. We can train them, but don't want to if we can avoid it because they lack evidence that they can do the job. They may be skilled workers wanting move laterally, or recent graduates who lack experience looking for a good start. Other times we're looking for people who have experience with specific technologies such as networking, AI, or tools. Occasionally we require someone with senior level experience who can help with mentoring junior developers. It isn't that these people cannot do the job, just that we don't want to pay the time and money to train them.

~5% unreasonable demands. We have certain salary ranges we're looking to pay. When we're looking for a $40-50K position, we'll discard applications asking $75K. When we're looking for $75-100K, we'll discard applications asking for $200K. We'll also occasionally throw out those asking significantly too low.


Those who remain are called, and almost universally hired. Next, the bad experience fit people are called and optionally hired. If we really need somebody, those with unresaonable demands start to become more reasonable.




It is true that in specific geographic locations and also in specific inflexible technical requirements, there are fewer available people than jobs. For those jobs we must either import workers or train workers, and it is usually cheaper to import them. For these jobs I stronly support additional visas, in part becase they allow the company to train up additional less expensive workers, increasing the talent pool, and reducing the future need.

For most software jobs, though, there are enough qualified or nearly-qualified workers to fill the demand, but we (as a company) are unwilling to pay the cost of training, high salary, or whatever else their needs are.

Finally, getting back to the largest applicant pool of 'unqualified' workers. These people probably *could* be trained, but it is expensive and time consuming. Generally as a society we encourage them to either get additional education or start out on a slightly lower career rung.



I don't believe we need additional visas, but I strongly believe that we need to make sure visas go to the right people for the right jobs at companies that will use those workers to help train up local workers willing to take on the roles.

The article beriefly touches on it, but several bills have been put out over the past few years that are designed to do just that. These bills (that I generally support) encourage the US Department of State to ensure these workers fill the truely unfillable jobs (where p < j), and aren't just hiring foreign workers at half the cost to displace qualified locals.
> Agreed, and the shortage of native leads is largely due to the
> fact that our education in math and science is so far behind
> other parts of the world, like India, where a serious education
> is a huge priority.

I don't agree. The parents of the younger generation saw all those promises of Y2K bug-fixing jobs galore and the dot-com era to rapidly rise and crash horibly in 1999 that they oriented their kids' education towards greener pastures. The end result is less interest in IT in the student community. Just look at the number of students registered into Computer Science for the past 7 years; it's has steadily fallen. Here in QC, one university is about to close its IT department because there is simply not enough students. And that's a jurisdiction with very low education costs.


Companies have enjoyed considerable power over the workforce for many years and suddently find themselves into the opposite situation where they have to poach employees and out-spend the competition to keep them. For a tech company like Microsoft - which has a reputation for having an horrible employee turnover rate - it is perfectly understandable that 'importing' cheap talent with less propention to turnover or setting up offshore operations is a suitable solution to the crisis.

-cb
Quote: Original post by cbenoi1
> Agreed, and the shortage of native leads is largely due to the
> fact that our education in math and science is so far behind
> other parts of the world, like India, where a serious education
> is a huge priority.

I don't agree. The parents of the younger generation saw all those promises of Y2K bug-fixing jobs galore and the dot-com era to rapidly rise and crash horribly in 1999 that they oriented their kids' education towards greener pastures. The end result is less interest in IT in the student community. Just look at the number of students registered into Computer Science for the past 7 years; it's has steadily fallen. Here in QC, one university is about to close its IT department because there is simply not enough students. And that's a jurisdiction with very low education costs.


I disagree with that statement quite strongly for the simple fact that many, if not most, parents these days are barely even involved in their kids lives in a parenting role (discounting those who "want to be their child's best friend" which is not parenting, nor is is much more involved in any meaningful way.) let alone in directing them towards a career, particularly at the young age in which the educational system is already starting to fail them in regards to pursuing the maths or sciences.

I think the bigger issue with respect to declining computer science enrollment has more to do with the social aspects I mentioned above and the fact that, given the failings of their education early on, computers are largely black magic for the average high school graduate. Its really difficult to find a high school these days with a computer science class that covers things like basic machine architecture, logic and programming. Most high-schools I'm aware of have things like Word Processing or maybe some basic web development with HTML.

Speaking strictly of IT, there was (and perhaps continues to be) an overall surplus of people due to the tech-bubble burst and the trend towards admins being able to handle more machines using better tools, but I see IT as something wholly different than computer science. Most of the entry-level jobs in IT are much closer to a trade than a science (Speaking as someone who completed their CCNA in high school) and, like all trades, they eventually become commoditized by automation or the ever-lowering bar of entry which results in more people looking for less work and accepting less pay.

throw table_exception("(? ???)? ? ???");

This topic is closed to new replies.

Advertisement