Methodology

Agile & CI/CD in IoT Engineering

Agile engineering practices — continuous integration, continuous delivery, automated testing, and iterative development — are embedded in how FSS Technology builds IoT platforms regardless of the project management methodology. Where SCRUM defines how FSS teams organise and plan work, Agile engineering practices define how code is written, tested, and deployed. CI/CD pipelines that build firmware […]

Used by FSS: Since 2015
Projects: 10+
Category: Methodology
BACKLOG IN PROGRESS DONE API Design 70% DB Schema 50% Auth Flow 50% Testing 30% Frontend 100% Firmware 80% CI/CD 60% Deploy v1 90% Review 90% Release 70% VELOCITY / sprint

Agile engineering practices — continuous integration, continuous delivery, automated testing, and iterative development — are embedded in how FSS Technology builds IoT platforms regardless of the project management methodology. Where SCRUM defines how FSS teams organise and plan work, Agile engineering practices define how code is written, tested, and deployed. CI/CD pipelines that build firmware binaries and run test suites on every commit, automated integration tests that validate backend APIs against real device telemetry, and feature flags that enable staged rollouts to production device fleets are Agile engineering practices that FSS applies consistently to deliver high-quality IoT software reliably and rapidly.

CI/CD for IoT Development

Firmware CI/CD Pipeline

FSS firmware projects use GitHub Actions or Azure DevOps pipelines that trigger on every pull request and main branch commit. The pipeline compiles firmware for all target hardware variants, runs unit tests using the native host compiler (Unity test framework), performs static analysis (Cppcheck, PC-lint), checks binary size against budget limits, and — on main branch merges — generates production-signed firmware binaries and publishes them to the OTA update server. Engineers receive immediate feedback on whether their firmware changes compile cleanly, pass tests, and meet code quality standards before the code is reviewed by peers, dramatically reducing review cycle time and preventing defective code from reaching the main branch.

Backend CI/CD with Azure DevOps

Node.js and Python backend services use Azure DevOps pipelines or GitHub Actions with automated test suites — Jest unit tests, Supertest API integration tests, and Docker-based end-to-end tests with real MQTT device simulators. Passing CI is a prerequisite for pull request merge; pipeline failures block deployment automatically. Successful main branch builds trigger automated deployment to a staging environment where integration tests run against a real Azure IoT Hub instance. Promotion to production requires explicit approval from the FSS tech lead, providing a human gate before client-facing systems are updated.

Feature Flags for Safe IoT Deployments

IoT platforms serving production device fleets require deployment strategies that minimise risk to live operations. FSS uses feature flags — configuration-driven feature toggles managed through a feature flag service — to deploy new code to production without activating new features, then progressively enable features for subsets of devices: first internal FSS test devices, then a canary group of 1-5% of the production fleet, then full rollout after monitoring confirms stable behaviour. This progressive rollout capability, combined with immediate feature flag kill-switches that deactivate problematic features without code rollback, gives FSS clients confidence that platform updates can be delivered continuously without operational risk.

Agile Practices in IoT Teams

Firmware CI Pipeline

GitHub Actions pipeline for STM32 firmware: cross-compilation for 3 hardware variants, 200 Unity unit tests, static analysis, binary size check, and signed OTA binary generation — completing in under 4 minutes on every commit.

Canary Device Rollout

Feature flag-controlled firmware rollout to 2,000-device IoT fleet: 1% canary group first, 24-hour monitoring window, then automated full rollout with rollback capability maintained for 48 hours post-deployment.

IoT Platform Blue-Green Deployment

Azure Kubernetes Service blue-green deployment for Node.js IoT backend: zero-downtime deployment with traffic shifting from blue to green environment after automated smoke tests pass against production IoT Hub.

Device Simulator Integration Tests

Python MQTT device simulators running in CI pipeline: 50 virtual devices publishing telemetry for 10 minutes, automated assertion of backend processing correctness, alert triggering, and database write integrity.

FSS Agile Engineering Maturity

FSS Technology’s engineering practices have matured through a decade of IoT platform delivery. Our CI/CD pipelines, testing frameworks, and deployment tooling represent accumulated investment in engineering quality that directly benefits client projects — faster delivery, fewer production incidents, and confident iteration on live systems. Contact FSS to discuss how our Agile engineering practices can accelerate your IoT platform development.

// next step

Let's build something great together.

From proof of concept to production fleet — FSS delivers.

Start a Project Explore All Technologies See Our Products