Design, develop and test Industrial Internet of Things (IIoT) software solutions
Overview
Performance criteria
You must be able to:
evaluate the technical requirements of the IIoT system and translate these into IIoT software specifications
design software applications to interact with large numbers of smart devices and gateways, delivering connectivity across the IIoT solution platform
create intuitive web-based user interfaces for accessing IIoT system tools
deliver the required edge processing, storage and IP gateway software capabilities in line with IIoT system requirements
design and develop applications such as libraries and APIs at the server and application layers of IIoT solutions
programme Programmable Logic Controllers (PLCs) in IIoT networks to ingest and transmit data as required
develop and customise IIoT device firmware in line with IIoT system requirements
create software that remotely supports device control, upgrades to firmware and monitoring of status and battery level
create software for real-time continuous monitoring of data streams from IIoT devices
create device firmware that enables wired/wireless connectivity between the smart devices and the IIoT gateway
implement real-time operating systems at the device layer to serve real-time applications that process live data
use industry standard software development tools, frameworks, platforms, libraries and packages to develop IIoT software applications to manage devices and data
carry out unit testing of all developed software modules to ensure they function within the IIoT solution as per specifications
implement a continuous integration (CI) pipeline to deploy software to the live production environment
deploy streaming analytics software at the platform layers of the IIoT solution to enable data processing and analysis
produce software documentation and user guides for IIoT software solutions
Knowledge and Understanding
You need to know and understand:
the features, characteristics, and applications of industry standard IIoT software platforms and tools
the software development tools used to develop software code and how to apply them
the organisational policies, procedures and guidelines which relate to developing and testing software applications for IIoT solutions
the organisational policies and procedures for sharing data
who to involve while designing, developing and testing IIoT software
the range of organisational templates and tools available for documenting software and how to use them
the testing requirements for IIoT systems
how to create, review and execute unit test cases
how to perform IIoT software system tests to bring IIoT applications into production
how to create intuitive web-based user interfaces for IIoT applications
how to use frameworks, platforms, libraries, and packages to support IIoT software system development
how to implement edge processing and storage
the different types of problems and defects that may occur in IIoT software applications and how these may be resolved
how recording corrective actions for problems and defects in IIoT software can improve future designs
how to optimise the performance of IIoT software code
how to programme PLCs in IIoT systems
how to design and implement real-time operating systems and other software applications at the device level
how to evaluate software defects and recommend suggestions
how to apply the concepts of containerisation for IIoT software development
how analytics is used in IIoT solutions to deliver the required data insights
the common security and privacy risks that affect IIoT software solutions and methods that mitigate them
how to use software configuration management tools