Senior QA Engineer
Role Overview
As a Senior QA you’ll be joining one of our development teams in terms of delivering specific technical projects, while working closely with the QA group for driving and participating in system wide quality assessment and improvement initiatives. We’re in the process of re-engineering our cloud based Merlin Practice Management Platform to be more “cloud native”, splitting out a core set of services (Java, Spring Boot) on Azure using App Services, Kubernetes, Docker, Terraform, Redis etc.
We are striving to test smarter and faster to deliver solutions our customers need. You will work on a mixture of automated test frameworks and tests, while carrying out manual verification and critically assessing where test coverage should be placed. You will be at the forefront of ensuring what our customers get is Quality.
This is a hands-on automation tester role for someone with deep experience of using both Java and Javascript for automation testing. You should have experience of working with cloud platforms (Azure preferred, but not essential), a good understanding of agile principles, and software testing best-practices. You will coach more junior QAs and take the lead on test initiatives while working closely with the Technical leads as part of refinement and 3 Amigo sessions.
Our platform is primarily based on Java/JEE running on Azure and SQL Server today, but rapidly changing as we re-engineer the platform. In terms of platform direction:
- The front-end is currently based on GWT, but we’re looking to change that to use a modern Javascript framework/library.
- We’re decomposing the monolithic platform into a series of services (based on Spring Boot primarily). We’ve successfully split out our hardware/lab integration service (Hyperion) and our reporting services to date.
- We’ve introduced Azure Service Bus as a way to decouple services and do asynchronous messaging in addition to the currently (very synchronous) architecture).
- We host the platform on Microsoft Azure, but are looking to migrate our operational architecture to a new model utilising devops technology (Terraform, Docker and Kubernetes).
- We’re solving problems at scale with thousands of clinics and users in a mission critical environment.
Our teams are fully remote and distributed around the UK (Camberley). There are twenty people in the UK today across four teams (product, cloud services, developers, platform and support). We are scaling to over forty people within our department with significant investment from our parent company. This is a fully remote position for the candidate in the South with occasional (monthly) visits to the office.
Essential and Desirable Skills
You will:
- Design, create and augment test frameworks for cloud based solutions in a multi-tenanted environment.
- Work with multiple teams to ensure both functional and non-functional requirements are defined and understood, ensuring efficiency in implementation and test.
- Work on testing our applications to ensure high quality as well as performing load, stress and security testing with the team.
- Introduce new tools and carry out POCs to drive our test suite forward.
- Provide coaching and support to junior QA’s in the team.
Essential
We’re looking for people with the following skills:
- Strong technical background.
- Analytical and methodical approach.
- Considerable experience with Selenium.
- Considerable experience with Cypress.
- Considerable experience of JMeter.
- Experience of testing Web Services and Microservices.
- Knowledge of good practices and design patterns in test code.
- Experience in API testing with tools such as Postman and WireMock.
- Working knowledge of SQL
- Working knowledge of relational databases.
- Knowledge of ISTQB standards.
- Experience writing clear and concise test plans and test cases.
- Experience working within a development team in an agile environment.
- Experience with JIRA or similar workflow and defect tracking systems.
- Experience working with Git based source control systems.
Desirable
Ideally you will have:
- ISTQB certification.
- Experience with other web automation tools apart from Selenium.
- Exposure to Java unit testing Junit/Mockito.
- CI knowledge such as Jenkins.