The Shift from Quality Assurance to Quality Engineering
Quality Assurance is being phased out in favour of Quality Engineering. Here's my personal view on what that shift could actually mean in practice - and why it matters.
For those that have been involved in the world of QA for a long time, this model will feel familiar:
- Build the feature
- Test the feature
- Log the bugs
It worked well enough. Until, there was a shift ...
“Quality Assurance was about checking software after it was built. Quality Engineering is about making sure it doesn't break in the first place.”
That shift is starting to happen thick and fast, everywhere - whether teams realise it or not.
Why the traditional QA model is breaking down
This change has nothing to do with titles. It's all about how modern software is being built, and how the disciplines around it need to evole to keep pace.
The old QA model struggles because:
- Release cycles are faster
- Systems are more complex
- Feedback needs to be near-instant
- Teams are expected to ship continuously
Bolting quality onto the end of the process will no longer suffice (actually, I could talk all day but how it was never truly sufficient but that's for a different article). With the historical model, by the time QA gets involved, the cost of fixing problems can already be too high.
The problem with testing at the end
The traditional approach creates a predictable pattern:
- Code gets written quickly
- Problems surface late
- Fixes become reactive
- Deadlines get squeezed or just missed entirely
Which leads to:
- QA becoming the bottleneck
- Developers rely on QA to catch issues
- Quality becomes someone else's repsonsibility
This isn't really a well-oiled or confidence-giving process. It's damage control with a aesthetic sign above the door. Let's face it; I imagine a lot of us have been in a situation where the team is scared to hit the big scary release button.
Releases should be something to celebrate, not fear. Hard work going into production. Into the hands of users.
What Quality Engineering actually means
Quality Engineering doesn't replace QA as a discipline - particularly in regulated industries like healthcare, finance, or insurance, where formal QA functions aren't going anywhere.
What it replaces is the idea that testing is just a phase.
The thinking shifts from:
"Did we test this?"
To:
"How did we design this so it's less likely to fail?"
That change and mentality ripples through everything.
1. Quality moves to the start
Instead of testing after build/implementation:
- Risks are identified early
- Edge cases are discussed upfront
- Requirements are challenged before work begins
- Assumptions are surfaced, not buried
A lot of problems never make it into the code at all. That's the point.
2. Engineers own quality
In every testing framework I write, I include something along the lines of "QA cannot create quality" (inspired by an existing document I inherited during my time at Resource Guru. The intent is to make it clear that quality isn't just something you hand off after all the decisions have already been made.
Developers are expected to:
- Write meaningful tests at the unit and integration level
- Build observable systems
- Think about failure modes
- Own the outcome
The broader automation strategy - E2E coverage, test architecture, tooling - remains a quality engineering function with collaboration.
3. Testing becomes part of the architecture
Instead of adding tests as an afterthought:
- Testability is designed in from the start
- Automation sits at the right levels of the stack. Quality engineers own that architectural decision - what gets automated, at which layer, and why
- CI pipelines provide genuine confidence, not just green ticks
- Failures are faster and easier to diagnose
Testing stops being a thin layer spread on top of a system. It becomes part of the system itself.
4. The goal shifts from coverage to confidence
Traditional QA tends to measure:
- Test case counts
- Coverage percentages
- Regression pack size
Quality Engineering asks different questions:
- Can we ship safely?
- Can we detect issues quickly?
- Can we recover fast when things go wrong?
It's not about how much you test. It's about how much you can trust the system and can evidence that trust.
What this looks like in real teams
- QA involved in design and planning, not just execution
- Developers own testability; quality engineers own the automation strategy and E2E coverage
- Test strategy designed per feature, not one-size-fits-all
- Quality conversations happening throughout the process - not at the end of it.
- Automation focused on fast, meaningful feedback
Why this matters more now than ever
The shift hasn't happened overnight and it isn't happening in isolation. It's being driven by:
- Faster delivery expectations across the board
- Maturing CI/CD tooling that makes shift-left practical, not just theoretical
- AI increasingly absorbing low-value, repetitive testing work - freeing up quality engineers to focus on the harder, more strategic problems
The safety net of a dedicated late-stage QA gate is starting to get thinner. Which means the system itself has to be stronger, more resilient, and built with quality in mind from day one.
The uncomfortable truth
If your internal team(s) still rely on:
- QA as the final gate in your SDLC
- Manual regression as a core strategy
- Testing as a completely separate phase
You may already be facing problems and be behind the curve. Not simply because QA is inherently wrong, but because that traditional model was built for a pace of delivery that is becoming increasingly rare.
Final thought
Quality Engineering isn't a rebrand of Quality Assurance (QA). It's a correction to fit with how modern software is actually built.