predicts that the number of IoT devices will surpass 11.2 billion this year, the majority of which are in the consumer sector. The same report forecasts that the endpoint spending will exceed $2 trillion, in hardware and software combined.
This enormous demand for IoT development is slowed down by the lack of skilled developers. The field is so new there is no specific curriculum. Those aiming to get into this niche usually come from a data science or engineering background and have brushed up their skills. How can this gap be closed and what should an IoT developer focus on first?
How is IoT Different from Traditional Data Science?
The main difference between traditional data science and the demands for IoT are generated by the real-time factor. The high signal rates
of discrete observations need to be aggregated to take on the spot decisions. The two dimensions that add complexity to this problem are the need to streamline data management and compress a massive amount of data coming from various sensors. The other demand is to perform edge analytics which optimizes decisions and detects performance misbehaviors. Other differences include knowledge about working with specific hardware, modeling with time series, reinforcement learning, as well as privacy issues.
The IoT Developer‚??s Skill Set
To tackle these differences, it follows that coding knowledge is not enough. Successful IoT development requires a broader and more diverse set of skills and a flexible mindset.
Data scientists can become specialists in the IoT niche by converting their Big Data analysis skills. They will have to take into consideration the source and frequency of data. The challenge is to create systems, consisting of sensors, chips, and communication gateways
that are lightweight, energy efficient, and reliable. Then, connect these with computational machines that can react immediately.
The real challenge is that being proficient in only one area, as a coding language is not enough anymore. The next generation of developers will have to be multi-lingual in more tools and technologies.
highlighted the skills that will be in the highest demand for IoT developers:
- Machine Learning - this is necessary to create smart applications using data retrieved from sensors. The goal is to create building prediction models based on patterns from data.
- AutoCAD - this skill is more related to engineering, but it will be essential to build devices that follow solid design principles and are customizable.
- Node.js - this is a transferable skill which can act as a bridge between the old and new programming worlds. The environment is considered stable and suitable for IoT enabling devices such as Arduino and Raspberry Pi.
- Cloud computing and management - this is another data scientist skill that can be reinterpreted for IoT purposes. The data science consulting company InData Labs highlights that working with ETL (Extract, Transform, Load) on unstructured data is a mandatory requirement for IoT. This becomes obvious when the information flow includes sound and picture files.
- Edge analytics - since data transfer over networks is time-consuming and can become expensive, in the case of IoT devices it is best to process at least some of it on the spot and only send the results or aggregations. This also helps to get near real-time answers.
- Blockchain knowledge - This decentralized system could help secure IoT devices through smart contracts. This ‚??truth machine‚?? can reduce the costs of security for large networks of IoT devices.
Other relevant skills that are not core know-how for developers but will make a difference in the IoT world include UX/UI skills to make the device as user-friendly as possible, information security protocols to enhance vulnerability assessments and mobile development since most devices will be managed through smartphones or tablets.
Although crucial, technical skills are not enough to create synergies. Since IoT aims to solve real-life issues, developers need to be problem solvers. They should not only be able to manipulate data following some technical protocols or to train deep learning algorithms, but they should also be able to understand the logic behind it and the relevance towards the problem to be solved.
At least an introductory course in Business Intelligence can be useful. This helps to put things into perspective and helps identify new problems to be solved by devices.
A good thing to pay attention to is stories about companies missing their revenue targets. Another problem that is worth thinking about is the ability of a company to understand and use their own data. Most organizations are able to gather heaps of data from existing devices such as sensors, employee time-trackers, e-mail, POS and more, but they have little idea about what they can use this data for or how it could be leveraged for more revenue.
As a data scientist dealing with IoT problems, you are at the forefront of the industry. Take time to think, read and even speak about the issues you face and the solutions you find. What were the hardware challenges you were able to overcome? How do you manage and organize data? What type of architecture do you prefer and why?
Working in a fast-paced environment like IoT development requires a strong set of personal values including curiosity, self-actualization, and focus. You need to be able to embrace a cross-disciplinary approach to your work and not be afraid to investigate problems which are not in your primary expertise area.
Be ready to upgrade your networking and teamwork skills, since an IoT specialist is never a lone wolf. The minimal set-up for such an endeavor requires at least one electrical engineer, one mechanical engineer, one embedded systems specialist, front-end/back-end developers and a product manager. You need to be able to communicate with each of these people and grow together.