Software Engineer - DevOps & Quality for Supercomputer Tools
- Full Time
Help develop software tools to support the needs of the scientists and engineers working with supercomputers. We are looking for a highly skilled and proactive software engineer who is passionate about producing quality software using highly efficient methods and tools to join our engineering team.
In the course of this role, you'll have the opportunity to learn about and use the world-leading supercomputers that we support. Our tools are used by industry, government and academia to perform cutting-edge scientific research and simulations, such as weather forecasting, modelling the big bang and simulating the human brain.
Our group are responsible for developing Allinea tools (DDT, Map and Performance Reports), The ARM Compiler, ARM Performance Libraries, ARM Instruction Emulator and a ARM Code Advisor, a web-based tool that advises on code performance improvements.
You will be working as part of our quality engineering scrum team. Your role as a quality software engineer will require you to work closely with all the product teams to improve and automate processes, validate the product quality, review and categorise bugs prior to releases, provide and manage engineering efficiency standards and own the continuous integration and continuous delivery pipelines.
This position is for our office in the heart of Manchester, where you will be steps away from the vibrant life of the city centre and there are excellent transport links. You will be expected to occasionally travel to events and meet with our partners.
Key Skills and Experience:
Experience with and highly competent at:
- Use and management of DevOps/Continuous Integration tools and frameworks preferably GoCD or Jenkins.
- Constructing and seeking agreement on technical plans e.g. agile stories, acceptance criteria, test plans.
- Writing of automated tests preferably using the Robot Framework.
- Manual exploratory testing of software including assessing defects impact on release.
- Linux administration, particularly installation and maintenance.
- At least one scripting language.
Note: Training may be provided for the right candidate with only a subset of the skills and experience.
You will be educated to degree level or have similar relevant experience.
Desirable Skills and Experience:
The following is a selection of skills used across our projects. You do not need any of these to apply or succeed in your application.
Experience with and competent at:
- Following and implementing software methodologies, tools, and processes.
- High performance computing applications, libraries or parallel programming.
- Working effectively in extended teams across groups, sites and countries.
- Configuration management tools like ansible, chef, or puppet.