In the ever-evolving technology landscape where innovation paves the way for progress, one programming language stands as a staple in the industry: C++.
Thanks to its versatility, speed, and depth, C++ has been the go-to programming language in the technology industry for everything from game development and 3D animation to embedded systems since its introduction in the mid-1980s. And today, companies including Adobe, Microsoft, Apple, Mozilla, Bloomberg and more continue to use C++ as a primary language for large-scale development.
Considering the widespread application across the industry, the nearly 40-year-old language is anything but obsolete. But an industry-wide challenge for companies has emerged – and it’s one that’s all too familiar for Human Resources managers:
It’s harder than ever to find and hire highly skilled C++ talent.
And as companies try to scale and drive forward with their innovative products and solutions, the lack of available, skilled C++ programmers to help drive them forward is holding them back.
So, what’s making C++ talent so hard to find?
For help unpacking a few common themes, we’ve reached out to two prominent tech companies in the thriving tech hub of Ottawa to gain insights on why expertise is so important, and what can be done to bridge the C++ talent gap.
C++ skills are still very much needed
According to Shawn McCormick – Senior Vice Principal of Software Development, Signiant, although there are many different programming languages at work at the company specializing in data and file transfer, C++ still plays a vital role in their product offerings.
“On the full-stack development side, our most current software products are JavaScript/TypeScript, and previous generation products run in Java,” he explained. “On the embedded development side, we run Golang for our newest product, but we still have a lot of work to do in C++ for our previous generations of products.”
McCormick added that even when migrating technology to more modern languages, the challenge is that C++ expertise is still critical in helping to make it work.
“Even when we migrate existing C++ technology to Golang, there’s a requirement for the developers to understand both languages so the migrations are successful,” he said. “And Golang itself is similar to the classic C language, so there’s valuable knowledge in knowing these classic embedded languages.”
Chris Thiffault is the Technical Director for Keywords Studios, which acquired Ottawa game developer Snowed in Studios in 2021. He says from the perspective of a game development company, anyone skilled in classic languages brings an inherent value to the table by way of a widely applicable toolkit.
“In our line of work,” he explained, “we have found that a solid C++ developer is more likely to already have the strong base programming knowledge that we need to be effective at architecting and debugging systems.”
C++ skills are versatile – but learning it can be complicated
The depth of knowledge that comes from C++ skills is really where the value comes in. C++ is noted today as a middle or intermediate-level programming language. This essentially means it can be both machine-friendly and user-friendly through:
- Low-level language features that operate close to the hardware and offer fine-tuned control over hardware and memory, making it perfect for optimizing performance.
- High-level language features – designed to be more user-friendly, abstract, and generally easier and faster for programmers to read and write.
Along with the complexities comes a notoriously steep learning curve, and with new, more modern, streamlined and targeted high-level language offerings able to do the job, many programmers are left to wonder whether it’s worth it to learn an older language like C++ at all.
To fuel the fire, McCormick explained that C++ is starting to fade away as a learning option for aspiring developers.
“C++ is disappearing from some university curriculums as these schools seem to focus more on JavaScript, C#, Ruby, and Python,” he said.
Increased competition is making C++ harder to find
Thiffault feels that the challenge to find C++ has been consistent over the past 10-20 years and points to the increase in volume in terms of the numbers of companies seeking C++ talent, which could be magnified the issue.
“We feel the challenges remain the same as before,” he said. “From a game development perspective, there may be more competition, which makes getting experienced C++ game developers harder simply due to the higher number of employers.”
McCormick agrees that increased competition is a factor and added that in a technology hub such as Ottawa, the competition is only magnified for programmers specializing in low-level language.
“C++ is still very much in demand, whether for autonomous vehicle development, gaming, telecom, or any software that runs close to the hardware,” he said. “Ottawa is a hotbed of activity in all these market segments.”
What needs to happen to get beyond the shortage?
Although Thiffault maintains that the company feels that demand has been high over the past 10-20 years, they feel work can be done to ensure a strong programming talent pool for the future.
“We do feel a few things could help improve things,” he said. “Better teaching of fundamentals at the University/College level is important for our industry.”
McCormick agreed that as far as possible solutions, the education system could positively impact the availability of C++ talent in the region and in the industry. Along with ensuring that post-secondary learners continue to be offered a wide variety of options, McCormick feels that available programs can help bridge the gap by helping companies connect to skilled talent outside of their immediate area.
“Programs like Invest Ottawa’s Work in Ottawa program are a great way to attract international talent when we cannot find it locally.”
Do you have C++ skills?
Take advantage of our upcoming Destination Ottawa: Virtual C++ Career Fair 2023 –happening virtually on September 12th, 11 a.m.-1:30 p.m. EST.
Discover opportunities in Ottawa for skilled programmers with strong C++ skills. Register here!
If you’re a tech company looking to fill open positions, let us know how we can support your company’s hiring efforts.