If you peruse job ads, there are always openings for IT positions. In fact, we’ve been told over and over that there’s a severe shortage of these professionals. On the other hand, some critics have said there really isn’t a shortage of IT jobs. They say the problem is that companies have unrealistic requirements, are not willing to train existing workers, or they want to pay below market rates. One example of the confusion surrounding this issue is a CNN report on IBM’s decision, in 2016, to lay off thousands of workers while also planning to hire 20,000 new employees. This followed revelations from Business Insider, that in 2015, IBM added 70,000 new workers — many through acquisitions — and also shed 70,000 employees.

So, what’s going on? Is there an IT talent shortage or not? If there is, what’s causing it? Techopedia rounded up a stable of experts to separate the myths from the facts.

Real Shortage or Crying Wolf?

All of our experts are in agreement that the IT talent shortage is real. “The lack of software engineers is not a myth; there are currently about half a million unfilled computing jobs in the U.S.” according to Sylvain Kalache, co-founder at coding academy Holberton School. “And according to a recent survey by Stripe and Harris Poll, this software developer talent is actually more valuable than money to companies, proving just how bad the shortage really is,” Kalache says. (To learn about what it’s like to be a software engineer, check out Job Role: Software Engineer.)

In fact, the U.S. Bureau of Labor Statistics projects that by 2020, there will be 1.4 million computer science jobs and only 400,000 computer science grads who have the necessary skills. ”And that’s why the top four tech companies — Google, Apple, Facebook and Amazon — have made billion-dollar investments in new campuses across the nation,” according to Dr. Arthur Langer, director of the Center for Technology Management at Columbia University and chairman and founder of Workforce Opportunity Services (WOS), a nonprofit with a mission of developing the skills of untapped talent.

Trying to Keep Up

There’s no single reason for the shortage of IT talent. However, one issue is that we can’t produce IT workers as quickly as needed. According to Kalache, universities are training roughly 35,000 computer science grads each year, and alternative education is training approximately 20,000 a year, but he says we are a long way from being able meet the needs of companies.

Digital transformation is outpacing education at all levels of IT jobs, and Langer sees the effects on a routine basis. He oversees the M.S. in Technology Management program at Columbia. “This is a master’s program designed for professionals with over a decade of experience in leadership or technology,” Langer says. However, almost one-third of his students already have a master’s degree, and many of the students have an MBA. “From high school students to industry leaders, people are recognizing the need to re-skill and constantly adapt to today’s digital landscape — and we probably don’t even know what skills the jobs ten years from now will require of workers.”

The digital revolution and enterprise adoption of new technologies are two factors that David Armendariz, general manager of the technology division for Lucas Group, points to as contributing to the technology shortage. But they aren’t the only two. “A retiring baby boomer generation, a deficiency in STEM graduates, and an increase in millennials’ lack of interest in technical careers or a career path are three other reasons,” Armendariz says.

Lowball Offers

However, companies are also responsible for the shortage. For example, Armendariz says companies want to get a bargain when they hire employees. “Many companies base their offers on a budget that was created by someone who doesn’t truly understand what it takes to recruit the best technical talent in today’s marketplace,” he says. “Also, a lot of companies think that if they have a ‘unique culture,’ candidates will want to work there for far less money than they could make somewhere else, and more often than not, it’s just not true.” Yep, it turns out that being able to bring your dog to work or do rooftop yoga doesn’t compare to being able to pay your bills and live a comfortable life.

Outsourcing

To avoid paying more, companies often look overseas. “A good software developer in the U.S. costs $50 to $100 dollars per hour, but overseas, labor is much cheaper,” explains Gene Mal, CTO at Static Jobs. “In India or Pakistan, a software developer costs only $5 to $20 dollars per hour — do you see how much money a company can save by outsourcing jobs?”

In fact, Mal says he was once laid off because his job was shipped overseas. “The company I worked for as a software developer was acquired by another company, and they laid us off after we trained foreign developers,” he says. “There are plenty of qualified IT workers in America who have a hard time finding a job because most companies are outsourcing jobs to other countries.”

And this is especially true of entry-level jobs, according to Mal. “No one wants recent college graduates because they don’t have any professional experience,” he says. “Those who graduate from top universities are safe, but the majority of recent college graduates are not wanted.”

What Companies Want vs. What’s Being Taught

The issue of recent college grads involves two different components: a lack of experience, and also a lack of applicable skills. “Having a degree used to signal that the candidate had the talent the company was looking for — and leading companies would hire candidates based on that,” says Kalache. “However, this is no longer the case.” Today, he says companies want to make sure that candidates actually have the skills required to do the job.

Also, Kalache notes that traditional, lecture-based education is often not enough to prepare students for a software engineering job. “Software is a craft and practice makes perfect — that’s why companies are now making sure that a candidate knows enough of the craft before hiring them.” However, he says students are learning by listening to a lecture and they’re not developing this ability.

“Also, it is hard for traditional institutions to keep up with the rate of change in the tech industry; it takes a while to get the curriculum developed, approved by the board, reviewed by the accreditation institution and finally train the teachers,” Kalache explains. “Then, the student has to go through four years of training, by which time, the technology is often obsolete already, meaning that there is a mismatch in terms of skills.”

And sometimes, it’s the reverse and students are ahead of the companies. “One example is that many companies still have very deep needs in older technologies such as development in the Microsoft .NET framework,” says Casey Liakos, president at Carex Consulting Group.

“However, this is not something that is part of a modern training curriculum, and many developers who have deep experience in .NET have moved on to newer tech to stay current.” Liakos explains that the best developers tend to gravitate toward the newest technologies, but the average company isn’t ready to take advantage of their skills.

“The traditional full stack developers sometimes don’t go deep enough on certain technologies to meet the needs of enterprise technical hiring processes,” Liakos says. As a result, he says excellent developers aren’t being considered for jobs that they’re capable of doing. “They may have two years working on a certain technology instead of the required three, but they certainly have the skills and trainability to quickly get up to speed and be successful.”

Lack of Training

But even when applicants are trainable, this might not be an option at most companies. “It takes time for inexperienced workers to become truly ‘qualified’ by gaining on-the-job experience in modern IT processes, says Arijit Mukherji, the CTO at Signal FX. “Also, large parts of the existing IT workforce may need to be retrained in order to fit new job requirements in an ever-changing workplace,” explains Mukherji, who was one of the original developers of Facebook’s metrics solution, ODS. (If you need more training, maybe online courses are a good option. Check out 6 Key Data Science Concepts You Can Master Through Online Learning.)

So, why are companies hesitant to invest in training employees? It’s not cheap, according to Langer. “However, talent exists everywhere — it just needs to be cultivated,” he says. “Opening up a job search to nontraditional applicants and investing in training isn’t just equitable, but profitable as companies can acquire the talent they need.”