Lead QA Engineer
Responsible for overseeing all quality assurance activities surrounding our software products and business systems by managing a team of quality assurance engineers. Reporting to the Head of Development, you will be responsible for overall QA strategy, its implementation on our leading edge development projects that constantly push the limit of the possible, and ensure that day to day processes continually improve with faster, more frequent, higher quality releases. We’ll expect you to be hands-on testing our products for some of the time, and lead by example on the introduction of new processes like test automation, performance and scalability testing and behaviour-driven development. You’ll not be afraid to code where needed to support test activities, and work with developers and product specialists to engage them in the quality process.
- Review and develop our test approach to plan, introduce and shift left quality-enhancing practices and processes.
- Manage all day to day testing activities, ensuring resourcing is aligned with project activities, and adequate review of test plans, analyses and activities occurs involving product specialists, developers and quality engineers.
- Implement and improve processes to manage continuous quality assessment of our products, manage defects (including customer-originated issues coming via our support teams) and drive remediation activities.
- Manage and grow our library of tests, providing traceability to requirements and code components to be able to ensure that adequate testing is done in response to all changes to our products and address risks. Measure and continually improve coverage of the test library. Automate to continually reduce execution time to enable faster, more frequent releases while increasing testing.
- Evaluate and implement tooling to support our quality processes..
- Mentor and coach members of the quality assurance team in improving their practices.
- Extensive experience of testing bespoke software products and IT systems. Experience of managing teams of quality engineers.
- Extensive quality assurance experience, testing complex web based and desktop internally-developed software products and business systems comprising a mix of internally developed and third party systems.
- Experience of developing an organisational quality assurance strategy along with project plans and resource, budget and time necessary to implement improvements to the strategy over medium and long term.
- Experience of developing comprehensive test plans for agile teams working on continuous delivery of small and medium sized feature developments and product improvements, together with more sophisticated plans to support larger development projects with specific requirements needing novel practices. Test plans should cover quality assurance approaches, types and frequency of testing, estimating and sizing test effort and determining supporting resource needs (time, people, data, environments).
- Experience of project management of testing activities and improvements to the testing process.
- Experience of introducing and optimising test support systems - defect and work management, test case management, test automation tooling.
- Shift-left testing in an Agile software development organisation (Kanban with some Scrum and Feature Injection).
- Behaviour-driven development using tools such as SpecFlow and Cucumber. Working with product teams and developers to create testable, executable specifications.
- Line management of quality assurance engineers.
- Experience with continuous testing, deployment pipelines and release when ready practices to support continuous delivery of quality software.
- Experience testing SaaS products built on Google Cloud Platform and / or Microsoft Azure
- Knowledge of cloud productivity solutions such as Office 365 and Google G-Suite and testing systems integrated with their administration.
- Working with support teams to understand customer needs and prevent post-release defects and improvements.
- Working with technical documentation teams to ensure that supporting material is correct and aligns with actual product functionality.
- Degree-level education - BSc/MSc level (or equivalent), ideally in Computer Science or a related engineering or numerate subject.