Senior Software Engineer

Power The Future On Arm
Cambridge, United Kingdom
10 days ago

Role details

Contract type
Temporary contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
£ 100K

Job location

Cambridge, United Kingdom

Tech stack

Adobe InDesign
API
Agile Methodologies
Data analysis
Computer Vision
Automation of Tests
Bash
Profiling
Encodings
Software Debugging
Linux
DevOps
Device Drivers
Field-Programmable Gate Array (FPGA)
Issue Tracking Systems
Information Retrieval
Python
Machine Learning
OpenCL
Performance Tuning
Software Tools
Software Engineering
Graphics Processing Unit (GPU)
GIT
Code Restructuring
Docker

Job description

Our team develops the driver layer that implements widely used GPU compute and machine learning APIs, including Vulkan ML and OpenCL, enabling massively parallel workloads on Arm Mali GPUs.

Mali GPUs power performance-critical applications such as machine learning, image processing, computer vision, and video encode and decode. Working within the constraints of mobile and embedded systems, we deliver advanced functionality while continuously improving performance, efficiency, and reliability.

You will join a collaborative Agile team developing GPU compute drivers for next-generation Mali GPUs. Working with pre-release Android platforms and emerging technologies, you will help shape capabilities that will reach the mobile market in the years ahead.

We use modern AI information retrieval tools and advanced engineering practices to improve productivity and quality, placing you at the forefront of contemporary software development.

Based in Cambridge, one of the UK's leading technology hubs, you will be part of a diverse and inclusive team in a supportive, forward-looking environment.

Responsibilities:

You will contribute to one of several specialised areas within the GPU compute driver team, including feature development, performance optimisation, infrastructure, and quality engineering.

Your work may involve enabling new GPU capabilities, identifying optimization opportunities to maximise performance, enhancing internal tooling and infrastructure, or supporting demanding ML and compute workloads.

You will:

  • Contribute across the full software development lifecycle, including design, implementation, testing, review, and documentation
  • Develop and optimise driver features and supporting infrastructure
  • Analyse functionality and performance across diverse, performance-critical workloads
  • Maintain and improve the codebase through debugging, refactoring, and quality assurance activities
  • Take part in design discussions, peer reviews, estimation, and Agile planning
  • Collaborate with compiler, ML, integration, and solutions teams on cross-functional initiatives
  • Work in a Linux environment on Arm-based targets, including models, FPGAs, and production silicon
  • Apply modern AI-assisted engineering tools and practices to improve productivity and quality
  • Uphold Arm's engineering standards and collaborative culture

This role offers broad technical exposure, continuous learning through training and peer collaboration, and the opportunity to influence technologies deployed in millions of devices worldwide.

Requirements

  • Strong proficiency in C and C++ for systems-level development
  • Good understanding of embedded systems and hardware-software interaction, applying solid software engineering principles
  • Strong problem-solving and debugging skills, with a structured and analytical approach
  • Effective communication and teamwork skills, with experience working in an Agile environment
  • Clear written and spoken English suitable for an international engineering setting

"Nice To Have" Skills and Experience :

  • Experience with graphics or compute APIs such as Vulkan or OpenCL
  • Experience in device driver development, ideally in GPU or other performance-critical areas
  • Exposure to machine learning workloads in performance-sensitive environments
  • Experience writing design documentation and developing automated test suites
  • Proficiency in Python or Bash for scripting and automation
  • Experience developing for Linux or Android platforms
  • Familiarity with Git, issue tracking tools, and Agile development practices
  • Experience contributing to large or multi-site software projects
  • Knowledge of performance optimisation, profiling, and instrumentation techniques
  • Understanding of compiler internals, particularly LLVM
  • Experience with automation and DevOps tools such as Docker and CI/CD systems
  • Exposure to data analysis and statistics for performance evaluation

Benefits & conditions

We provide benefits beyond a competitive salary to reward our people for their dedication and contributions.

About the company

At Arm, we want to build extraordinary teams. If you need an adjustment or an accommodation during the recruitment process, please email . 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. Hybrid Working at Arm 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., Power the Future on Arm Working in software engineering at Arm is about shaping a future of technology for which we don't yet have words. Our engineers lead innovation in physical IP, AI and machine learning, cloud architecture, automotive tech, and every aspect of computing that matters. Spanning software's full spectrum, from compilers to AI-powered IoT and beyond, your code can enable virtually anything to be produced on silicon. Whether you're developing award-winning VR gaming or life-enhancing medical equipment, you can improve the lives of millions by being your brilliant self at Arm.

Apply for this position