Have you heard of the IT skills gap? Tales of huge numbers of “missing” developers. Companies are searching but can’t find them anywhere. And nobody is coming to fill this huge talent chasm… or at least that is what we hear a lot of anyway.
It’s predicted that there will be 825,000 unfilled positions in the EU by 2020, which is a huge skills deficit!
I was interested in finding out if this was true, and if so, how this skills gap affected my local area — Birmingham (UK). So, I investigated it and eventually wrote a report about my findings here. I wrote this report a while ago now, and there are loads of things I’d like to add to it plus loads of great initiatives happening in Birmingham that I haven’t included, but here are three key things I did learn:
Birmingham and the Tech industry — perfect match?
Why is Birmingham interesting? Well, in addition to having more canals than Venice (technically a true story), Birmingham is a young, diverse, vibrant, and exciting city. It has great culture, art, entertainment, shopping, etc… But Birmingham is also struggling with unemployment. Around 19% of its young people are classed as NEET (not in education, employment, or training). That is a really big percentage — but surely tech is the answer! With 40% of the population under 30, and youngsters loving technology as they do, there is a workforce ready for tech. Plus for companies, costs compared to London are so low that it might as well be Panama (without the dodgy dealings). Transport links are great, and companies like Advanced Computer Software have seen the potential here, with their move to the Mailbox accompanied with the announcement of 400 tech jobs.
Academia and Industry — do they match?
This question is not unique to Birmingham, or even to programming. The disconnect between academia and industry has been shouted about in just about every subject area. But there are a couple of reasons that it is felt more in tech.
- Speed. Technology is moving so fast that even the industry can’t keep up. Tools and frameworks are updated or outdated every couple of months. So when universities set their curriculum for Computer Science, by the time they teach it the industry has already moved on. Universities are probably better off (as they are) teaching skills that are not tied to frameworks or even languages; they provide a great grounding in problem solving, researching, and critical thinking. However, this means there is a knowledge gap for someone to be considered “ready to work” for many companies.
- Practical Skills. Theory is a huge part of academic learning. And it is a huge part of Computer Science. But coding is a skill that is best learned through doing! The argument is that graduates just haven’t got the experience of real-world coding projects that they need. To sum this up, programming exams are still written on paper.
- Soft Skills. The route into programming can be lonely, support-less, and many people give up and think “it’s not for me”. Those that make it through this journey get used to learning and coding alone. Well, that unfortunately means there is a lack of experience working in teams, collaborating, or even just communicating with other people. Coding in companies is generally a team sport, and you need to interface with technical colleagues, non-technical colleagues, customers… soft skills are essential.
Motivation — the biggest barrier to code?
One word kept popping up again and again when speaking to companies about what they are looking for in the workforce — aptitude. But what does that even mean? We picture it to mean some innate, divine ability to be “at one with code”. There has been lots of research done on whether some people are naturally better coders, or predestined to be a computer-whisperer. But, the single most important aspect for learning to code is motivation. This sounds great — so anyone can learn to code, right? Well, because learning to code can be an isolated experience, people not suited to that environment can lose motivation. Learning to code is often hours of repetition of mindless exercises, and frustration when getting stuck time after time. People who don’t have the support available, quit.
I think collaborative, project-based learning environments solve both of these problems. Just by adding another person, a task can become infinitely more engaging and people can support each other. By doing real, or at the very least fun, projects you get a sense of achievement, and can see real results, which improves motivation. And collaborative learning means that soft skills, team work, and communication skills are baked in. What we are building at the School of Code is trying to address all of these points so that the route into programming is wider, and we can help more and different types of people through the journey to the tech industry.
Thanks for reading — there is more inside the report.