
Software Engineer (MCU)
Job Description
About the role
Ensera Design is a world-class user-centred innovation and product development consultancy, specializing in the medical and consumer health sectors with offices in Bristol, Colorado and New Jersey. As part of Ensera, we collaborate globally with contract manufacturing facilities in Europe, the USA, and Asia.
We are currently seeking an embedded Software Engineer to join our talented team and contribute to delivering exceptional solutions for our clients.
You’ll join a multidisciplinary team developing a greenfield medical device from the ground up.
Day to day, your focus will be designing and implementing microcontroller-based systems in embedded C/C++. You’ll sit alongside hardware, Linux, UI and test engineers and have the opportunity to make a genuine contribution to a medical device project.
You'll have a team of Senior Software Engineers around you who'll mentor you throughout. Due to the nature of Ensera Design’s work, you’ll have the opportunity to either branch out into other specialisms or go deeper into the one you’re already in.
About you
You’re an engineer who has worked across safety-critical systems and/or medical devices in the past with a desire to develop using embedded C/C++ targeting STM32 ARM microcontrollers or similar platforms. You’ll be a strong communicator with a desire to share knowledge and mentor junior members of the team - you’ll also be mentored by experienced engineers who have grown with the business.
You’ll be interested in working on safety-critical applications across the full development lifecycle and in accordance with safety and reliability standards such as IEC 62304.
What you’ll do
Design and implement MCU firmware in line with agreed system and security architecture
Support MCU subsystems and components
Develop embedded C/C++ code for real-time systems
Collaborate with hardware, Linux, UI, connectivity, and test teams on integration topics
Define and maintain coding standards and design patterns for MCU software
Support fault investigation, root-cause analysis, and corrective actions
Share knowledge and mentor more junior members of the team