Senior Embedded Software Engineer
The Role:
We are seeking a highly skilled and motivated Embedded Systems Engineer to join our growing team. In this role, you will play a key role in developing robust and efficient innovative software solutions. You will work across the entire software stack, from low-level hardware interactions to higher-level application enablement.
Responsibilities:
- Design, develop, and optimise runtimes for embedded environments, ensuring efficient resource utilisation and performance.
- Develop and maintain bootloaders and Board Support Packages (BSPs) for various embedded platforms.
- Design and implement device drivers for a wide range of peripherals, interacting directly with hardware.
- Integrate runtimes with Real-Time Operating Systems (RTOS) or bare-metal systems, enabling the development of modular and scalable embedded applications.
- Collaborate with hardware engineers to define and optimise hardware/software interfaces.
- Perform debugging, testing, and validation of embedded software to ensure high reliability and stability.
- Contribute to architectural discussions and drive best practices in embedded software development.
- Document designs, implementations, and test procedures.
- Stay up-to-date with emerging technologies and industry trends in embedded systems, microservices, and containerization.
Required Skills and Qualifications:
- Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field.
- Proven experience in embedded software development
- Strong proficiency in C/C++ programming for embedded systems.
- In-depth understanding of RTOS concepts and experience with at least one RTOS (e.g., FreeRTOS, Zephyr).
- Experience with bare-metal programming and understanding of microcontroller architectures (e.g., ARM Cortex-M/R/A, RISC-V).
- Demonstrated experience in developing bootloaders and BSPs.
- Experience with debugging tools (e.g., JTAG/SWD debuggers, oscilloscopes, logic analysers).
- Version control proficiency (Git).
Highly Desired Skills (Bonus Points For):
- Experience with microservices architecture and development in constrained environments.
- Familiarity with container technologies (e.g., Docker, LXC) and their application in embedded systems.
- Experience with integrating and optimising container runtimes on RTOS or bare metal.
- Experience with scripting languages (e.g., Python, Bash) for automation.
- Familiarity with network protocols and communication interfaces.
- Understanding of security principles in embedded systems.
- Experience with continuous integration/continuous deployment (CI/CD) pipelines for embedded software.
Join Our Team:
If you are a passionate Embedded Systems Engineer with a desire to push the boundaries of what's possible in embedded software and microservices, we encourage you to apply!
- Company
- The Embedded Industry Is Entering a New Era
- Location
- Cambridge, Cambridgeshire, UK
- Posted
- Company
- The Embedded Industry Is Entering a New Era
- Location
- Cambridge, Cambridgeshire, UK
- Posted