> Markdown version of [/jobs/ext/3764973-senior-firmware-engineer](https://www.wearedevelopers.com/jobs/ext/3764973-senior-firmware-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Senior Firmware Engineer - **Company:** Orion - **Location:** Cambridge, UK - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** Clean Code Principles, Data Analysis, ARM Architecture, Static Program Analysis, Software Quality, Communications Protocols, Computer Programming, Continuous Integration, Software Debugging, Embedded Software, Firmware, Python (Programming Language), Message Queuing Telemetry Transport (MQTT), Real-Time Operating Systems, Secure Coding, Toolchain, Wi-Fi Technology, Software Modules, PIC Microcontroller, Hardware Testing, Git, Information Technology, Codebase, Cloud Integration, Aws Iot, Software Version Control - **Published:** October 16, 2026 - **Apply:** https://www.apply4u.co.uk/jobs/senior-firmware-engineer/51583204 ## About the Role Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field Mid to Senior level engineer Strong proficiency in C/CandPython programming Strong experience with STM32 microcontrollers and the surrounding toolchain (or a comparable ARM Cortex-M family) Strong familiarity with IoT protocols, such as MQTT andLoRaWAN with cloud integration, preferably with AWS IoT Core Excellent debugging skills for hardware and firmware issues Familiarity with version control systems (e.g., Git) and static code analysis tools Strong problem-solving skills Excellent communication and team working skills Experience defining and implementing firmware test approaches, including automated and on-hardware testing Experience with binary protocol design and decoding of packed sensor payloads Desirable Skills: Domain knowledge within the rail, energy ormining sectors Experience in implementing low-power modes and optimising power consumption Comfort analysing device data in Python (e.g. pandas) to support engineering and product decisions Familiarity with real-time operating systems (RTOS) and their implementation Familiarity with designing, implementing and maintaining OTA firmware update mechanisms Experience with wireless communication technologies (e.g., BLE, Wi-Fi) Understanding of secure coding practices and encryption algorithms Engagement with the wider embedded or IoT community, for exampleopen-sourcecontributions, talks ortechnical writing ## Description We are seeking a highly skilled Senior FirmwareEngineer forour firmware development team. The ideal candidate will have extensive experience in IoT, a strong background in hardware, proficiency in C/Cand Python, and the breadth to work with device data from the sensor through to the cloud. The successful candidate will be responsible for the firmware development process, ensuring the delivery of robust and efficient code, and collaborating with cross-functional teams to drive innovation. This role offers an exciting opportunity to lead a small team of firmware engineers, work on cutting-edge IoT projects, and make a significant impact on our products. The successful candidate willtakeonour establishedfirmware platform, its test regime and thecode that processesdatacoming off our devices, with a structured handover and support from the existing team. If you are passionate about embedded systems, have a strong technical background, and thrive in a collaborative environment, we encourage you to apply., Contribute to firmware development, sharing technical knowledge and best practice with other team members. Design, develop, and maintain embedded firmware for IoT devices using C/CandPython Collaborate with hardware engineers to ensure seamless integration between firmware and hardware Implement and optimise communication protocols such as MQTT andLoRaWAN Integrate firmware solutions with cloud platforms, such as AWS IoT Core Analyse and debug complex hardware and firmware issues Maintain existing codebases, improving documentation and code quality where required Implement version control best practices, CI/CD and utilise static code analysis tools to ensure code stability Continuously explore and evaluate new technologies to improve product performance and functionality Maintain and develop the firmware test regime, including unit, integration and on-hardware testing, and the validation process used ahead of each release Build and maintain the software modules that decode and unpackraw device payloads into structured, validated data Interrogate device data where needed to validate firmware behaviour and diagnose field issues, and support colleagues undertaking wider data analysis