Full time, UK
Based in our Bristol office, the Software Engineer – Tools works in the tools team and plays a pivotal role in developing and maintaining the XMOS toolchain. The tools are broad, and comprise a combination of established third-party packages, plus bespoke software, all tailored to support XMOS’s silicon and application domains. Your responsibilities include:
- Work within the tools team to develop the tools used by XMOS application teams and external customers.
- Design, develop and maintain key tools such as:
- Secure bootloader and security software modules
- Microcontroller simulator, providing an accurate software model of the architecture
- Software support for low-power hardware features
- Flash and bootloader support, for real deployments
- Debugger integration, for runtime analysis of xcore software systems
- Timing analyser, for static timing analysis and constraint checking of software
- IDE integration
- Expand tools to support the next generation XMOS silicon designs
- Collaborate with the silicon design team and the internal software teams to support real world use-cases
XMOS is a semiconductor design company, developing cutting edge multicore microcontrollers for use in AI and signal processing. Our highly parallel and deterministic processor architecture excels in real-time performant systems.
We are a global business, headquartered in Bristol, with offices across Asia and the United States and we are backed by some of the best names in high tech venture capital.
XMOS stands at the interface between voice processing, biometrics, and artificial intelligence. We are a leading supplier of voice and audio solutions to the consumer electronics market. Today our unique silicon architecture and highly differentiated software delivers class-leading far-field voice capture, and we are building for a more natural human machine interface tomorrow.
We are always looking for questioning, flexible and determined people to help make that happen. Ours is a learning environment, which means we hire for capability and potential – and help you to achieve your best.
Who we are looking for
You are a software developer with 2+ years of relevant experience. You will need to be self-motivated, proactive and able to work autonomously. You will enjoy solving challenging problems independently and have a drive for innovation.
You will have:
- Very strong C programming skills in a low-level, “bare-metal” environment
- Familiarity with at least one high-level scripting language such as Python
- Excellent problem-solving skills along with the ability to quickly assimilate complex systems and make specific improvements within them
- Good software development practices such as effective SCM use and code review
- Experience in validating complex systems (for example, unit, regression and system testing, coverage analysis)
- Confidence using Linux as a development environment
- A BSc or above in Electronic Engineering, Computer Science or a related discipline
You might also have:
- Strong C++ programming skills
- Experience with embedded systems and programming for real-time, resource-constrained environments
- Experience with assembly language programming
- Knowledge of multi-core processor architectures
- Practical experience using build systems (and tools such as GNU Make/CMake)
- Understanding of version control systems (such as git)
- Experience working with the open-source community
- Experience working with lab equipment to debug embedded systems
- Familiarity with DevOps principles, practices, and tooling
- Familiarity with silicon design and verification methods, and the usage of silicon design tools
- Flexible working – while the role is based in our Bristol office in the UK, we support flexible working patterns accommodating a mix of home and office-based working
- Holidays – 25 days paid with an additional 3 days over the Christmas period when the office closes
- Private medical insurance – membership of the corporate healthcare plan, currently held with AVIVA. Option of adding partner and children
- Group income protection cover – the level of benefit payable is 75% of scheme salary and an employee will become entitled to benefit after being unable to work because of sickness or injury for 26 continuous weeks
- Life insurance – the benefit payable is a lump sum of 4 times scheme salary
- Salary sacrifice pension scheme – established for employee contributions, with XMOS matching these up to 5% of salary
- Share options – EMI approved share options allocated at a level commensurate to seniority. A 4-year vesting profile with a 1-year cliff