Senior Embedded Software/Firmware Engineer
Overview
We are looking for a Senior Embedded Software Engineer to design, develop, test, and maintain embedded software for access control and intrusion-related products. You will play a key role in ensuring software is secure, robust, and fit for purpose, working closely with engineering, quality, and support teams across the full product lifecycle.
This role suits an experienced embedded engineer who enjoys working close to hardware, improving existing firmware, and contributing to secure, high‑quality embedded systems.
Key Responsibilities
Architect, design, and implement new embedded software solutions
Diagnose, debug, and resolve issues in existing production firmware
Produce and maintain clear technical documentation and design artefacts
Define and implement appropriate unit, component, and system‑level testing
Apply static and dynamic analysis techniques to ensure software quality and security
Support prototype bring‑up, debugging, and validation activities
Collaborate with other embedded engineers across multiple hardware platforms
Participate in peer code and design reviews
Evaluate and introduce new tools, libraries, and software components where appropriate
Work with quality and support teams to investigate and resolve field issues
Essential Skills & Experience
Qualifications
Degree‑qualified in Electronics, Software Engineering, Computer Science, or a related discipline
Core Technical Experience
Strong Embedded C programming skills
Real‑time embedded software development in C
Bare‑metal development and board bring‑up
Development of secure embedded systems
Technical Knowledge
Embedded software development processes, including requirements, design, implementation, and testing
Hardware awareness, including schematics, SoC I/O, pin muxing, and peripheral configuration
Understanding of embedded debugging techniques and tools
Ability to work across both bare‑metal and RTOS‑based systems
Personal Attributes
Highly logical and analytical with strong attention to detail
Able to manage multiple tasks and deadlines effectively
Quality‑focused and process‑driven
Strong communication skills, able to engage with both technical and non‑technical stakeholders
Comfortable working under pressure in a delivery‑focused environment
Domain Knowledge
Ability (or willingness to quickly develop expertise) in OSDP (Open Supervised Device Protocol)
Experience or interest in implementing OSDP in bare‑metal and real‑time embedded systems, including enhancement of existing firmware to meet evolving standards
Desirable Experience
5+ years' professional embedded software experience
C++ development
RTOS experience (e.g. FreeRTOS, ThreadX)
Python and automated testing frameworks (e.g. Google Test)
CI/CD exposure (e.g. Jenkins‑driven development)
STM32 firmware development
NXP SoCs (e.g. i.MX93 or similar)
In‑circuit programming and debugging
Familiarity with tools such as Eclipse, VS Code, Jira, Confluence, Bitbucket, SonarQube, MCUXpresso, STM32CubeIDE
Working Environment
Office‑based engineering environment
Predominantly desk‑based work with regular use of development hardware
Occasional hands‑on hardware testing and debugging
To find out more about Computer Futures please visit
Computer Futures, a trading division of SThree Partnership LLP is acting as an Employment Business in relation to this vacancy | Registered office | 8 Bishopsgate, London, EC2N 4BQ, United Kingdom | Partnership Number | OC(phone number removed) England and Wales