High Performance Computing Engineer – 3-month internship found on Arm Holdings Warwick

Internship Benz Recruiting in Engineering Email Job
  • Share:

Job Detail

  • Career Level Staff
  • Experience 2 Years
  • Gender Any
  • Qualifications Bachelor Degree

Job Description

Job Description
Our team isresponsible for developing high performance compilers and numerical libraries as well as tools to help improve performance of software on these systems. We are looking for highly skilled and motivated software engineers to join our elite team.

You will have opportunities to work on a focused project involving researching, developing and delivering into the high performance ecosystem for the Arm architecture.

You will strive to improve the performance of generated code, develop new features and help expand the use of this technology into new and existing markets. This will require innovation and ground breaking development on compilation tools and libraries based on a range of technologies, both proprietary and open source.

Key Responsibilities

Opportunities exist for you within the following areas:

Development of new compiler and library features and optimisations, including auto-vectorisation, auto-parallelisation and parallel runtimes, especially using Arm’s new Scalable Vector Extensions (SVE).
Optimising numerical routines as part of the Arm Performance Libraries product.
Developing new tools to aide users in optimizing codes on Arm systems to increase performance.
Driving continuous delivery infrastructure and tooling improvements across the project teams.
Working with other divisions in Arm to expand support of the Arm architecture.

Job Requirements

Essential Skills & Experience

Studying towards a degree in maths, physics, computer science or engineering or similar
Excellent programming skills: within the team the main languages used are C,C++ and Fortran.
Strong abstract reasoning skills with an ability to focus on key concepts at all levels of detail.
Understanding of algorithms and data structures.
Self-driven, independent problem solver, technically versatile, willing to be flexible and accept new challenges.
Effective verbal and written communication skills.
Ability to work alone as well as in a team.

Desirable Skills and Experience

The following is a list of some of the main skills that are used across our projects.

Highlighting where your abilities may match up with any of these will be useful in assessing applications. Don’t worry if your existing skills don’t match precisiely what we are developing, since we will be looking at your overall experience and interest levels and what you will be able to contribute to the team over the course of the internship.

Experience in Clang/LLVM, GCC or another compiler.
Understanding of the purpose and structure of compilers, assemblers and linkers.
Awareness of techniques in compiler optimizations and code generation.
Experience with vector architectures and auto-vecorisation techniques.
Experience with parallel programming and OpenMP.
Experience of maths libraries and other high performance libraries.
Understanding of at least one CPU architecture and instruction set.
Experience of developing, delivering and maintaining production quality software or working on open source projects.
Developing for Unix operating systems, in particular Linux.
Working effectively in extended teams across groups, sites and countries.
Exposure to software continuous delivery environments.
Proficiency in Python or other scripting languages.
Core Beliefs

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 has the right answer. Brilliance is collective

Information is essential, 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 be responsible for 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

With offices around the world, Arm is a diverse organisation of dedicated, innovative and highly talented professionals. By enabling a vibrant, inclusive, meritocratic, and open workplace, where all our people can grow and succeed, we encourage our people to share their unique contributions to Arm’s success in the global marketplace.

 

Other jobs you may like

This is a Promotion Ad