Job Overview:
We are seeking a highly motivated and creative person to join our Cambridge-based toolchain performance team.
This is an excellent opportunity for a candidate with a keen interest in Dev Ops, software quality and performance testing, who wants to influence the future of Arm IP and the Arm eco-system.
Our team works on a diverse range of compilers and toolchains. From popular open-source projects like GNU and LLVM to closed sourced Arm compilers. Our goal is to tackle software performance challenges whenever they occur. We monitor the performance of vital toolchain and system components across a large number of hardware and software platforms. Your work will allow us to manage this unique complexity and provide the toolchain engineering teams with high-quality, reliable tracking of the state of the world of software on Arm IP.
This involves writing custom code to extend existing software or to connect systems together that are not usually deployed together. You will also manage a spread of hardware benchmarking platforms: mobile phones, developer boards, big servers as well as FPGAs and simulators for brand-new CPU designs.
Our existing infrastructure has been developed over time to meet our team's specific requirements, and we will be happy to ramp you up on its structure and components until you are comfortable owning its further evolution.
We are one of a number of compiler engineering teams in Arm, and we have plenty of passionate and friendly DevOps engineers specialising in toolchain testing who will be delighted to help you.
Location
This position is situated in our Cambridge head office which hosts diverse teams from across Arm including development tools, compilers, debuggers, technical communications, DevOps infrastructure provision and open-source software development.
Responsibilities:
As part of your role you will be supporting the software development teams CI/CD and automation:
- Maintaining a board farm of hardware devices used for validation and benchmarking.
- Crafting, maintaining and extending the automated testing and benchmarking infrastructure.
- Extending existing software to suit our needs or writing new glue between systems.
- Debugging problems across the stack: from data visualisation packages to Linux kernel crashes.
- Provisioning and handling various Cloud Infrastructure.
- Implementing custom solutions for reporting and aggregating results.
Required Skills and Experience :
- Good knowledge of software engineering and experience working with Cloud, CI and Testing.
- Familiarity with Linux development and administration environments through scripting and command-line.
- Hands-on experience interacting with physical or virtualized systems, such as development boards, servers, or embedded platforms, including remote access via serial consoles, network booting, BMCs, or similar management interfaces. This experience may come from professional, academic, or serious hobbyist projects.
- Knowledge of version control such as Git.
- Advanced understanding of Python and experience modifying medium to large Python projects.
- Experience leading or designing projects to improve efficiency and quality of sophisticated and widely used software.
- University degree ideally in computer science or a related STEM background. Other backgrounds will be considered if you have suitable experience and curiosity about the role.
“Nice To Have” Skills and Experience :
Familiarity with any of the below is welcome but not required. You can expect us to help you grow and be mentored in one or more of these areas of your interest when you join us!
- Experience of build automation tooling like TeamCity or Jenkins.
- Understanding of the performance metrics of compilers, assemblers and linkers
- Experience configuring and installing hardware in a board or server farm, including maintenance through debugging problems and updating firmware, operating systems etc.
- Practical understanding of virtualisation, containerisation, simulation, and emulation technologies (e.g. VMs, containers, architectural simulators).
- Experience experimenting with or maintaining small-scale lab setups (e.g. home labs, Raspberry Pi clusters, FPGA boards, or similar), demonstrating curiosity about hardware–software interaction beyond purely cloud-based systems.
- Familiarity with web frontend frameworks such as Flask, CSS, HTML5, Bootstrap, ReactJS.
- Performance tracking and visualisation.
In Return:
On top of the already compellingLife at Arm, we are famous for our team culture - including Friday focus times, regular career conversations, remarkable diversity, equity and inclusion initiatives, and continuous improvement mentality.
#LI-JG1
At Arm, we want to build extraordinary teams. If you need an adjustment or an accommodation during the recruitment process, please email accommodations@arm.com. To note, by sending us the requested information, you consent to its use by Arm to arrange for appropriate accommodations. All accommodation or adjustment requests will be treated with confidentiality, and information concerning these requests will only be disclosed as necessary to provide the accommodation. Although this is not an exhaustive list, examples of support include breaks between interviews, having documents read aloud, or office accessibility. Please email us about anything we can do to accommodate you during the recruitment process.
Arm’s approach to hybrid working is designed to create a working environment that supports both high performance and personal wellbeing. We believe in bringing people together face to face to enable us to work at pace, whilst recognizing the value of flexibility. Within that framework, we empower groups/teams to determine their own hybrid working patterns, depending on the work and the team’s needs. Details of what this means for each role will be shared upon application. In some cases, the flexibility we can offer is limited by local legal, regulatory, tax, or other considerations, and where this is the case, we will collaborate with you to find the best solution. Please talk to us to find out more about what this could look like for you.
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 race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or status as a protected veteran.