Senior Embedded Software Engineer

Senior Embedded Software Engineer (C/C++, STM32, FreeRTOS)
Location: Derbyshire (On-site / Remote work available)
Salary: £55,000 - £70,000 + Benefits
 
Overview
An exciting opportunity has arisen for a Senior Embedded Software Engineer to design, develop, test and integrate embedded control systems for advanced industrial applications.
 
This role is ideal for an experienced engineer with strong C/C++ embedded development skills, looking to work on real-time systems (RTOS) and ARM Cortex-M microcontrollers (STM32) within a collaborative, multi-disciplinary engineering environment.
 
You will work closely with electrical, mechanical and systems engineering teams to deliver robust, safety-critical and cost-effective embedded software solutions for global customers.
 
Key Responsibilities
  • Translate system and customer requirements into detailed software specifications and acceptance criteria
  • Design and develop embedded software architecture for ARM-based microcontrollers (STM32)
  • Develop, test and integrate embedded C/C++ firmware for real-time control systems
  • Work with FreeRTOS (or similar RTOS) including task scheduling, inter-task communication and debugging
  • Implement and optimise communication protocols including Modbus/TCP, CAN, RS232/RS422/RS485 and Ethernet (TCP/UDP)
  • Interface with analogue and digital hardware (ADCs, DACs, sensors and actuators)
  • Perform unit testing, static code analysis, code coverage and peer reviews to ensure high-quality software
  • Develop and maintain HIL/SIL test environments
  • Produce clear technical documentation including specifications, architecture diagrams, and test plans
  • Use Git (version control) within a trunk-based development environment with semantic versioning
  • Support manufacturing, commissioning and field service teams with troubleshooting and issue resolution
  • Drive continuous improvement in software processes, tools and engineering standards
 
Skills & Experience Required
  • Proven experience in embedded software development or industrial control systems
  • Strong programming skills in C and/or C++ for embedded systems
  • Experience with ARM Cortex-M microcontrollers (STM32 preferred)
  • Solid understanding of real-time operating systems (FreeRTOS or similar)
  • Knowledge of functional safety and coding standards (MISRA C:2012, IEC 61508, CERT-C)
  • Experience with unit testing frameworks (e.g. Unity, Ceedling), static analysis tools and code coverage
  • Strong experience with Git version control and modern development workflows
  • Knowledge of industrial communication protocols (Modbus, CAN, Ethernet)
  • Experience integrating embedded systems with sensors and hardware interfaces
  • Excellent problem-solving skills, teamwork and communication abilities
 
Desirable Skills
  • Experience with Python or MATLAB for automation, testing or data analysis
  • Ability to read and interpret electrical and mechanical engineering drawings
  • Experience working in safety-critical or regulated industries

Job Details

Company
Zenovo
Location
Derbyshire, Swadlincote, United Kingdom
Hybrid / Remote Options
Employment Type
Permanent
Salary
£55000 - £70000/annum
Posted