As we were doing some research we asked ourselves: How many skilled developers are ready to lead the way in the new era of IoT? Somebody has to implements all these billions of devices in a targeted way. Who are these people? And where are they hiding?
We found two research studies. The first one is mentioned in a blog post from John K. Waters, citing the “2014 Worldwide Software Developer and ICT-Skilled Worker Estimates” report from IDC. We did not order the complete study, but John cites that there are 18.5 million software developers around the world, and about 11 million of those are professionals.
That does not reveal the exact area of work, i.e., whether they are developing desktop applications, for the web or for mobile. But it did give us a real number of the overall community of developers.
How many of those developers actually do embedded software development? Recent figures were hard to find. We did find a Slideshare presentation from a webcast of VDC Research (vdcresearch.com) about The total size of the embedded software engineering market.
Slide #9 estimates the world wide number of embedded engineers at 880,000 for the year 2010, with a year-to-year growth rate of approx. seven percent. Calculating this further to 2014 (making the comparison to the IDC figures above) would yield approximately 1.16 millions embedded engineers.
Consequently, the number of professionals able to design and build IoT products is very likely to be much lower than, for example, those able to build web applications. Now building for embedded is truly different from building for the web, for a number of reasons as outlined in this Linked In article by the Electronic news, and in another post here:
- Knowledge of underlying hardware and embedded operating systems
- Control of software flow, scheduling and threading (and lack there-of)
- Different programming languages
- Testing and debugging, and much more
Can web developers adopt a system engineering mindset? Will small devices be capable of hosting “web” services? Will they run dynamic, scripted languages? Would you want to learn C or C++ to code for embedded devices or rather wait for more convenient languages?
Tell us what you think! Andreas