Back to case studies

Introduced the first QA function and moved release verification to CI/CD with around 2,000 automated tests

Challenge

The client's company had no formal quality assurance and no QA role. Requirements and defects were not tracked in any consistent way, and nobody could say with confidence whether the software was ready before a release. Every release carried unknown risk, with no evidence to support or challenge the go decision.

My Solution

  • Introduced the QA function to the organization and built and led the team of manual and automated testers (up to 10 people), coordinating QA efforts across it. I hired and onboarded the testers and mentored them.
  • Put in place tracking for requirements and defects in Jira, with Zephyr for test management, so that what was expected, what was found, and what was fixed became visible to the team.
  • Defined the process around it: a defect life cycle with triage, the regression scope, and test metrics, so defects, regression checks, and quality reporting followed one agreed process.
  • Tested hands-on before releases across the web and iOS user interfaces, APIs, databases, patches, logs, third-party service integrations, and performance.
  • Added test automation for UI and API checks and integrated it into CI/CD with TeamCity, so release confidence no longer depended on manual effort alone.

Result

release verification moved from ad hoc checks to a CI/CD pipeline running around 2,000 automated tests within 1 hour, backed by tracked requirements and defects, with a QA team of up to 10 people in place.

Tech Stack

  • Jira
  • Zephyr
  • TeamCity
  • Nightwatch.js
  • Cypress
  • JavaScript
  • JMeter
  • Postman