Job opportunity

Software Quality Engineer (Linux, graduate to senior)

If you are tired of being a cog in the machine and want to take an active part in developing really exciting technology, this role could be for you.

Engineering at Undo

Undo engineers are trusted to do their best to do the right thing. We grow teams that have the freedom to make their own decisions so individual engineers are empowered to choose how best to achieve their committed goals.

In return, we ask that you do your best to understand your internal or external customers’ needs, deliver engineering changes within the timeframes agreed with your colleagues, take ownership of specific tasks and be flexible when company priorities change.

Expect to participate in open discussions, to challenge and be challenged with arguments based on reason, and to compromise occasionally in order to achieve team consensus. Trust, honesty and respect for others is essential. Enthusiasm and drive are valued.

Purpose of this role

Your role is to drive improvement of our product quality. You will need to ensure that the right testing is being done and that test failures are escalated to the engineers who are best placed to fix them. Members of the team at Senior level will also need to understand our development workflows and identify process bugs that could lead to failures being missed and conduct retrospectives to examine the root causes for product failures. It follows that in addition to requiring technical skills, this role will suit someone with gravitas and influence in order to act as an evangelist for the company’s existing quality strategy and to recommend improvements to the strategy where required.

Responsibilities

  • Seek to maintain clean test runs by characterising test failures, safely quarantining them and identifying the right person to fix them
  • Review test plans for product changes and ensure that the right tests are in place and are passing reliably
  • Understand, maintain and extend our suite of Python product test cases
  • Own and improve our processes for triaging and prioritising software defects, and manage changes to these processes
  • Own, publish and be accountable for the accuracy of business metrics relating to software quality and reliability

Background

  • Previous experience in a similar role is desirable (e.g. Software Quality Assurance Engineer, Software Engineer in Test)
  • B.Sc. in Computer Science, Engineering, Mathematics or similar would be an advantage

Required skills

  • Ability to collaborate with and influence others
  • Ability to understand diagnostic logs and characterise defects
  • Experience working in Linux
  • Proficiency in Python test development

Highly desirable skills and behaviours

  • Understanding of Linux internals (signals, system calls, threads, processes)
  • Strong Python and/or C/C++
  • Experience working with the pytest framework
  • Team-based code development and code review (we use git and GitHub)
  • Inclination when handling an issue to consider how it can be avoided in future
  • Strong drive to assume responsibility for an outcome and to drive oneself and others to achieve it

Term

Permanent

Location

Cambridge, UK

Reports to

Technical Software Manager - Engineering Improvement

Direct reports

None

To apply, please email us your CV at careers@undo.io 

We are making Undo a place to work of which we can all be really proud.

About Undo