Principal software engineer: Compiler and Tools

Principal software engineer: Compiler and Tools 500 350 XMOS

The role is based in Bristol, UK.

You’ll work within the Software Group and interact with the applications team and developers – the ‘leading edge’ consumers of the tools that you will develop. Your main responsibilities will include:

  • Developing and maintaining the XMOS C, C++ and XC compilers;
  • Designing and implementing optimizations to address performance, code size, power consumption and timing closure for real-time programs;
  • Static and dynamic code analysis for measuring timing and detecting deadlock;
  • Generating DWARF debugging information for optimized code;
  • Actively contributing to and sharing LLVM compiler improvements with the open-source community;
  • Working with the apps team and with customers to contribute to development of the XC concurrent and real-time programming language;
  • Working with the silicon team to contribute to development of next-generation XMOS products and architecture; and

As a member of a software engineering group, your responsibilities will also include:

  • Collaboration with agile planning processes;
  • Software design, implementation and documentation;
  • Automated test implementation;
  • Code reviews and support for other development on going within the team;
  • Collaboration with engineers from a range of disciplines to deliver complete, production ready systems.

You’ll need to be self-directed, proactive and equally comfortable working as part of a team or independently and you’ll enjoy solving day-to-day problems with limited direction.

About XMOS

We’re a global business, headquartered in Bristol, with offices across Asia and the United States; and we’re backed by some of the best names in high tech venture capital.

With a 10-year pedigree in Hi-Res and multichannel USB audio solutions, XMOS is at the forefront of the far-field voice interface market, with the most qualified, most comprehensive range. Adopted by leading brands, our high-performance, easily integrated solutions are transforming consumers’ interactions with everyday devices.

As a deep tech company working to develop more natural human machine interfaces, we’re 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.

About our technology

XMOS is a fabless semiconductor company with a unique micro-controller design, underpinned by our own in-house tools.

Our approach to multi-core, highly parallel stream processing enables our software team to develop highly efficient “at the edge” intelligent sensor applications.

Today, we deliver best in class voice capture – detecting voice commands accurately, from across the room – even in busy environments when the person is speaking softly. And we’re building for a more natural human machine interface tomorrow.

Who we’re looking for

XMOS has ambitions plans for its software platforms and is looking for energetic and versatile software engineers to join the growing team. Comfortable working in a ‘start-up’ environment, you will be a key contributor to our compiler tool chain and simulator.  You will be an experienced hands-on engineer, and able and willing to influence the architecture and technology roadmap of all our tools.

You will have worked at a senior engineer level or above with 5-10 years of relevant experience and at your best working in a highly technical environment solving complex technical challenges.

Your experience will include:

  • Compiler development and strong understanding of compiler fundamentals;
  • Development using the LLVM compiler infrastructure;
  • Compiler back-end flow including code generation strategies, register allocation and optimizations for performance and code size;
  • Compiler front-end flow and language extension;
  • Real-time and multi-core processor architectures;

You will also have:

  • Strong C/C++ programming skills;
  • Excellent problem-solving skills;
  • Experience of developing unit tests, and preferably of Test-Driven Development;
  • Hands-on experience working with processor or DSP development platforms;
  • Familiarity with the use of SCM systems, and preferably a working knowledge of Git; and
  • An understanding of Continuous Integration systems
  • A BSc or above in Computer Science or a related discipline.

The benefits

  • Competitive Salary.
  • 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 has to 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.