Location
London, 2 to 3 days onsite in Kings Cross
Hours
Contract role, immediate start - 6 month contract
Salary
Negotiable
About the Role
AND Digital are on a mission to close the world's tech skills gap by combining human expertise, emerging technology, and AI to deliver better outcomes faster. Since 2014, we have partnered with clients to solve complex challenges, build high-performing teams, and create lasting capability. We are now seeking four Embedded C++ Developers to join an in-house backend engineering team working on a highly regulated, safety-critical medical technology product.
In this role, you will own a self-contained area of the application, taking work from initial design through to merged, tested, and documented code. Areas of focus may include alarms, patient data persistence, device supervision and start-up, session management, or service functionality. You will collaborate closely with the Software Architect and engineers responsible for surrounding components, taking ownership of delivery within your area.
This position is ideal for an experienced Embedded C++ Engineer with a background in Linux-based safety-critical, mission-critical, or highly regulated products, comfortable working with formal quality processes, static analysis, code coverage, and rigorous testing requirements.
Key Responsibilities Include:
- Developing technical alarm conditions based on hardware and OS telemetry, including battery, temperature, clock, power faults, and telemetry quality
- Implementing patient sensor, signal quality, and external monitoring alarms with hardware alarm interfaces
- Building fault handling and recovery mechanisms
- Developing power-on checks, fail-safe states, fault management, and system supervision
- Managing patient data persistence, including atomic and checksummed writes, session listing, and historic data presentation
- Handling session lifecycle, power-down, USB data export, software updates, and audit logging
You will work with a range of embedded technologies and contribute to a product that demands the highest standards of reliability and safety.
Experience
- Strong experience developing modern C++17 applications on embedded Linux
- Deep understanding of RAII, fixed-width types, std::atomic, multithreading, and lock-free or bounded queues
- Proven experience in software where deterministic behaviour and reliability are critical
- Skilled in allocation-free or low-allocation runtime environments with pre-allocated memory and fixed-capacity containers
- Familiarity with ports-and-adapters / hexagonal architecture, interfaces, and dependency injection
- Strong Linux systems integration experience including services, watchdogs, and system-level fault management
- Experience with IPC and serialization technologies such as FlatBuffers, Unix-domain sockets, or named pipes
- Proficient with CMake, automated testing, and CI/CD pipelines
- Experience with cross-compilation, ideally for aarch64 platforms
- Strong unit testing, code coverage, and quality gate experience
- Comfortable working within formal engineering processes including peer review, traceable changes, and documented design decisions
- Experience working on safety-critical, mission-critical, or highly regulated software
Desirable Skills
- Experience developing medical devices or other safety-critical systems
- Knowledge of IEC 62304, ISO 13485, or similar regulated software development standards
- Experience with medical alarm systems or other alarm and fault-management systems
- Understanding of IEC 60601-1-8 or equivalent safety standards
- Experience with state-machine-driven supervisors and fault-management systems
- Familiarity with NVIDIA Jetson, CUDA, or GPU-accelerated processing
- Experience with Yocto and embedded Linux board-support packages
- Knowledge of systemd, sd_notify, D-Bus, and journald
- Experience with OpenSSL, TensorRT, or similar external technologies
- Experience using Docker for development environments
- Experience with GoogleTest, behaviour-driven testing, or Gherkin
- Python experience for tooling and deployment scripts
- Experience contributing to software FMEA activities and implementing risk controls
About You
Detail-oriented and motivated Embedded C++ Developer with a passion for building reliable, safety-critical software. You thrive in regulated environments and enjoy collaborating with cross-functional teams to deliver high-quality solutions. You are proactive in adopting best practices and formal engineering processes to ensure product safety and reliability.
AND Digital







