Senior Software Engineer – GPU

Arm Limited
Published
September 2, 2020
Location
110 Fulbourn Road, Cambridge, United Kingdom
Category
Job Type

Description

Are you looking for an exciting and challenging role working on the leading edge of mobile GPU technology? Are you looking to use your technical skills to help drive your career? You will join an Agile Software development team working on the drivers for the next generation Mali™ mobile GPUs. You will work with the most recent Linux kernels and yet-to-be-published Android versions and will help shape the technologies that the mobile market will see in years to come.

You will be based in Cambridge (UK) and work on the lower layer of the Mali graphics driver stack. We focus on performance-critical user and kernel space components that interface with the GPU hardware and firmware, including scheduling and memory management for Linux and Android OSs.

If you would like to utilize your technical capabilities to drive existing and future parts of our Mali GPU to execute content as efficiently as possible, this is the opportunity for you.

What you will be involved with:

You will be working closely with the multi-disciplined engineering teams across ARM’s European design centres to develop device drivers for the current and next generation of ARM Mali GPUs.

You will provide the foundations that will make the Mali implementation of Vulkan, OpenGL and OpenCL simply the best in the market.

Day to day activities include:

  • Participating in all phases of software development - including design, implementation, testing, code review, and documentation.
  • Implementing new features for both user and kernel space components
  • Working closely with other software teams to interface driver components.
  • Maintaining the existing codebase: fixing bugs and other quality assurance activities.
  • Development on local platforms (FPGA, silicon, GPU model) and remotely on a test farm, on both stable and under development OS configurations.

This is an amazing opportunity to influence products and technology that millions of people will use around the globe years ahead of the product release.

Job Requirements

  • Education & Qualifications: Bachelor's or Master's Degree (computer science or electronics engineering). Skills & Experience required:
  • Demonstrable expertise in C programming.
  • Experience developing Linux kernel components and/or device drivers.
  • Good understanding of computer architecture and embedded systems.
  • Proficiency in problem-solving and debugging skills.
  • Experience with version control and bug tracking systems.
  • Excellent team working skills, self-motivated, and results-focused.
  • Practical, organized, and analytical approach to work.

Desirable:

  • Experience with ARM embedded systems
  • Familiar with Android system software development and debugging
  • Interest in graphics and compute APIs - Vulkan, OpenGL ES, OpenCL
  • Experience of software development for a commercial organization.

ARM Benefits

Your particular benefits package will depend on position and type of employment and may be subject to change. Your package will be confirmed on offer of employment. Arm’s benefits program provides permanent employees with the opportunity to stay innovative and healthy, ensure the wellness of their families, and create a positive working environment.

  • Annual Bonus Plan
  • Discretionary Cash Award
  • Group Personal Pension Plan with enhanced company contribution
  • Medical, Travel, Health & Life Insurances
  • Holiday, 25 days annual leave with option to buy an additional 5 days per year
  • Sabbatical, 20 paid days every four-year of service
  • Volunteering, One (1) paid working day each year (TeamARM)
  • Varies by location: cycle to work, free car parking, gym on site, team and social events

Related Jobs

Image Processing Software Developer   Fort Meade, Maryland
June 16, 2019
Software Developer Level 2   New Windsor, Maryland
June 3, 2019
Desktop page
~