Software Engineer & Line Manager - Compilers - #981748
Are you interested in working on pioneering compiler technology whilst helping to lead and develop our team of dedicated engineers to achieve their full potential? We have an opening for an exciting and varied role in our LLVM Compiler team in Manchester, UK.
In this role you will collaborate with the LLVM community, contributing to the open-source Clang compiler, and the many other toolchains that use LLVM, to make the best use of Arm architectural features such as SVE and SVE2.
You may also help develop our commercial LLVM based compilers (C/C++ and Fortran), and help analyse and improve the performance of applications and benchmarks running on Arm hardware.
Previous experience working with LLVM or other compiler toolchains will be useful, but is not essential.
The position involves line management responsibilities. Line Managers at Arm coach and guide other engineers, collaborate to create their objectives, appraise their performance and help them develop their careers. We are seeking candidates who want to balance this rewarding work with an engineering role.Responsibilities:
- Help your reports formulate their objectives (alongside task managers) and appraise them on their delivery.
- Foster professional development through advising and coaching.
- Help them manage their own career path
Your role as a software engineer will require you to:
- Identify and implement changes to LLVM compiler, libraries and open source applications to optimise benchmark workloads.
- Improve the open-source LLVM framework to better support Arm architectural features and core designs.
- Improve our internal compilers and toolchains to aid other teams (such as the Arm Architecture team) in their development of new architectural features.
- Participate in the open source LLVM community, including opportunities to attend and present at developer meetings.
- Develop our automated test frameworks to defend the functionality and performance of our tools.
- C and/or C++ programming.
- Effectively communicating to persuade and influence internal or external partners.
- Application of software methodologies, tools, and processes including code review.
- Coaching, guiding, and supporting personal and professional development in an engineering setting.
- Designing objectives and appraising performance against objectives.
Note: Training may be provided if you have only a subset of these key skills."Nice to have" Skills & Experience
The following is a selection of skills used across our projects.
You do not need to have experience with any of these to apply or succeed in your application.
- Compiler development, particularly LLVM.
- Open source community citizenship including code commits and reviews.
- Basic Linux administration, particularly installation and maintenance.
- Test development using Continuous Integration tools such as Jenkins, and maintenance of test infrastructure using DevOps frameworks such as Chef or Ansible.
- Optimising code for performance.
- Knowledge of Fortran
You will be educated to degree level or have similar relevant experience.In Return
In return all arm employees are provided with vital training to succeed in their respective roles. As well as a friendly and high-performance working environment, Arm offers a competitive benefits package including private medical insurance, sabbatical, supplementary pension, and wellness benefits. We are offering a hybrid approach to home and office working to provide an adaptable experience for all employees. We expect some working time to be spent in office, to promote a strong collaborative environment with good team integration but are accommodating to different home working requirements.