Full time, UK
XMOS is a UK based fabless semiconductor company with a unique multicore microcontroller architecture used in millions of products, from robotics to voice assistants, e-bikes to conference systems. Our devices provide the energy efficient, low cost and high-performance vector acceleration required by the rapidly evolving Edge AIoT industry and ML languages.
We focus on innovation through technology, and our engineering team spans a huge breadth of expertise, from silicon chip design to AI application software development, to highly optimized DSP and AI libraries, to development kits and our SDK and, of course, developing and maintaining our own tool chain.
We are now embarking on the design of our 4th generation processor, our most ambitious yet, and we are looking for passionate and ambitious engineers to come and join us.
What we are looking for
Our Tools team is looking for experienced software engineers to help develop and enhance the LLVM-based tool chain for our novel, multi-core processors. As part of this team, you can expect to be involved in:
- Designing new tools throughout the XMOS toolchain to support new silicon features and programming models unique to our processor architecture.
- Implementing enhancements to the toolchain to add features and resolve issues. This includes the linker, assembler and the latest Clang C/C++ compiler.
- Making benchmark driven tool improvements, especially the optimisation of object code for a resource constrained environment.
- Maintaining and enhancing our runtime libraries, e.g., to support the latest C++ standard.
- Contributing to the specification of the next generation of silicon and toolchain.
Join the team
If you want to be part of our Tools team, and can contribute in any of these areas, then we would love to hear from you. But, first, let us just check a few things:
You must be able to demonstrate hands-on experience, and a high degree of expertise in:
- Strong C and C++ programming skills
- Deep understanding of tools and libraries used to program embedded systems.
- Experience reading and writing assembly code.
Additionally. you will have expertise in some of these areas:
- Developing toolchain components such as linkers, assemblers, and debuggers.
- Implementing and maintaining runtime libraries for bare-metal targets.
- Compiler design and implementation, in particular the compiler backend.
- Knowledge of micro-processor architectures for embedded applications – for example, instruction set composition, pipeline stages, memory hierarchy and cache implementations.
- Scripting using Python (2 or 3).
- Performing benchmarking and optimisation in conjunction with users and target applications.
- Releasing and supporting compiler technology to a user base.
- Competitive salary
- 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.
- Share options – EMI approved share options allocated at a level commensurate to seniority. A 4-year vesting profile with a 1-year cliff.
- 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 if they are residing in the UK (incremental premium must be paid by the Employee.)
- 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.