Background
Our team is responsible for developing and improving the software eco-system around ARM's next generation of applications processors. This often involves working with processors and other hardware not yet available to the general public. Work is carried out on a range of development platforms, software-models, FPGAs and early silicon, sometimes many months before the processors are used in real products.
You will join a team of motivated and professional Software Engineers who all share a passion for wanting to stamp their mark on the future of computing, wherever it may lead. You will help ARM maintain its leadership in the embedded market, as well as playing an essential role in making ARM a successful server platform. If you share a similar passion we want to hear from you!
Job Purpose & Accountabilities
We are looking for an experienced Software Engineer to work on all aspects of the software life-cycle.
Responsibilities include porting Android to new ARM architectures, debugging, analysing and optimising software performance, collaborating with colleagues and the open source community, maintaining and enhancing an automated build and test frameworks, possibly participating in developer conferences and summits, and working with semiconductor partners and customers. The role will also involve software development and testing and debugging in environments such as Linux and Android.
The successful candidates will be flexible, with a variety of software development skills and a commitment to extend the breadth and depth of their knowledge.
This position is based in Cambridge, UK but we would consider applications from talented candidates for our office in San Jose, CA, USA.
Please clearly specify in your application which office you are interested in being considered for.
Job Requirements
Job Requirements
Education & Qualifications
A good university degree (or equivalent) in Computer Science, Engineering or numerate subject.
Essential Skills & Experience
Software development experience in C/C++
Experience in developing for embedded platforms and/or real-time operating systems
Experience with standard GNU/Linux tool chains, shells and build tools
Experience of software profiling, instrumentation and optimisation
Experience with version control systems, particularly distributed tools such as Git or Bazaar
Good written and verbal communication skills
Ability to work independently or in a team
Desirable Skills & Experience
Knowledge of the ARM architecture
Experience with Android porting or development (OS level)
Experience with Java or javascript Virtual Machines or JIT compilers
Familiarity with SoC (System-on-Chip) architectures
Experience with GNU/Linux distributions such as Ubuntu, RedHat, Debian etc.
Familiarity with open-source project development cycles and contribution processes
Familiarity with testing methodology and automated testing systems
Experience with Linux kernel and device driver development
Experience with assembly programming (not necessarily ARM)
Package
Share (Restricted Share Units) at the discretion of ARM Holdings plc
SAYE
Private Medical Insurance
Permanent Health Insurance
Life Assurance
Contributory Personal Pension scheme
Relocation expenses as appropriate ARM - 9 months ago