Join to apply for the Senior Software Engineer - Compilers role at Arm
We are looking for an experienced performance engineer who is passionate about developing compilers and managed runtimes and loves open-source software. In this role you will be working on improving the performance of managed language workloads on Arm architecture by improving the language runtime/compiler as well as identifying bottlenecks in the hardware and working with hardware designers to improve these. The languages covered include Java, JavaScript, Python, Rust and more. You will be part of the bigger CE-SW Runtimes team, whose goal is to improve modern languages support on the Arm architecture, from JavaScript to Rust. You will work closely with the team and colleagues across the organisation and with open source communities to tackle challenges in enabling the future of computing.
Responsibilities
* Identify and implement changes to compilers and managed runtimes to improve the performance of selected workloads and better support Arm architectural features and CPU designs.
* Implement new runtime or compile features and fine-tune existing ones (e.g. garbage collectors, interpreters, optimisation passes, intrinsics).
* Identify bottlenecks in managed language workloads/benchmarks using profiling tools.
* Collaborate with colleagues across Arm to improve support for the Arm Architecture and CPUs.
* Contribute to open-source software projects and engage with open-source communities.
* Help develop project automated functionality and performance testing frameworks.
Required Skills And Experience
* Experience working on managed runtimes, compilers or similar projects.
* Strong programming skills in C/C++.
* Familiar with performance analysis tools at an assembly level.
* Familiar with computer architecture and microarchitecture such as cache hierarchy and CPU pipelines.
* Knowledge of computer architecture; arm64 is preferred.
* Be flexible, with a variety of software development skills and a commitment to extend the breadth and depth of knowledge.
* Familiar with open source project development and contribution processes.
* Proficiency in software development and methodologies (coding, testing, debugging, reviewing).
* Clear and effective written and verbal communication skills.
Nice To Have Skills And Experience
* Proficiency in one or more of the following languages: Java, C#, Rust, Go, JavaScript, Python.
* Familiar with Agile software development methodology such as Scrum or Kanban.
* Familiar with Linux performance analysis tools and system level performance tuning.
* Familiar with build systems and CI.
Education & Qualifications
Established experience or a Bachelor’s (or above) degree in a STEM subject. We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, colour, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.
In Return
You will work directly with upstream communities, contributing to language implementations used by millions of developers worldwide. You will have the opportunity to learn about the latest Arm architecture features, working closely with highly skilled engineering teams on ground-breaking technology. You will be empowered to continually identify and roll out improvements to our ways of working.
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. All accommodation requests will be treated with confidentiality and disclosed only as necessary to provide the accommodation.
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. Details of what this means for each role will be shared upon application. Where applicable, flexibility may be limited by local legal, regulatory, tax, or other considerations.
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 do not discriminate on the basis of race, colour, religion, sex, sexual orientation, gender identity, national origin, disability, or status as a protected veteran.
#J-18808-Ljbffr