Job header section
Senior Compiler Engineer
job navigation section
Hardware at Arm
You know us. With 125 Arm-powered products shipped every second, we'll be in a over a trillion smart devices by 2035. Your smartphone, award-winning VR gaming, the world's fastest supercomputer – our engineers are designing the advanced core processors leading the race towards a connected, autonomous, hyper-performance future.
So, we promise you endless opportunities to experiment and go even further in hardware. From advanced core implementation to full custom physical IPs, here you'll have our backing to push limits in vital areas such as memory, IO and logic.
Learning and Development
We encourage our people to upskill as much as they want with a comprehensive learning and development package which includes technical development, mentoring, internal and external conferences, tech talks, and donut sessions. Whether you want to learn a new programming language, upskill your excel skills or read the latest articles on Microprocessor reporting we are with you to Spark the worlds potential.
We'll always encourage you to take plenty of annual leave, so you stay fresh and inspired. But you know what really does it? When we encourage you to take an extended, paid 4 weeks' sabbatical after 4 years of service.
You're a human being, not a resource. And so it's important to us that we're there for you at significant points in your life. That's why we offer flexible progressive leave. Whether you're having kids, acting as a primary care giver or have lost a loved one, you'll be able to put your family first without worrying about your career.
We create a safe space for you to look after your mental and physical health, with support ranging from medical insurance to the workplace mental health platform Unmind. Alongside a growing number of onsite gyms, yoga, cycling and running clubs. All of which comes with a flexible working policy to ensure you can live life and be your brilliant self.
Senior Compiler Engineer - Research
Arm has fuelled the smartphone revolution by crafting imaginative compute power that fits in your pocket. Do you want to be part of the next revolution? We are looking for a skilled and enthusiastic compiler engineer to join Arm Research to implement support for experimental Arm architectures in Arm Compiler / LLVM. Come work with us on the future generations of compute!
We are working to address future compute needs by creating new architectural features; in the past our team has worked on SVE, MVE, and SVE2. Your focus will be on compiler development for ongoing research, generating prototypes and gaining insight to meaningfully influence the architecture of next generation processors and accelerators. You will be highly autonomous and the point of contact between Research and the compiler teams to ensure our work is successfully adopted by other parts of Arm and its ecosystem.
Previous experience working with modern open-source compiler toolchains (LLVM/gcc) is essential, as is the desire to work on cutting edge research. An ideal candidate will be passionate about the latest computing technology and be prepared to use and develop experimental tools to prove the viability of new ideas. Does this sound interesting? If you have outstanding technical skills to develop and deliver exciting research projects, we would like to hear from you!
- You will work as a member of our Architecture Research team, and be instrumental in:
- Autonomously identifying and implementing features to our LLVM compiler, libraries, and associated software to enable experimental research architectures.
- Providing software and compiler-centric insights that will craft the ISA of future accelerators and processors.
- Assisting in the analysis and development of benchmarks and test applications.
- Maintaining close links to the internal compiler teams and the open source LLVM community.
Education & Qualifications
- Any relevant degree or experience in software and compiler development.
Essential Skills & Experience - Experienced with and highly proficient at:
- C and/or C++ programming.
- LLVM compiler development or another modern compiler toolchain.
- Application of software methodologies, tools, and processes including code review.
Desirable skills & Experience
You do not need to have experience with any of these to apply or succeed in your application, and training may be provided as necessary:
- Familiarity with coding in assembly (Arm or otherwise).
- Familiarity with other current programming languages (Rust, Golang, Swift, …).
- Basic understanding of instruction set architecture, and fundamentals of CPU micro-architecture.
- Basic familiarity with emerging methodologies such as MLIR.
- Research skills - analytical rigour, designing experiments, clear communication of complex ideas, and willingness to work in a research-orientated environment.
- Basic awareness of recent developments in Arm processor architecture, such as SVE, MVE, Arm® TrustZone®, etc.
Arm is an equal opportunity employer, committed to providing an environment of mutual respect where equal opportunities are available to all applicants and colleagues. We are a diverse organization of dedicated and innovative individuals, and don’t discriminate on the basis of any characteristic.
Life at Arm
Life in the office doesn't get any better. Especially when those offices are as sleek as ours. And the people are as creative and intuitive. Combine that with our popular ‘we, not I' mindset and you enjoy the kind of teamwork and togetherness rarely found elsewhere. We share so much in common, not least the same passion for progress, but we also welcome each other's diversity. Because, ultimately, we love to inspire and be inspired every day.
Everything Made Possible
Just how far do the possibilities of Arm's tech stretch? AI, Machine Learning, IoT… billions of people use our technology every day, spanning countless nations, industries and applications. Most people run their lives on Arm technology. So, you see: you really do know us.