Compiler Technical Lead
at ARM

Compiler Technical Lead
Job ID #: 1297
Country: UK Location: Cambridge
Job Category: Software Engineering Employment Type: Experienced Professionals
Division: System Design Division Department: SDD Engineering Compiler Technology
Hours of work (per week): 37.5


Introduction
ARM is looking for a highly skilled and motivated senior engineer to act as the technical lead on a range of compiler development projects. You will join a world-class team working on compilers and toolchains for mobile and embedded devices with a focus on providing correct high-performance and space-efficient code generation for C & C++. You will drive development of new features, creation of cutting-edge solutions and maintenance and enhancement of compilation tools based on a range of technologies. If you have a passion for compiler-related technology, high performance code generation and an interest in parallel processing, then we would like to hear from you!
Key Accountabilities/Responsibilities

  • Leading a team of developers working on all aspects of toolchain delivery.
  • Delivering new compiler features and optimisations.
  • Increasing speed and reducing memory footprint of generated code.
  • Working with other divisions in ARM to expand support of the ARM architecture & ARM IP.
  • Providing high-quality, reliable toolchains to ARM’s customers, partners and the community
.


Education & Qualifications
You will need a degree in Computer Science, Software Engineering, or an alternative with relevant experience.
Essential skills and experience

  • Excellent programming skills in C/C++.
  • Leading and motivating small teams of highly capable developers.
  • Proactive and self-motivated, independent problem solver, technically versatile, willing to be flexible and accept new challenges.
  • In-depth understanding of at least one CPU or virtual machine architecture and instruction set.
  • Strong abstract reasoning skills with an ability to focus on key concepts at all levels of detail.
  • Proven ability to architect complex software solutions, evaluating alternative design against externally set criteria.
  • Strength in all aspects of software engineering, with experience of seeing developments through from conception to delivery.
  • Strong grasp of algorithms and data structures.
  • Effective verbal and written communication skills.
  • Ability to work alone as well as in a team

Desirable skills and experience
  • Expert-level knowledge of the C and C++ core languages.
  • Knowledge of techniques in compiler optimization, code generation, etc.
  • All-around compiler knowledge: parsing, analysis, machine-independent and machine-dependent optimisation and code generation.
  • Experience developing compilers, assemblers, linkers and libraries.
  • Knowledge of compiler frameworks such as LLVM.
  • Proficiency in Python or other scripting languages.
  • Knowledge of parallelisation and vectorisation.
  • Working effectively in extended teams across groups, sites and countries.
  • Developing for Linux or Windows operating systems.
  • Experience of handling direct technical contact with customers and 3rd party software suppliers.
  • Exposure to large-scale software build, integration and test environments

Package
  • Salary dependent upon experience
  • Shares (Restricted Share Units) at the discretion of ARM Holdings plc
  • Private medical insurance
  • Permanent health insurance
  • Life assurance
  • Contributory pension
  • Annual bonus scheme
  • Relocation expenses as appropriate
Back to top
Want to search all our jobs? Or apply directly for this job? Sign up or Login.
Connect with the Cambridge Technology Communities... Join CamTechNet