Are you a numerical software developer who is looking for a new challenge outside of HPC workloads? Arm is recruiting for a talented engineer with experience of optimizing codes to join a world-class team in Manchester, UK, working on our machine learning (ML) libraries for servers.
At Arm, we are currently developing optimized libraries for use with many ML frameworks. We are growing a team focused on these areas, alongside our existing Arm Performance Libraries development.
You will work on all aspects of researching, developing and delivering into a machine learning library for the Arm architecture. You will improve the performance of the computational algorithms in the library. This will require innovation and ground-breaking development, working with both proprietary and open-source software stacks, on the very latest Arm-based hardware.
This role does not require the experience of ML frameworks themselves, although that would be a bonus! The thrust of the work will be about helping us to deliver performance improvements on Arm hardware.
- Optimization of numerical libraries for a range of Arm-based systems, including improving vectorization and cache performance
- Improving the parallel scalability of the library
- Investigating, implementing and testing new algorithms for the library
- Producing and delivering high-quality, reliable libraries
Key Skills & Experience
- Excellent programming skills in C++, C
- Numerical software optimization and low-level programming
- Strong grasp of algorithms and data structures, along with a good understanding of how modern computer systems need to have appropriately structured code
DESIRABLE SKILLS AND EXPERIENCE
The following is a selection of skills used across our projects. You do not need any of these to apply or succeed in your application
- Parallel programming and parallel runtimes, especially OpenMP
- Machine learning and deep learning algorithms
EDUCATION & QUALIFICATIONS
You will need a good degree (or equivalent) in Mathematics, Computing, or an alternative with relevant experience.
At Arm, we are guided by our core beliefs that reflect our unique culture and guide our decisions, defining how we work together to defy ordinary and shape extraordinary:
WE NOT I
- Take daily responsibility to make the Global Arm community thrive
- No individual owns the right answer. Brilliance is collective
- Information is crucial, share it
- Realise that we win when we collaborate — and that everyone misses out when we don’t
PASSION FOR PROGRESS
- Our differences are our strength. Widen and mix up the pool of people you connect with
- Difficult things can take unexpected directions. Stick with it
- Make feedback positive and expansive, not negative and narrow
- The essence of progress is that it can’t stop. Grow with it and own your own progress
BE YOUR BRILLIANT SELF
- Be quirky not egocentric
- Recognise the power in saying ‘I don’t know’
- Make trust our default position
- Hold strong opinions lightly