The IT skills shortage is like global warming - you either believe it exists or you don't. Either way, one thing's for certain - the debate refuses to lay down and die. For those who believe there is a shortage, there is plenty of evidence to support their argument. And for those who believe the shortage is a myth that's …
What is in short supply is experienced, skilled developers willing to work third shift for minimum wage. These workers always will be in short supply. It's probably a waste of time pointing out that there are always enough workers if you allow wages to rise until supply meets demand.
That said, it makes me laugh (and cry) when employers cheap out and outsource to nominally low-wage countries, only to find their management and rework costs explode. When they figure out that outsourced labor won't work magic for them, and they try to rebuild their IT shop, they whine because college kids figured there's no point to a CS degree and switched to bioengineering. And surprise, the older workers remaining in the IT workforce don't want to work for entry level wages.
Oh well... As for the voracious hiring appetites of the body shops, they know some secrets that I will now share with you.
Aptitude is only a partial substitute for experience. This fact is completely lost on the young and apt, who won't realize for 15 years or so that they become more capable over time.
Experience is no substitute for aptitude either. There are a limited number of focused, analytical, abstract-thinking people in the world (thank goodness). Other folks can turn out awful code for a whole lifetime and never even realize how much they suck. We found out in 1999 that you can't retread poets and astronomers as software engineers. Even in Bangalore, there are only so many geeks. And the geeks in Bangalore know it too.
The dot com implosion was painful. I went from being the most employable person I knew to being chronically unemployed. That was scary. But the geeks are back.
The geek shall inherit the earth.
CLUE: No aptitude, no basic skills, employer doesn't care
Wanna know the future of Microsoft? It is in the dirt. Why? Because they are hiring employees who can't type, don't know Windows, and can't even hook up a KVM. And, NO, they don't have any aptitude for the work, either. [excised by Reg moderator].
Productive people not only know how to write software, they also have some basic office skills. Like typing! And how to use the f***ing computer! And what do the managers do? They hire these people. Such is how companies rot and die.
Partially this is the fault of colleges, and partially this is the fault of companies. A college graduate in IT should know how to type. They should receive at least one real typing class! You have no idea how frustrating it is to assign someone a job and watch them hunt-and-peck for hours what should take a half hour to do. The managers should be requiring the candidates to have these basic skills. If the most basic of skills aren't there, then the person goes right back out the door.
Some companies do have a clue, and specify in the ads for at least 40wpm skill. What an idea! Standards!
When I get someone in to work, I expect them to be able to use the computer at the command line. I have seen too many who can hardly copy and paste! And yet managers welcome them in after some stupid interview questions. What is the point of the interview questions when they don't screen out idiots?
The purpose of the interview is to select an excellent person. Why do idiots routinely pass the interview? I can only conclude that the interviews are actually screening FOR idiots, and that the real hiring decision is based on non-professional criteria. Criteria which would normally get a company in trouble.
But, of course, those criteria DO get the company in trouble.
"We hired him because we liked him." Actual quote from a hiring manager at Microsoft.
When teams are filled with idiots, how can the goal be accomplished? Obviously the goal is either accomplished in a very poor manner or not at all. At some point somebody either goes in with a very large firing axe and clears out the deadwood, or else everything collapses.
I don't think that anyone at Microsoft is going to clear out the deadwood.
I suppose that means a rosy future for Linux.
The Could Use Some Advertising Skills Too
We've all heard the funnies: 5 years experience in a language which didn't exist five years ago.
The whole jobs business seems to be full of people who forget the basics of advertising a job: where is it and what skills do you want. Maybe it's just that too much can be done by filling in a web-form, and there's no check by a human.
Yes, I know there's this thing called "Human Resources". Everyone makes mistakes.
I have just spent 6 months unemployed, despite 7 years experience developing in multiple languages - vb5/6, C++ (ATL/COM), vb.net, c#, back to c++(STL). I also have a software Engineering degree and am highly design/best practices oriented. However in my region all the jobs are c#/ASP 2.0 which I haven't used for two years.
what many companies fail to realise is that the language really doesn't matter. It is the ability to see the problem & design a solution which counts, the language is simply the means of expressing that solution. I find employers who are willing to recognise my talents few & far between. Fortunately for me my previous employers have now signed me up for a contract, but I will likely be in the same boat in 6 months time when I am looking for new work.
The real skills gap appears to be in management.
Deja vu all over again
I am an experienced programmer. I have been in IT for 30 years. I have difficulties finding work now because I have taken the trouble to retrain myself and learn .NET.
Yes, I may bumble along a bit, but I cut code at 1,000 lines/week, Tested and working. I know how to design databases, stuff your integer keys, use proper ones. Using integers doesnt make it go any quicker you know !
I have been as flexible as possible, the answer is yes, whats the question, but they still say no.
The problem? They look at a CV and think that is all you can do. You cannot possible do anythig else. The CV determines the future, so if you havent done it, then there is no way you are going to do it. The thought (novel approach to recruitment, thinking) that soemone might learn, that they may know their subject matter inside out is irrelevant.
I think it is quite fun listening to these twats talk about virtualisation, they caught up with the 60s at last. They talk of XML & XHTML but, they dont know the base is sGML, which was a macro language developed in the 60s (MIT, I believe for CP67, later VM) to provide markup for text handling.
So, now you know your code and systems are as old as Beelzebub, stop whining about not finding the right people, they are all around you, you are just to dumb to notice.
If you want people to study CS, make the choice attractive. There is absolutely no point at all in studying something where your career will be exported to India. So, if you want people to go back to study computer science, start paying them, start offering careers tjhat last the 40 years to retirement again.
If you are not prepared to do this, stop whingeing, we cant be bothered to listen to people whining about how they continuously shoot themselves in the foot.
Personally, I would strongly advise anyone starting in university or college today to avoid IT at all costs. Unless they are going to use it as a fast route to management, but accountancy would be a better choice.
Developers need to understand the full environment.
My experience is that coders, sysadmins etc. fit into two categories. The hardcore geeks who will spend ages discussing the minutiae of some particular bit of syntax, and the more-widely-informed types who appreciate that their systems have to fit into a broader environment where regulatory compliance, authenticability and procedures are often more important than algorithmic elegance.
"What is your position on ensuring Sarbanes-Oxley compliance?" or "How would you respond to a RIPA/FOIA/DPA request?" are the sorts of quessies I ask of prospective employees. Alas too many respond with that open-mouthed stunned-circus-clown expression which guarantees they don't get the job.
Finding someone with the IT skills - but who also understands how IT is part of the greater business/operational environment - now that's the real problem. And the world will pay handsomely for those who know both the latest RFCs and the current case-law.
Skills shortage is a Myth.
The skills shortage is a myth because there is a tremendous amount of ageism in I.T. Try to find a job once passed 40 and you are struggling. When I was managed out by a large IT company after 30 years at the age of 52, at the out placement interview I was told I would never find another job in I.T. best to train as a driving instructor. I tried applying for loads of IT jobs but very rarely got an interview and never a job. What with open source and outsourcing to India I would advise anybody to seriously consider their options before embarking on a career in I.T. as its not a career for the long term. Fortunately my two kids
show no inclination on going into I.T. Part of the problem is the recruitment agencies. They don't employ very bright people and unless you have been doing the same job with the same skills as advertised they don't want to know. They ignore the fact that it 30 years you have repeatedly pickup up new skills with no problems.
oh whats the point...
As far as I can tell the only skills shortage in IT is in management. / leadership. Idiots the lot of them. They'll be first against the wall when the revolution comes....
Yes, blame the agencies !
Keith is right to mention the agencies. Like, I assume, many others, I keep an eye on the lists in case 'the right job' should come up.
But all I seem to see are jobs that require all sorts of qualifications and many years experience - and all for the pay of a junior position straight out of college ! I look at many of them and think that surely they don't seriously expect anyone with even half of what they ask for to consider slashing their pay down to that level, so why do they do it ?
My thoughts are that too many people are, how shall I put it, 'over enthusiastic' when describing their skills etc. Consequently, I suspect the agencies respond by bloating the required skills to suit. So where does that leave an honest person, whose moral code does not allow allow them to apply for jobs that they don't have the skills for ? If you don't 'tell porkies' then there's no way you'll get past the 'has this candidate ticked all the right boxes' filtering process - so it's a waste of time to apply.
So the end result - all they'll get applying are people who can't do the job but have questionable ethics. Hence a lack of suitable candidates, and lo and behold, a 'skills shortage' is declared because they can't find the right people !
If anyone has any suggestions, please don't keep them to yourself !
I REALLY dread the idea of having to find a job. I've not had to go through the selection process for over 2 1/2 decades - in that time I've had my own business, and had two jobs thanks to someone who knows me and employed me, and later (when no longer with that company) put me in a company he had an interest in. Unfortunately that isn't going to happen again since he's passed on.
SInce I'm now (according to anecdote) well over the hill for IT, and morally disinclined to lie to get a job - I don't feel confident of finding anything else.
I Agree -- There is a shortage of IT Mgmt
Instead of recognizing that there is a problem with the way many software projects are managed the "no-brainer" MBA solution is to offshore development. That way, it will cost less to keep doing things the same old broken way. Never mind that there never was a real design based on documented requirements.......
Another vote for (against?) useless recruitment agencies...
I've seen the emplyment agency thang from most sides - trying to get a job, trying not to get a job, and trying to find someone to do a job.
With very few exceptions, the agencies are the biggest part of the problem.
When I was an employer, I had two criteria. I wanted someone who knew C properly, and I wanted someone who was a shit-hot coder. That was all - I'd pay pretty much anything to anyone who could fulfill my needs.
What did I get fromn the agencies? "He knows Java". "You want a C-level programmer - what languages would that use?". "I've got a really good guy for you here. Java and .Net". I spent far more time on the phone talking to parasites than was warranted...
A bit later in my career, I was trying to find a job. Many companies require you to go through agencies, so that's what I had to do. So I'd ring up an agency that had my CV and ask them whether or not they'd put me forward for a certain position I had seen them advertising. "Oh we didn't think that was your sort of thing". "What, the job I've been doing for the last decade? No, I can see how you wouldn't have associated that with me..."
So now here I am settled into my current job. I still get the 15 or so mails per week trying to get me to work somewhere else; in *almost* all situations, the job is so different to what I do that I'd have to be *desperate* to even apply. And I'm not desperate :-) On a couple of occasions, something's caught my eye, so I ask a question about it. "Sure," comes the stock reply, "Send us an updated CV and we'll find out".
My conclusion is :-
- There is no skills shortage
- There is no job shortage.
- The reason each side of the divide believes the shortage exists is simply that the cretins who are supposed to be matching up engineers to jobs don't know their arse from their elbow.
IT skills shortage is a myth for the most part
I agree the blurbs in the press about IT shortage is a thinly guised argument that there should be a greater supply of workers to allow them to pay less. It's surprising however that MS has not outsourced litte if any programming overseas. There will probably come a time shortly when many more programmers are needed for new areas of computing such as robotics and AI.
In the long term countries such as India and or China won't pose a threat to US workers because workers over their are beginning to realize joys of consumerism and demanding higher wages. IBM has shifted programmers to India, but the overall number of employees in the US remains proportionally about the same. It's true that IBM laid off 1500 or 3000 workers in the US and a lot of people whined about this. But it's ridiculous not to expect some streamlining when IBM has added 30,000 workers over the past 3 years.
Kurt Guntheroth aced this one!
Some great comments in this thread, but for my money Kurt Guntheroth hit pretty well all the nails squarely on their heads. In contrast, I think Tanuki's comment illustrated the absurdity of many employers' attitudes. He wants someone who is not only conversant with modern IT - an insanely complex subject that is getting more complex with every passing month - but also understands the practical consequences of Sarbanes-Oxley? I often wonder what employers like that expect to do themselves, when they are seeking new hires whose job spec is basically to run the business single-handed. Maybe the PHB can then swan off to Hawaii while still pulling down his immense salary...
The key fact, which Kurt strongly hinted at, is that there is a great divide between those who understand computers and those who don't. Unfortunately, almost all of those writing the job specs and doing the hiring come from the ranks of those who don't. It's a case of the blind trying to select the sighted.
Been said before: Pay peanuts get monkeys
I have been working "in" the same company for roughly ten years. Notice the quotes around in? This is because during this time I have been employed by three different service providers. Each time the contract comes up for renewal it is put out to auction and lo and behold the lowest bidder wins. Naturally the company wants to retain the experience of the current workers so off they go to the new provider. This year the auction has just finished. Again the lowest bidder has won and the vacancies are being advertised. Why? The winning provider has put in such a low offer that the current workers won't move. They don't have sufficent staff to cover the posts. The result is that they are now looking for people to work at such low salaries so that they can still make a profit from the contract. No doubt they will find some but the quality and experience will be nil I would also gamble that the ability to pick up the skills required will be nil.
Skills shortage is artificially created by industry and education
The skills shortage is artificially created by a concerted joined effort of the industry and the US/UK educational establishment.
The industry keeps insisting on the educational establishment delivering "practical skills" and "experience" and the educational establishment in the US/UK (it is not so elsewhere in EU) is actively accepting the message through its naso-rectal interface.
As a result CS majors graduate with pseudo skills like "rational process", "agile methodology" which an be learned in a week on the job or on a course and do not require a semester wasted on them. At the same time the CS graduates lack basic fundamental understanding of the driving principles behind the systems which they work on. The current crop of CS runts does not study optimal control or mass service theory. As a matter of fact they do not even study trivial math like probability theory and functional analysis. Essentially the UK/US educational establishment is taking bright kids and screwing their brains sideways as per industry demands.
From there on it is no longer surprising that Indian, Chinese and Continental Europeans get the jobs. They actually study all of that stuff in university as a part of their degrees and their educational establishment does not give a flying f*** about idiotic industry demands (at least for now). It is also not surprising that the highest CS achievers I have seen produced by the UK and US education system did not graduate with CS. All of them graduated with Physics, Math, engineering (different from CS) .
The only way to fix the problem in the long term is to shoot on the spot any manager insisting on hiring on "experience" (especially in the UK sense) along with invalidating any CS diploma that is not backed up by the essential mathematical curriculum. After all, experience is totally irrelevant if it is not backed by fundamentals. Without the fundamentals an otherwise bright kid is limited to a short life on the "factory floor" after which he is replaced as his skills are no longer relevant.
Skills Shortage - Really?
Replace the words "skills shortage" with "hidden agenda" and I reckon the end result would be the same. And I certainly wouldn't mind betting that the government spin machine is going strong on this one.
We have to remember that under the current regime immigration has gone completely pear-shaped. Why? Because they have been desperate to bring down wage costs whilst inventing new jobs to reduce unemployment.
As someone else remarked to me recently, show me the bog cleaners job in Rampistan being advertised for £150K per annum and I'll sign up for it. I may not be any good at cleaning loos but that won't be evident on my CV when I make my application.
In any industry, if there is a skill shortage the onus is on the employers to train their staff. The trouble is they always want someone else to train folk for them in the hope that they can employ staff fully trained, and if they can't, they have no loyalty to the country they are building up their business in; they see no problem with employing cheap labour from abroad in the hope of chasing higher profits.
the productivity gap.
The problem is that the difference between a good programmer and an average programmer is an order of magnitude in terms of productivity and yet the pay gap is unlikely to be more than 50-100%.
Lo, our employers want the demonstrably good coders and there just aren't enough to go round. We set an aptitude test that anybody competent could ace after a weekend scanning old torrented java blackbelt questions. Two thirds of applicants fail miserably, all after having claimed they've 3+ years relevant industry experience. It's pathetic really.
So yes, there is a skills shortage. But it's also a global thing. Doubtless two thirds of Indian coders are also rubbish, the difference is it might still be economic in terms of productivity to employ them.
Perhaps if IT companies handled their own recruitment...
...instead of farming it out to a bunch of buzzword-searching children working for recruitment agencies.
A scenario I'm totally sick of : little Mr/Miss 20 year old calls me regarding some role or other but first "just wants to walk through my CV. I see you worked for XYZ company, who was your manager there?"
Paraphrased, this means "I've just started My First Little Career in recruitment and therefore I've been given the job of trawling through the database trying to get everyone to add to our contacts for us. I'll call them next as soon as I'm done with you".
I'm fortunate in that my last 3 roles have been direct through word-of-mouth, but the thought of having to deal with these cretins next time around brings me out in a cold sweat.
Besides, if a company wants to recruit IT'ers why ask people who don't work directly in IT to do the searching? All they end up doing is playing a glorified game of buzzword bingo through the CV's database. I've personally been sat next to recruiters at their PC who are unable to save my CV from my website or a memory stick...
"(panic stricken look on face) Could you please just email your CV to me?"
"No, I'd rather spend 5 seconds showing you how to do something this simple - or bat you around the head, of course. I expect more IT literacy from a so-called IT recruiter in this day and age".
(and don't even get me started on the subject of useless Human Remains depts who don't like to dirty their hands getting involved in the hiring loop......)
Too much process waste
When you look at what most IT staff spend their days actually doing, it becomes strikingly obvious that most of it is NOT what they are qualified for. While they might be a trained Java/C++/SQL programmer or a designer or tester or whatever, a significant proportion of people's time is spent sitting passively in meetings, writing progress reports, wading through emails CC'd to 100 irrelevant people and approving documents they neither care about nor understand.
This all happens because no-one today is prepared to make a decision, without the safety blanket of "shared responsibility" and indemnity.This comes from having everyone else (involuntarily) a party to that decision, since they were "copied in" or had to "sign off" on the decision because the process requires it. Likewise the talent can't afford to ignore all this bumf, because they will be held acountable if they fail to spot the one single sentence in an entire email that may, possibly, effect their area of responsibility.
What the industry needs is for people who are productive in an area to be allowed to GET ON WITH IT, while others who have no special skills (we call them "managers") get out of the way and do their job of facilitating the money-earners by making sure they do not get delayed with pointless interruptions and distractions. It should be the management goal to ensure that the talent has the information and resources they need, in a timely manner so they are not delayed in making the products that pay everyone's wages.
I agree, Kurt pretty much nailed it with the first post. Give that man a Reg column.
The trouble is, unlike most Reg topics, I agree with pretty much everything everyone else has said too. Obviously a lot of it is a result of painful personal experience.
Frankly, I think that's a terrifying indictment of the state of the IT industry in the UK.
""We hired him because we liked him." Actual quote from a hiring manager at Microsoft.
When teams are filled with idiots, how can the goal be accomplished?"
you hire people who can get on in the business and with the team. If you are an arsehole, then you will not get hired.
Instead of typing being taught, how about "social skills 101" for science graduates
Have their cake and eat it
All the comments here are in my view very close to the mark.
Employers want skilled IT staff with a business perspective, but don't want to train them or pay them their worth. Time, quality, cost - pick any two, as the saying goes.
Tanuki's perspective highlights that middle management want everything from their IT people in order to cover failings elsewhere in the business. If you expect the IT person to understand the complexities of SOX, do you also expect the legal/compliance people to be able to write SOX compliant code ? No, didn't think so.
You need a business that can state its requirements (with help from IT) that can then be interpreted and implemented by an IT dept that has architects, system designers and coders, rather than an IT dept that is the scapegoat when the business can't elucidate its requirements properly and so decides to send all the jobs offshore so they can then use a commercial contract to hang their new supplier out to dry when it doesn't deliver what they thought it would.
No skill shortage, just management that are making excuses for their own failings
I agree with all the above about recruiters. As a contractor, the number of times I've had an argument with agents who played buzzword bingo with my CV and sent me job specs that were completely irrelevant to my experience just beggars belief. Having said that, there are some out there who do their job properly and either know what they're doing or don't hesitate to ask you when they're not sure. When you meet one of them, make sure you keep their details!
Another problem, even before recruitment consultants get involved, is that IT managers don't know how to write requirements so the specs they send to recruiters for staff often have little to do with what they actually need. And then those same specs get passed on to education establishments who infere that what you really require is people who are wizards on the new language 'du jour'. Hence a lot of young people who have some sort of qualification meaning that they know Java but have no idea what object oriented design mean, let alone how you do it. We work in an industry where the skills you have today will probably be irrelevant in 5 years so it doesn't matter whether you know Java, C#, PHP or Ruby, as long as you have a good grounding in language theory, maths and generic computing.
But it's not just managers and recruiters who are guilty of that. We all are at some point or other. I've just been told that a piece of work I have been doing for the past few weeks would not get approved because I shouldn't have been asked to do it, on the grounds that I am part of the application delivery side of the business, not the infrastructure delivery side of it. The fact that I could do it, had some spare time and there was nobody available from infrastructure to do it is irrelevant: it just wasn't my job so I should not have been asked, let alone have agreed to it.
So it's not so much a skill shortage as a bad use of available skills.
Yes, there is a skill shortage but it is in management. As the other replies state current management is in disarray, they should get educated. How you can require a person to have skills in SOX, SOA, ITIL, xxxML, UTMS, SaaS, security, agile, etc when you only know the buzzwords but not how and why?
My current experience is horrible, after 10+ years designing (government, NIST standards) level systems with AAA and security and talking to managers is frustrating. They (may) know about CC, FIPS, ISO, etc but their real knowledge is basically zero coming out from vendor brochures or "dog and pony" shows they have seen and written in job advertisements.
Now, I know many other developers in field who have problems to get work (or to accept work) because they know what, how and when much better than the people doing the hiring. And it is the same with AJAX, REST, SAML, SIP, etc, try and ask the hiring person to explain what those are! You would be amazed of the answers, I have been, they are so much way off that it isn't even funny. No wonder they can't find cheap workers and when they can, what are the results? A lot of bloated and "almost working" systems which will be fixed in next release 2010, maybe. My last experience was looking a contract job which was advertised as design and development.
First it did look good but when it came to questions as how would you do this they meant coding only, I did show a couple of problems in design and was told, no, it is perfect but how would you develop for that? I wouldn't because after a while the whole system would have problems going that way. OK, it didn't work and I was told that is the agile development, we just code a lot just now and think the systems / interoperability / maintainability / etc later, give me a break! Of course unit testing works, you can always make a small piece of system to work alone but try to match it later to your other products and systems, good luck! Haven't they seen the statistics how much an early correction in design saves compared to support and fixing basic design bugs when the system is in production? No, they haven't, so we are back in management eduction!
Same with shortage in mainframe developers, sorry, my 30+ years experience is that it has always been a management cry to hide their own problems. I have had and met development / software engineering managers who like to boast how they coded in Cobol, some even in in assembler, in mainframes in 80's and then "graduated" to PC's so they know everything of development! IMHO, they are the most dangerous types, they never learned whole systems, infrastructure, and they still think that threading, OO, metalanguages, etc are something new and difficult? Or, maybe it is, for them because they are still fighting to understand how PM tools work with SharePoint?
We sealed our own doom when...
...we developed point-and-drool Web/database systems that any MBA with a third-grade intellect could use to call themselves a "recruiter". What profession would tolerate dealing (on either end) with people who don't know how to use English ("but I am being from America my life all of it!"), don't know anything about the technology (just a bunch of keywords next to checkboxes on a form/Web page), don't know anything about the business side of IT (the guy talking about SOX and other regulatory stuff was spot on)... along with being some of the least intellectually curious people I've ever met - 90% of those who've started in their line of work in the last ten years seem to be in it for the money, full stop...and the older ones who are any good don't do find-a-coder anymore; they're either working in-house for the Fortune 50 or specializing in 'senior management opportunity matching').
Of course there's ageism in IT - between offshoring to countries that have 2- and 3-year "BS" degrees with an optional 1-year MBA on top of that ("are you wanting chapati with that?") - AND - the people "working" the "recruiting agencies" weren't even born yet when I got my first job after college, yet think "3 years experience" qualifies someone for a "senior/lead developer" position, we're going to continue to go down this death spiral. Commercial and in-house projects are failing more expensively and spectacularly than ever before, and most "IT disasters" seem to be caused by people who couldn't spell IT if you spotted them the first two letters. I think the current trend towards open source development is as much a realization that successful FOSS projects remain the last true meritocracy in our line of work, where you're less likely to run into people who don't know their orifice from a hole in the ground, but who remember Back Orifice.
The funny thing is -- if you go to Bangalore or Chennai or Shenzen or St Petersburg and look at the offshoring companies, they're having the devil of a time to find - and paying ever-higher wages to keep - people who are reasonably competent in English and the computer language flavor-of-the-moment. Too bad nobody ever offshored the recruiting agencies.