Senior Embedded Software Engineer
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+18 more
Job description
This is an opportunity for an experienced embedded software engineer to play a key role in the design and development of sophisticated, hardware-integrated products. You’ll work across embedded software and firmware, from system architecture and hardware bring-up through to development, integration, testing and production., As a Senior Embedded Software Engineer, you’ll contribute to the architecture, development and delivery of embedded software and firmware across a range of products and platforms., * Developing embedded software and firmware using C and C++
- Customising, configuring and optimising the Linux kernel
- Building and maintaining embedded Linux distributions using Yocto
- Working with Board Support Packages (BSPs), device drivers and hardware bring-up
- Building and customising Android Open Source Project (AOSP) for embedded platforms
- Working with Android HAL layers, system services and associated build systems
- Integrating image sensors and ISP pipelines using available drivers
- Designing reusable software frameworks for embedded products
- Working with cross-compilation environments, build systems and toolchains
- Debugging hardware and software using tools such as JTAG, gdb, strace, perf, oscilloscopes and logic analysers
- Working with communication interfaces including Ethernet, CAN, UART, SPI, I²C and USB
- Optimising software for performance, memory, power and CPU utilisation
- Collaborating closely with hardware, mechanical and test engineering teams
- Contributing to code reviews, technical documentation, unit testing and engineering best practice
Requirements
We’re looking for someone with strong embedded Linux experience who is comfortable working close to the hardware and enjoys solving complex technical challenges., You’ll have significant experience developing embedded software and firmware for hardware-based products, with a strong understanding of the interaction between software and hardware.
Ideally, your experience will include:
- Strong C and C++ embedded development
- Embedded software and firmware development
- Embedded Linux and Linux kernel development
- Strong experience with Yocto Project
- Device drivers and BSP development
- Hardware bring-up
- AOSP and embedded Android development
- Cross-compilation and embedded development toolchains
- Hardware and software debugging
- Real-time constraints and performance optimisation
- Git and modern software development practices
- CI/CD tools such as GitLab CI or Jenkins
- An understanding of cybersecurity considerations within embedded devices
Experience with embedded networking, GNSS, RF-based products, image sensors or ISP pipelines would be particularly valuable.
About you
Beyond the technical skills, we’re looking for someone who can take ownership of complex engineering challenges and contribute at a senior level.
You’ll be comfortable influencing system architecture and product design, working collaboratively across engineering disciplines and helping maintain high standards of software and firmware quality.
If you’re an experienced Embedded Software Engineer looking for an opportunity to have a meaningful influence on the development of technically challenging products, we’d be pleased to hear from you.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Loading talks and stories from around this role…