Arm's Userspace Performance team is looking for skilled software performance analysis engineers to lead a small group of engineers working on software performance analysis and optimisation. Successful candidates will help improve the performance of software running on Arm systems used across the world.
About The Team
You will join a team of Software Engineers who all share a passion for wanting to stamp their mark on the future of computing, wherever it may lead. If you are similarly passionate about leading edge technologies, then we want to hear from you!
We investigate and solve hard problems with the goal of improving performance of software running on Arm platforms. We often look into large software stacks with sophisticated interactions. We work closely with our tooling teams and try to come up with innovative ways to identify the root causes of performance issues. We interact with different teams across Arm that can help us get more insight into problems we face or help us improve the performance of the workloads we are working on. Often we will connect with partner companies helping them to understand what performance issues they are facing. Our goals include influencing decisions that hardware design teams make to improve performance of future designs.
We expect a professional, hardworking and flexible approach to work, with a flair for creative lateral thinking and problem solving with a dedication to extend the breadth and depth of your knowledge. Your strong interpersonal skills are vital for success; we are looking for excellent written and spoken English and be capable of writing documentation and mentoring junior engineers.
We value diversity of ideas and want you to feel included and able to bring your best self to your workplace.
Responsibilities of the role
- Ensuring the team plans and delivers tasks in a timely and organised fashion.
- People management for direct reports
- Facilitating continuous learning for the team
- Analysing and improving large codebases for different performance aspects.
- Working with the rest of the company as well as external partners and open-source communities.
- Helping design the strategies to understand the bottlenecks and what investigate next.
- Documenting the analysis performed, sharing knowledge within the team and wider.
- Producing write-ups and presentations to share with the interested parties as well as help the team handle similar problems.
- Working with different platforms that include the latest hardware, but also FPGAs and software models of upcoming hardware designs.
Essential Skills:
- You are an excellent problem solver.
- You have at least 2 years of managerial experience and a track record of timely, high quality delivery.
- You are passionate about coaching others and growing the team's capabilities.
- Demonstrating excellent communication, being able to clearly convey complex topics.
- You will have excellent C/C++ skills
- You have experience in profiling and tracing large applications to find bottlenecks of performance.
Desirable Skills
- Understanding how sophisticated software (including web servers, databases, mobile applications, and many others) function and what matters for performance is highly valued.
- We are seeking understanding of OS concepts such as processes, threads, locks, virtual memory and how they relate to application performance.
- Good awareness of the details of System Architecture (pipelines, caches, MMUs, interconnect, timers, multithreading) is highly useful.
- We find understanding of compiler optimizations very useful
- Ability to reason about generated assembly code is highly desired
- We value familiarity with open-source project development cycles and contribution processes
- We are seeking an understanding of Arm architecture and tools
#LI-CM1
Accommodations at Arm
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.
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.
Equal Opportunities at Arm
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.