If you have an interest in CPU, GPU or NPU architecture and you are passionate about software, whether it’s kernel, driver, application or tools development; If you’d like to know more about how hardware and software interact, then this is an outstanding opportunity for you!
What will I be accountable for?
As a Graduate, you will be placed in a development team at Arm’s offices in Cambridge, UK where you will have a dedicated mentor, and be able to get to grips with the problems ranging across many software areas. You will work across all aspects of the software lifecycle whilst being supported by and learning from the rest of the team.
Whilst a lot of our work does involve Open Source software, many tasks require working with development platforms, or simulated hardware environments where features are being developed and tested before the physical devices have been built, so the problems you will be encouraged to understand and pursue are ones that are yet unknown to the general community.
Currently enrolled in a bachelor’s or master’s programme, on track to earn a degree in computer science, or a related field
Essential Skills & Qualities
A real passion for computing that goes beyond your studies
A creative and structured approach to problem-solving
Proficient knowledge of one of C/C++. Candidates with proficiency in Python will be considered for roles in our Machine Learning Group.
A strong will and eagerness for learning and self-improvement.
Desirable Skills and Qualities
A wide range of roles is available. Depending on the area you choose to pursue, an interest in any of the following would support your application:
3D or GPGPU APIs
Knowledge of a leading RISC based computer architecture, ideally Arm
Evidence of Open Source project interaction or contribution (patches, bug reports, …)
Operating system kernel or device drivers
Knowledge of low-level assembler programming
Compilation technology, JIT (Just In Time) compilers…
Machine language frameworks like Tensorflow, PyTorch or Apache MXNet.
Android, ChromeOS, RedHat, Debian internals/middleware development
Linux development or validation
Domain specific and novel compiler frameworks like MLIR, Glow, Spiral, Halide, Tiramisu or Apache TVM.
Zephyr, FreeRTOS, other RTOS development or validation
Low level device driver development and integration experience
Understanding of CPU architecture and micro-architecture features (such as caches, MMU, SMP, coherency, CPU pipelines)
Familiarity with embedded power management techniques or security technologies
An understanding of radio protocol standards such as Bluetooth and/or Wireless LAN
Hands on experience with hardware and software debuggers.
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.