Accessibility Links

Ask Amiqus: What programming languages are the most attractive when hiring?

Posted by: Liz Prince
09/10/19

"I work with at least two different languages in my current studio, but more and more I'm feeling I would need to learn more to make the next step in my career."

If creativity is the beating heart of the games industry, then technology is its lifeblood and the ability to code continues to be a mainstay of the most desirable skills when a games studio is looking to hire. Without the contribution of the programmers there is no game, so from the array of software options what are some of the most desirable languages game developers choose and why?

Even as we move through the fourth decade of games software development, the number one skill continues to be the 35+ year old language of C++. The majority of console and PC games still fundamentally rely on C++ and critically it underpins the most complex and demanding game engines available, such as Unreal. “Basically, nothing that can handle complexity runs as fast as C++” says Bjarne Stroustrup, creator of C++ back in 1979. Why has it not been usurped since then? Arguably the results that can be achieved with C++ have never been bettered. 

Woman using C++ and C# games developer language to build gameplay skills

One of the beauties of C++ is that it is flexible, enabling you to write additional features in to an existing engine, game or tool-set at the lowest level. This provides the flexibility of a high-level language with the power, efficiency and level of control more associated with low-level languages such as assembly. As a core object oriented language, C++ has the power to apply hugely complex programming demands balanced with more efficiency and speed than any other high-level OOP language out there. It’s a win-win and these features make developers with C++ skills enormously attractive to hire. 

The power of C++ is not without price and mastery is highly aspirational

 

If you’re not familiar with it, getting started in C++ can seem like an uphill climb - the power of C++ is not without price and mastery is highly aspirational. When making career choices it’s worth bearing in mind that some languages are easier than others.  Being so intricate it’s challenging, no low-level systems are handled for you and the kaleidoscope of possibilities means precision is key. One benefit of learning C++ however is that many other languages follow similar principles, so once these skills are mastered transferring skills to other languages can feel much easier.

C++ is not alone however, C# has continued to rise in demand from employers. Born of the same object oriented principles, inspired by the C and C++ family tree, C# began as Microsoft’s simple, modern, general purpose language for the .Net framework. When it comes to online and cloud technology, the presence of C++ and C# are pretty evenly matched, with the likes of Microsoft Azure utilising the agility and speed of its home language C#.

Over the last few years demand for C# has grown exponentially as the basis of the Unity game engine. Unity combines the power to create games and critically, to take them cross-platform, uniting game development for PC, consoles, mobile devices and websites alike. You can play, preview, edit, test and debug your game with rapid iteration, and this comprehensive list of features makes Unity very attractive to game developers. It is capable of creating physically-based visual features with rich and immersive visual content and although it is yet to match the full power of C++, C# within Unity has become extremely attractive when hiring today. Not least because it is still relatively new so experienced developers are harder to find. 

Python has gained momentum because of its universality across staple tools and packages such as Max, Maya and Blender. It’s lighter and more readable syntax makes it much easier to pick up than the deeper languages and nimble scalability increases its usefulness for large and small scale development.

Different developers will be attracted to different skills depending on their choices of mobile strategy

 

Alongside the demand for cross-platform skills we also see studios opting for native mobile development specific to a given mobile platform, primarily Objective C for iOS and Java for Android. Native development requires unique expertise for that device and the benefit is that the full potential of the platform can be reached, driving greater user experience through larger and faster capabilities. On the non-native side, also attractive in mobile, are HTML5 skills for apps using standard web technologies which creates cross-platform mobile applications that work on multiple devices. These hybrid apps and games using an SDK are typically cheaper and faster to create than native. Different developers will be attracted to different skills depending on their choices of mobile strategy, so there isn’t a one-size-fits-all. As you might expect from the aforementioned, C++ can also be utilised for mobile development. This is a common denominator enabling reuse of core code to port across platforms.


Due to the high skills demanded within the industry getting in at entry-level can be a challenge and it’s no secret that software development requires a rigorous set of competencies. Most developers look for graduates with at least a 2:1 or a 1st Class degree and the deeper and more mathematical the computing aspect the higher the demand. However a good piece of advice is to keep focused on your capabilities and play not only to your strengths, but also what you enjoy. Experience and demonstration is always of huge value to the industry with or without a degree and cross training into new languages can make you more widely desirable, in particular within a smaller studio where the variety of tasks can be greater. The alternative to generalist skills is to consider not only your languages of choice but also a programming specialism

If in your current role you are already working with one of the most in-demand programming languages our advice is to keep evolving techniques, share your ideas and learn from other developers in the games community. There's nothing to stop you from learning other languages in your spare time and knowing the emerging languages in the industry will help to keep you current. If you’re worried about not having the most desirable skills then it’s up to you to ask for some training, to learn what you can to produce personal projects that demonstrate you can cross into other languages with ease.

The key is to always stay open-minded to learning new things and to keep in touch with what’s going on in the wider industry as well as what’s happening within your own studio.  

Are you interested in learning new languages in a programmer job? Amiqus are experts in games recruitment and we want to use our industry knowledge to help you find a role that you love, whether that's in programming, animation or art. If our current jobs aren't exactly what you're looking for then sign up to our job alerts.

 

Browse job by skill:

C# jobs C++ jobs Core Tech Programmer jobs Engine Programmer jobs Gameplay Programmer jobs Graphics Programmer jobs UI Programmer jobs
Add new comment
*
*
*

Jobs Related to this Post