DTS Software Developer in Test - Grade 7

Band A

Location: London / National

Salary Range: The national salary range is £39,868 - £43,535, London salary range is £45,824 - £50,039. Your salary will be dependent on your base location.

Introduction:

These are exciting times at HM Court and Tribunals Service (HMCTS). As an agency of the MoJ, we support the judiciary across England and Wales to deliver justice by running courts and tribunals and processing outcomes, and we are looking for talented people to help us achieve our ambitions. It will be challenging, important and rewarding.

HMCTS Digital and Technology Services (DTS) is a specialist technology directorate which provides support to HMCTS in the use of IT and Digital.

DTS is creating a place in which it is great to do work and part of our offer is brilliant training opportunities and support from expert colleagues. As well as that you’ll find flexible working, an inclusive culture and a place where your opinion is valued.

Please follow the link below for further information about HMCTS. www.gov.uk/government/organisations/hm-courts-and-tribunals-service

DDaT:

Roles will be recruited using a combination of the Digital, Data and Technology (DDaT) and Success Profile Frameworks. Using DDaT we will then determine if you will be paid an additional allowance, on top of your basic salary. This role is within the Technical Job Family, is a Software Developer role at Developer level, but carries the title Software Developer in Test within DTS.

Our community

We currently have over 500 experienced developers across MoJ and its agencies who make up the broader software engineering community. You will be able to learn from others, share your knowledge and take part in informal support networks with your peers. You can also take a look at the MoJ developer blog.

As a Software Development Engineer in Test at HMCTS, you will have access to extensive training and development opportunities through our Testing Centre of Excellence. Our commitment to your growth means that you will receive in-depth, in-house training designed to enhance your skills and knowledge, making you proficient in the latest testing methodologies and tools. Whether you are looking to sharpen your testing capabilities, deepen your technical expertise, or expand your leadership skills, our training is tailored to help you succeed in your role and advance your career. This commitment to continuous learning is a core part of our culture, ensuring that you have the tools and knowledge you need to excel in your position and contribute to our ongoing success.

 The key purpose of the role:

 As a Software Development Engineer in Test, your responsibilities will encompass not only writing, debugging, and refactoring test code but also leading test automation in CI/CD environments. You will collaborate closely with software developers to ensure a common understanding of the code base and test coverage at the unit test level.

You will play a pivotal role in helping to shape the culture and best practices throughout the Test Centre of Excellence at HMCTS. Your strong technical skills will be essential in ensuring the highest quality standards for our test automation.

Additionally, mentoring, and coaching Junior Software Development Engineers in Test is a crucial aspect of this role. You will guide the team to achieve excellence in test automation and support their learning journey.

The development squad you are placed on will be agreed closer to your start date, but examples of products can be found in our github repositories:

Technologies

We use a range of cutting-edge technologies, including:

  • Java/Javascript
  • Playwright
    • Puppeteer
    • Cypress
    • CodeceptJS
  • js framework (Node.js)
  • Angular
  • PostgreSQL
  • Microservices
  • Azure cloud infrastructure
  • Gatling
  • Saucelabs
  • Pa11y, WAVE, aXe
  • Jenkins for deployment
  • Dynatrace for application monitoring
  • Kubernetes and Docker to run our services
  • Jira/Confluence

We’re here to support your learning journey within our tech stack when you become a part of our team.

 Key responsibilities:

  • Promote and champion shift-left testing principles, emphasising unit and integration testing, to ensure early detection of issues and higher quality software.
  • Lead the development and implementation of test automation strategies in CI/CD environments.
  • Write, amend, and refactor test automation code, adhering to internal software development standards.
  • Lead in “3 Amigos” sessions as an integral part of the development and testing process.
  • Estimate your effort for planning and follow the agreed methodology.
  • Understand the impact of business processes on the project and systems.
  • Analyse test results and identify patterns and trends, translating findings into business impact.
  • Collaborate on designing and building secure products with a focus on information assurance.
  • Maintain full traceability of defects, tests, and requirements. Report issues found through the appropriate channels.
  • Provide mentoring and coaching to Junior Software Development Engineers in Test to enhance their skills and knowledge.
  • Contribute to the development of a culture of excellence in test automation within the team.

Essential Skills and Experience:

  •  Demonstrated experience in leading test automation in CI/CD environments.
  • Expertise in writing automated testing programs/scripts, particularly in our core technology stack.
  • Expertise in the Software Development Lifecycle, ensuring alignment with project objectives and quality standards.
  • Strong understanding of REST web services and API inspection tools.
  • Familiarity with bug tracking software and experience in using it effectively.
  • Ability to identify and manage issues and risks associated with testing, with a focus on analysing and reporting test activities and results.
  • Exposure to applying Agile principles in practice, facilitating seamless integration into project workflows.
  • Proficiency in defining and implementing test tooling, test environments, and test data across various phases of testing.
  • Proven ability to design and execute non-functional test cases in diverse environments.