DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
Building Scalable Real-Time Apps with AstraDB and Vaadin
Register Now

Trending

  • Incident Response Guide
  • Java String Templates Today
  • You’ve Got Mail… and It’s a SPAM!
  • Boosting Application Performance With MicroStream and Redis Integration

Trending

  • Incident Response Guide
  • Java String Templates Today
  • You’ve Got Mail… and It’s a SPAM!
  • Boosting Application Performance With MicroStream and Redis Integration
  1. DZone
  2. Data Engineering
  3. Data
  4. What Developers Need to Know About IoT

What Developers Need to Know About IoT

Understand the business context, know the IoT stack, and be aware of the benefits and best practices of mobile, cloud, toolsets, data ingestion, and security.

Tom Smith user avatar by
Tom Smith
CORE ·
Mar. 05, 18 · Analysis
Like (4)
Save
Tweet
Share
7.33K Views

Join the DZone community and get the full member experience.

Join For Free

To gather insights on the current and future state of IoT, we talked to 23 executives involved with IoT. We asked them, "What skills do developers need to have to work on IoT projects?"

Business Context

  • You are not a cog in the assembly line. Think through the entire product experience. Weigh in at the design phase.
  • It used to be OK to be a good developer. IoT is complex. You need to understand the business context of the solutions that you’re building. More successful developers will have a diverse mix of education, especially knowledge of the vertical in which they are working. 
  • Programming skills. Understand how the data will be used for AI/ML/predictive for industrial use cases. Make data more accessible to the end user to realize ROI more quickly. Know how the data will be used. 
  • Consider sustainability of what you are building and what the solution means to the business. Large projects need to be tied to business outcomes. Ensure you are considering the machine you need to keep running. Think differently about device management. 
  • Better integration experience with their team. Understand personas and business value. Create the right solution from the beginning by clearly defining the problem you are solving. Stay agile. Use CI/CD. Complete integration into runtime operations.
  • Embrace learning the industry you are working in to understand the business problems, how the hardware ties in, immerse yourself in what you are doing and think beyond code. Be open to testing and iterating. 
  • Understand how industrial environments work and the protocols therein. How to get information on programmable devices. Modbus – how to register, how to translate, how to get information out of it. MQTT. Write value-added applications into predictive analytics engines and applications.

Security

  • Don’t reinvent the wheel. Security should already be a best practice. Learn the building blocks of IoT. It seems easy but you will spend a lot of time on integration which is hard. Focus on the core business and rely on well-integrated system platforms and build on top of them.
  • Experience with embedded, connected devices. How to put together the whole stack – operating system, middleware, frameworks. How to make it secure. How to solve the updatability problem. Work through the operating system kernel to the application. Engineers need to know how to put together teams to address the different areas of the stack, as well as finding a company that can help. More off the shelf solutions, more user interfaces and microcontroller OS depending on the application.
  • I believe developers will need to keep the broader security picture in mind as they develop IoT products. How does the product balance ease of use and security? How does the product function and get updated when deployed, and then as security flaws are identified? How does the device accomplish these activities and continue to provide a good user experience?

Platforms

  • Need to know mobile platforms, cloud platforms, the wide spectrum of firmware for all technologies. Cloud is probably the most important. Data, AI/ML is important – data engineering, not data science. Work more on the backend with data.
  • 1) Learn about streaming technologies, throughput. How to get all of the servers to do more simultaneously. How to parallelize. 2) Cloud technology is critical. Services, block storage, how to secure and move data. 3) Brush up on SQL for development applications. How SQL work is parallelized.

Other

  • The IoT stack is different. Learn the real-time stack versus the legacy stack. Mobile and edge computing technology. Go beyond neat applications versus useful apps with the edge to add value. Know Java, Node, Objective C for the frontend and .Net for the backend. AI will be important so learn TensorFlow and Café for datasets.
  • Python is the language of choice for firmware that doesn’t require C. Unless you have a compelling reason to create your own, the existing frameworks are very powerful and can scale. Twilio is a good SIM management platform. Don’t start from scratch. Use the available tools to shortcut the process.
  • Play around with a Raspberry Pi. Connect to sensors. Put data in a database and start looking for trends. Doing so teaches you to think differently than relational databases. Play with weather instruments and plot into a graph.
  • I believe successful developers will need to have tools and skills to handle real-time data ingestion and get insights from connecting all data points.
  • Need to know hardware and software. Think about how to make the physical product. Frontend and backend software – iOS and Android. Bluetooth implementation and how to pair with every device. This gets more complex in China. The backend becomes more important. Think about how to design to scale and handle massive amounts of data.
  • Developers need to be a tinkerer, hardware hacker, and a software enthusiast. In addition to that, they need the ability to read technical documents since this is still a new field and learning never stops.
  • Expand scope to include hardware, software, and engineering. Not that you have to do it all but be willing to work with others to solve business problems that add value rather than just writing code.

Here’s who we spoke to:

  • Adam Fingerman, CXO and Co-founder, and Troy Petersen, Marketing Director, ArcTouch
  • Andreas Pettersson, CTO and CPO, Arcules
  • Sean Grundy, CEO and Founder, Bevi
  • Jeff Bonnell, V.P. of Industry Solutions, Coresystems
  • Eli Feldman, CTO, Advanced Technology, EPAM
  • Brent Pietrzak, V.P. Producer Solutions and Strategy, Flexera
  • Scott Allen, CMO, FreeWave
  • Mark Herring, CMO, Tim Hall, V.P. of Products, Brian Mullen, V.P. of Business Development, InfluxData
  • Dipti Borkar, V.P. of Product Marketing, Kinetica
  • Crystal Valentine, V.P. of Technology Strategy, MapR
  • Jesse Robbins, CEO, Orion Labs
  • Lars Knoll, CTO, Qt
  • Olivier Pauzet, V.P. and General Manager IoT Solutions, Sierra Wireless
  • Jens-Ole Graulund, CTO, Spiio
  • Monte Zweben, CEO, Splice Machine
  • Shawn Reynolds, CMO, Telit
  • Yu Xu, CEO, TigerGraph
  • Ray Wu, Founder and CEO, Wynd
  • Alex Kubicek, CEO, Understory
  • Jeff Finn, CEO, zvelo
IoT dev Data (computing) mobile app operating system Database

Opinions expressed by DZone contributors are their own.

Trending

  • Incident Response Guide
  • Java String Templates Today
  • You’ve Got Mail… and It’s a SPAM!
  • Boosting Application Performance With MicroStream and Redis Integration

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com

Let's be friends: