Sondrel have a worldwide design team of over 170 engineers and design some of the most complex SoCs (System on Chips) in the world. A host of embedded software is required right from the early stages of chip design all the way through to delivering a silicon tested board support package to customers. Where possible we upstream drivers to the open source community.
The Embedded Software written by the Sondrel team can be either Linux kernel device drivers, a lightweight RTOS, or just bare metal code. We have multiple projects running simultaneously so there are opportunities to try something new and grow your skills. We want someone who wants to be right down there close to the hardware, debugging not only the Software but teaming up with hardware engineers to debug issues that may well turn out to be the silicon or sometimes the PCB. You may be asked to upstream some of the open source software that you write.
The position will be permanent and can be based at either our Kings Langley office or Bristol.
Why work for Sondrel?
- You will be exposed to cutting-edge technologies and work on projects down to 7nm
- Opportunity to work on applications such as AI, Automotive, Fintech and Internet of Things (IoT)
- Work for one of Europe's leading concept-to-silicon design centres and play a key role in working on a variety of exciting projects
- Become an integral member of a truly global business with excellent opportunities for continued learning and skill development.
- Developing quality embedded software (typically drivers, tests, scripts and associated documentation) with support from the rest of the team.
- Integrating code from different sources to produce a BSP (Board Support Package)
- Debugging code and embedded system issues, with the support of both the hardware and software teams to root cause problems which may be in the software, the PCB, or the silicon itself
- Releasing of software and patches to customers including responding to customer queries
- Maintaining and extending existing continuous integration and testing
- Keeping documentation up to date and sharing key information via wiki pages to spread knowledge throughout the team.
- Developing high quality drivers, tests, infrastructure and other low-level software in C, typically targeted at embedded Linux platforms, but occasionally other embedded operating systems. Pre-silicon this will typically be using FPGA, Emulation, Virtual Platforms and simulation to prove the SoC and software work together properly before the design is committed to silicon
- Post silicon bring up and validation, finding unexpected behavior, hypothesizing the reason for it, then investigating to root cause and fix or work around the problem (if it cannot be fixed)
- Participation in peer review processes, giving constructive feedback to others and addressing feedback received yourself in a positive manner
- Managing the priorities of the work assigned to you carefully to make the projects succeed
- You may be asked to open source some of the code that you write, depending on which projects you are working on (Familiarity with up-streaming would be useful, but not essential)
Skills and Attributes:
- Excellent C programming language skills
- Strong problem-solving skills
- Familiar with Linux kernel
- Python or Bash Scripting language skills
- Good understanding and experience of git source control
- Good communicator
- Prepared to gather opinions and suggestions on how to solve issues from other members of the team
- Able to use an oscilloscope, or interested in learning such skills
- Very good spoken and written English language skills.
A Bachelors, Masters or PhD in a relevant subject is essential for this position.
Remuneration / Benefits:
- Competitive remuneration including a company financial bonus
- Fantastic opportunity to join a rapidly growing cutting-edge design company
- Excellent training and career-progression opportunities with the option for exemplary candidates to lead and manage their own team.