Addressing the IoT Developer Skills Gap
While the COVID-19 era has made manufacturing, production and supply chain logistics challenging, the IoT developer skills gap also creates its share of problems.
In 2021, a Forrester IoT survey commissioned by Qt company, an application framework company in Finland, found that 80% of IoT product makers were encountering pitfalls during development. Of those, three quarters said that demand for IoT developers was outstripping supply.
For enterprises where IoT application development is a core skill to drive revenue-generating products, it’s imperative to hire the right IoT developers on the open market. But there’s stern competition for new hires and that has pushed skyward the salary awards for recruiting. For companies with a lesser budget, it might be better to nurture IoT development skills from within.
The issue with this is that IoT developer skills are a relatively recent discipline of training. A few college curricular exist that comprehensively address this field, augmented by vendor-sponsored education that’s more targeted but also tailored to the sponsor’s standpoint.
This places the onus on IT recruiters to find internal candidates who can cross-train into IoT, and also to create an educational pathway so selected individuals can acquire IoT development skills that are needed.
The IoT Developer Skill Set
Part of the requisite toolkit is IoT application development. Training should focus on software development at a programming level, but also be aware that developers must understand the other “moving parts of IoT” (i.e. how sensors and devices work, how IoT works on networks, what you need know about IoT in the cloud and on premises, IoT’s integration with other enterprise systems, IoT security, and making IoT applications user-friendly).
To facilitate acquisition of this knowledge, it’s imperative for IT leaders to forge collaborative environments where information between IoT developers and other areas of IT is free flowing. Corporate IT should also nail down the IoT environment that best suits the business, and which IoT skills are needed in application development.
IoT developers should have experience with various databases and know the MQTT (message transport protocol). If the manufacturer searches internally for talent, it might discover it already possesses a manufacturing engineer with a strong background in programming PLCs – and that this is almost certainly the best person to train.
In another case, a sales-oriented company wants an IoT programmer who can focus on IoT and analytics. The job specification includes proficiency in an Amazon Web Services/MySQL/MongoDb environment and at least one year’s experience programming IoT products. The best candidate should be able to program in Python, C, C# and Java Script—and should know the MQTT protocol.
Given the gamut of possible IoT skills and business environments, each company must be careful to determine the subset of IoT skills that fits their needs.
Once this has been decided, IT can proceed with identifying staff members likely to succeed as IoT developers.
Choosing your InternaI IoT Developers
The ideal candidate for cross-training to gain IoT developer skills is highly motivated, knowledgeable about the business and why it needs IoT, and, in an ideal world, already up to speed with some of the technologies that IoT uses.
Many of these developers also already have experience building mobile applications that run on IoT devices. As a result, these developers already have a working knowledge of networks, systems, security, databases and corporate core systems, all of which are critical touchstones in IoT development.
Once these individuals have been identified, IT also needs to ensure that at least some candidates possess the soft skills needed to collaborate with users, design user-friendly IoT interfaces, and take the lead in IoT projects. In some cases, these soft skills need to be developed to round out the IoT developer skill set to truly forward the goals of the business through development.
Developing IoT Developers
The next step is to develop a training plan to equip developers with the necessary skills and then insert them immediately in projects where they could use these skills.
Here are some best practices that work every time:
Don’t Start from Scratch
If you already have motivated developers who possess a subset of the IoT skills needed, use these skills as a foundation to build on.
Use a Platform
For instance, if you already are a Microsoft Azure shop, there is a set of IoT application development tools in Azure (not to mention IoT device application programming interfaces) that your IoT developers can work with. Integrating IoT applications will be less of an issue, and your IoT developers will save development and training time.
Get the Training and Put It to Work
There is a plethora of technical courses for IoT development. The key is to choose wisely according to the requirements of your IoT environment and the end business.
If your company uses a platform from a vendor that supports IoT , the initial focus should be on the tools and training provided by the platform vendor.
Once IoT training is set in motion, it’s important to put the training to work on real projects while the training is fresh! Even if an initial IoT project is small and lasts only two to three days, it’s an avenue to building confidence for both developer and company.
Begin with Simple Projects
Initial IoT projects should be tightly constructed and controlled. Some might last only a few days, if you’re using an IoT platform with vendor support. Lean on the vendor’s expertise and consulting during early days of IoT application development. The goal is to achieve success on a small scale and to then build out from there.
Move Forward With Your IoT Development
You might want to start small by activating a simple IoT device and then build on this by scaling out your architecture. Or, you might start with mobile IoT development, because you already have familiarity with it, and take that knowledge forward to create more sophisticated analytics.
What’s important is to have an evolutionary IoT application development plan that the company, corporate IT and IoT developers all understand and perform to. In this way, IoT development becomes another discipline along with the ranks of other applications services that IT already provides.