Joining Arm’s Compiler team in Cambridge will give you the opportunity to provide automated build, test and development solutions along with support to our internal engineering community creating our suite of tools.
Our compiler and math libraries always support our latest architectural innovations. They are deployed by leading companies and organizations solving fundamental science problems on some of the largest computers in the world.
Job Purpose and Accountabilities
As a Senior DevOps engineer in the compiler team, you will provide modern tools and technologies to support our engineers with first class build and test systems, continuous integration and delivery, to develop and test compilers for Arm architectures. You will join a team of highly skilled and motivated engineers, will promote the dynamic world of DevOps and work with the state-of-the-art techniques and practices. You will have the chance to help create a better development environment for your team, increasing their productivity.
The day-to-day work is dynamic, and the following are examples of tasks you are likely to be involved in:
o Providing infrastructure solutions for the compiler and library engineers, to enable the efficient development of a high-quality, complex software product
o Investigation and implementation of new systems and features
o Requirements analysis and task breakdown
o Providing timely analysis and resolution of issues reported by our developers
o Promoting the DevOps culture inside the team and across Arm
o Communication & collaboration with engineering IT and other Arm infrastructure groups
To be successful in this role, you'll be expected to be flexible, with a variety of software development skills and a dedication to extend the breadth and depth of your knowledge.
You will value the DevOps culture and contribute to spread and promote it. You will strive to forge positive relationships with your fellows and across other teams in Arm.
You will have a real passion for driving continuous improvement through spotting opportunities and seeking the views of others.
Education and Qualifications
A good university degree or equivalent on the job experience and knowledge.
Skills and Experience
o A proven good level of proficiency in Python.
o A good level of proficiency in at least one other programming language such as Java / groovy. C, C++, Perl and a willingness and capability to learn more.
o Familiarity with Infrastructure as Code concepts and tools
o Experience in Unix (Linux) Systems Administration and shell scripting
On top of this, you will need to have production deployment experience with one or more of the following technology areas:
o Software build and test solutions such as Jenkins, GoCD, Robot framework, TestRail
o Version control and code review tools such as Git, Gerrit, GitHub
o Automation tools like Ansible or otherwise Puppet, Chef, Foreman
o Virtualization and cloud technologies such as Docker, Vagrant, OpenStack, Kubernetes, RHEV etc.
o Monitoring, Metrics and results visualization tooling
o Web application development with Flask or similar
Whilst many of these technologies are deployed by the team today we do not expect you to know all of the systems we use ahead of time, and will provide suitable education as required.