21 Jun 2020

5 hot development skills that gaming companies need in 2020

One of the biggest challenges in any industry is staying ahead of the curve when it comes to the skills you need to deliver key projects. Companies in the gaming and betting industry are continually designing solutions around increasingly complex datasets, so recruiting the right software development resources (whether in-house or external) is critical.

Given the rapid evolution of technologies, tools and techniques in software development, identifying the key skill-sets you’ll need in the short, medium and long-term can be incredibly difficult.

For many CTOs, this gives rise to the fear of missing out (FOMO) – the innate worry that by failing to keep their finger on the pulse of emerging technologies, skill-sets and trends, big business opportunities will be missed.

So, we’ve identified some of the skill sets that we believe will be in high demand across the betting and gaming industry in 2020 and beyond. Without securing these skill sets, it’s fair to say you could be taking something of a gamble…

1. Low-latency multi-threaded processing

As betting companies continue to gather more and more data, there’s an increasing need to process that data accurately and quickly. In today’s (and tomorrow’s) industry, programming code needs to work fast.

For example, when a customer places their bet, the bookmaker needs to know in an instant if that person is a good customer or a bad one.

This requires systems to assess a lot of details at once – not least the country the user is in, their historical data and betting patterns, and an evaluation of the betting slip itself (where a shrewd bet is often hidden among a raft of frivolous ones).

Key to processing this information more speedily is multi-threading – a coding discipline that effectively enables an executing programme to delegate tasks to multiple threads.

Where each task takes one second to complete, a single thread can complete ten tasks in ten seconds. By spreading the work across ten threads, all the tasks are completed concurrently in a single second.

Given the rising importance of processing data in high volume with low latency, multi-threading knowledge will be a key skill for 2020 and beyond.

2. Working with actor systems

The quintessential feature of actor systems is that tasks are split up and delegated until they become small enough to be handled in one piece.

In doing so, not only is the task itself clearly structured, but the resulting actors can be reasoned in terms of which messages they should process, how they should react normally and how failure should be handled.

Compare this to layered software design, which easily devolves into defensive programming with the aim of not leaking any failure out. If the problem is communicated to the right person, a better solution can be found than if trying to keep everything “under the carpet”.

The difficulty in designing such a system, however, is deciding how to structure the work. Moreover, from a sourcing perspective, it’s challenging to find software engineers capable of doing it.

Indeed, the rapid emergence of multi-threaded environments means that when many of today’s engineers began their careers, actor systems were virtually unheard of.

Those who do have experience with actor systems (such as akka.net or Microsoft Orleans) will therefore be in big demand in the betting industry over the coming months and years.

3. Data processing and machine learning

Machine learning is more than just a buzzword – it’s a genuine game-changer for the betting and gambling sector.

While a human being can still produce a better model than a machine-learning algorithm, the amount of data involved today is so vast that it could take weeks, months or even years to create one.

Far from the common perception that robots are stealing human jobs, increased reliance on machine learning will see developers with related skill-sets become highly sought-after.

Quantitative analysts or mathematicians can come up with a model with an appreciation of the raw data available, but it’s the developers job to take that model and translate it into C Sharp or Java to make the algorithm work in practice.

Without prior knowledge and some level of familiarity of what such algorithms can do, it can be very difficult to implement these models. Experience with ml.net, machine learning.net, or other algorithms such as X-G Boost, is therefore becoming increasingly desirable.

4. Microservices skills

The ability to develop software with a microservices approach is nothing new, but it remains one of the most valuable skills in the betting and gaming sphere.

In fact, microservices skills look set to stay in demand far into the future – because when you’re dealing with such vast quantities of data, you can’t handle it all in one single service.

In a microservices approach, tasks are performed in single-function modules. For example, when a bet comes in, one microservice module processes the bet and unifies it for every other service to consume.

One service sets the bet up in the accounting system, another displays the bet on the user interface, while another will assess the shrewdness of the bet.

From a development perspective, microservice architecture makes upgrades and enhancements far simpler and faster to deploy. By comparison, monolithic systems are very slow to upgrade – as any changes involve work across the entire system.

5. Automated testing skills

Automated testing validates that programmes are running correctly before they are released into production.Testing is a vital part of the software development process, yet it’s often overlooked and left far too late in the day in many projects.

Some development teams will ignore testing for as long as possible, until code becomes too complex – at which point the testing and any subsequent changes become much larger pieces of work.

A more continuous approach to testing is a discipline that ensures momentum in development projects and helps to avoid excessive remediation further down the line.

Continuous automated testing is proven to save a considerable amount of time and effort for development teams, as well as resulting in more stable and secure software going out the door.

It’s therefore another skill-set (and a mindset) that can be highly valuable to have on board.

In summary and beyond

Aside from the hot skills highlighted in this post, the importance of ‘soft’ work skills should never be underestimated. The ability to communicate and work as a team will always be essential to the success of any project. But at the cutting edge of software development, it’s the in-demand technical skill-sets that are changing all the time.

For betting and gaming companies seeking to build their empires on the ability to process and interpret huge volumes of data, recognising and recruiting these skill-sets ahead of time can be the difference between winning and losing.