This course provides students with the skills and knowledge required to successfully create and maintain the cloud and edge portions of an Azure IoT solution. The course includes full coverage of the core Azure IoT services such as IoT Hub, Device Provisioning Services, Azure Stream Analytics, Time Series Insights, and more.
In addition to the focus on Azure PaaS services, the course includes sections on IoT Edge, device management, monitoring and troubleshooting, security concerns, and Azure IoT Central.
An Azure IoT Developer is responsible for implementing and then maintaining the cloud and edge portions of an Azure IoT solution. In addition to configuring and maintaining devices by using Azure IoT services and other Microsoft tools, the IoT Developer also sets up the physical devices and is responsible for maintaining the devices throughout the life cycle.
The IoT Developer implements designs for IoT solutions, including device topology, connectivity, debugging, and security. For Edge device scenarios, the IoT Developer also deploys compute/containers and configures device networking, which could include various edge gateway implementations. The IoT Developer implements designs for solutions to manage data pipelines, including monitoring and data transformation as it relates to IoT.
The IoT Developer works with data engineers and other stakeholders to ensure successful business integration. IoT Developers should have a good understanding of Azure services, including data storage options, data analysis, data processing, and the Azure IoT PaaS versus SaaS options. IoT Developers should have basic programming skills in at least one Azure-supported language, including C#, Node.js, C, Python, or Java.
Software Development Experience: Software development experience is a prerequisite for this course, but no specific software language is required, and the experience does not need to be at a professional level.
Data Processing Experience: General understanding of data storage and data processing is recommended but not required.
Cloud Solution Awareness: Students should have a basic understanding of PaaS, SaaS, and IaaS implementations. Microsoft Azure Fundamentals, or equivalent skills, is recommended.
Module 1: Introduction to IoT and Azure IoT Services
In this module, students will begin by examining the business considerations for various IoT implementations and reviewing how the Azure IoT Reference Architecture supports IoT solutions. This module also provides students with an overview of the Azure services commonly used in an IoT solution and provides an introduction to the Azure portal.
Lessons
Lab : Getting Started with Azure
Lab : Setting Started with Azure IoT Services
After completing this module, students will be able to:
Module 2: Devices and Device Communication
In this module, students will take a closer look at the Azure IoT Hub service and will learn how to configure secure two-way communication between IoT hub and devices. Students will also be introduced to IoT Hub features such as Device Twins and IoT Hub Endpoints that will be explored in more depth as the course continues.
Lessons
Lab : Setup the Development Environment
Lab : Connect IoT Device to Azure
After completing this module, students will be able to:
Module 3: Device Provisioning at Scale
In this module, students will focus on device provisioning and how to configure and manage the Azure Device Provisioning Service. Students will learn about the enrollment process, auto-provisioning and re-provisioning, disenrollment, and how to implement various attestation mechanisms.
Lessons
Lab : Individual Enrollment of Devices in DPS
Lab : Automatic Enrollment of Devices in DPS
After completing this module, students will be able to:
Module 4: Message Processing and Analytics
In this module, students will examine how IoT Hub and other Azure services can be used to process messages. Students will begin with an investigation of how to configure message and event routing and how to implement routing to built-in and custom endpoints. Students will learn about some of the Azure storage options that are common for IoT solutions. To round out his module, students will implement Azure Stream Analytics and queries for a number of ASA patterns.
Lessons
Lab : Device Message Routing
Lab : Filtering and Aggregating Message Data
After completing this module, students will be able to:
Module 5: Insights and Business Integration
In this module, students will learn about the Azure services and other Microsoft tools that can be used to generate business insights and enable business integration. Students will implement Azure Logic Apps and Event Grid, and they will configure the connection and data transformations for data visualization tools such as Time Series Insights and Power BI.
Lessons
Lab : Integrate IoT Hub with Event Grid
Lab: Explore and Analyze Time Stamped Data with Time Series Insights
After completing this module, students will be able to:
Module 6: Azure IoT Edge Deployment Process
In this module, students will learn how to deploy a module to an Azure IoT Edge device. Students will also learn how to configure and use an IoT Edge device as a gateway device.
Lessons
Lab: Introduction to IoT Edge
Lab: Set Up an IoT Edge Gateway
After completing this module, students will be able to:
Module 7: Azure IoT Edge Modules and Containers
In this module, students will develop and deploy custom edge modules and will implement support for an offline scenario that relies on local storage. Students will use Visual Studio Code to build custom modules as containers using a supported container engine.
Lessons
Lab: Develop, Deploy, and Debug a Custom Module on Azure IoT Edge
Lab: Run an IoT Edge Device in Restricted Network and Offline
After completing this module, students will be able to:
Module 8: Device Management
In this module, students will learn how to implement device management for their IoT solutions. Students will develop device management solutions that use devoice twins and solutions that use direct methods.
Lessons
Lab: Remotely Monitor and Control Devices with Azure IoT Hub
Lab: Automatic Device Management
After completing this module, students will be able to:
Module 9: Solution Testing, Diagnostics, and Logging
In this module, students will configure logging and diagnostic tools that help developers test their IoT solutions. Students will use IoT Hub and Azure Monitor to configure alerts and track conditions such as device connection state that can be used to troubleshoot issues.
Lessons
Lab: Configure Metrics and Logs in Azure IoT Hub
Lab: Monitor and Debug Connection Failures
After completing this module, students will be able to:
Module 10: Azure Security Center and IoT Security Considerations
In this module, students will examine the security considerations that apply to an IoT solution. Students will begin by investigating security as it applies to the solution architecture and best practices, and then look at how Azure Security Center for IoT supports device deployment and IoT Hub integration. Students then use Azure Security Center for IoT Agents to enhance the security of their solution.
Lessons
Lab: Implementing Azure Security Center for IoT
After completing this module, students will be able to:
Module 11: Build an IoT Solution with IoT Central
In this module, students will learn how to configure and to implement Azure IoT Central as a SaaS solution for IoT. Students will begin with a high-level investigation of IoT Central and how it works. With a basic understanding of IoT central established, students will move on to creating and managing device templates and then managing devices in their IoT Central application.
Lessons
Lab: Get Started with Azure IoT Central
Lab: Implementing IoT Solutions with Azure IoT Central
After completing this module, students will be able to: