QA is the most valuable role in the world of AI

AI is transforming engineering, but this story shows why skilled QA still anchors real progress. It follows a tester who spins up environments, fixes blockers, ships features, and uses AI to amplify judgment rather than replace it.

Stuart Alexander, Ushadow Ltd, stu@ushadow.io

12/9/20254 min read

Bold words, I know, but bear with me. Aside from the already established argument that no matter what AI creates, someone still needs to check it, this article is about more than that

A while ago, I wrote about an idea called "Quality led Iterations", where QA would take part in the fixing and tweaking phase of a project, instead of the back and forth between test and dev. (Article here)

I recently got the opportunity to test this idea.

It worked better than I could possibly have imagined

The story

I was doing a short test test contract to get some funds in, as I'm too busy working on my own projects to deal with a long contract. It was a typical agency project where hitting the ground running and a fast assessment of the goals and requirements were needed, which puts me in my element. I made a test strategy, and a skeleton test plan on day1, all without AI (ironically, I think creation of text is the thing it's worst at). There was a lack of infrastructure and environments to test in, so I suggested I just get access to the codebase and spin up a local environment to test with. There were a few complexities around self-serve SSL certs, but luckily I am familiar with this, and Claude gave me a helping hand.

A few hours later, my local test env was functional and I was busy logging bugs.

First win: Creating new environments when established infra is lacking

I was logging bugs faster than they could be fixed, and they started getting rejected because "wasn't in the design" or "invalid". Although this may have been true, they were undeniably quality issues, and the lack of a decent spec or pre-start test cycle doesn't change this. But, at this stage, my job was to report issues, not judge if they should be fixed or not, so I held my tongue (mostly).

The void - no one to fix things

A few days later, the main dev's contract expired and he left the project, leaving behind a fresh build to test and a bunch of unresolved bugs. I jumped in and started to test.... to my dismay, there were more issues than in the previous build and my "P0" issues were still not addressed. I started to dutifully log the issues but then....

What was the point? there was no one there to fix them

I have a working knowledge of Node.js, and although I would unlikely to be able to create this application from scratch, I can check logs, see where the errors are and try to fix them. Using Claude code to decode the error messages, scan the code and dictate the desired behaviour worked better than I was expecting. I was resolving issues that had got rejected as "too difficult" in 10 minutes flat. The fact that I knew how it should work based on how the users would need it to instead of looking up exactly how it was specified was much faster. In a day or so, I fixed about 15 bugs logged, implemented 2 features and resolved maybe another 10-15 that I didn't even waste time logging, I just fixed them.

Now, I'm sure some PM's or Designers are wincing at this point at this sprint of executive and decisive action, but anything that was contentious I just put in a feature branch and demo'ed it to them before merging.

The win - DIY fixes

The next day at standup, the PM announced that the dev had left and they were seeking a resource to replace them to fix the bugs.

  • "I fixed them already"

  • "You did? which ones?

  • "All of them. As well as refactoring the backend code to be faster, adding that feature that wasn't possible"

Second win: Accelerated quality fixing cycle

During the course of this project, I did front end, backend, design, QA, UX, and educational content creation.

Third win: QA can deploy as an extra resource where needed

QA is an AI superpower

I realised a vital insight. I have always said that the best thing about QA is that you have to know a bit about everything. You have to know how to speak to all the different functions at a company, showing that you understand their world. Jack of all trades, master of none, fits me nicely.

This ability means that you can perform almost any tech job to a high level using AI, and have enough knowledge and expertise to see when it's wrong, or poorly implemented and correct course.

Was everything perfect and enterprise grade? No. But so many times faster and more effective. I even built a backend admin tool and rudimentary CMS which wasn't asked for, just because I'd identified it as a risk that the content or dates could change, and so I created a contingency plan that was deployable at the push of a button.

Caveat

Of course, this process may not work with all QA's. I have 25 years of experience in the field and am somewhat of a polymorph anyway, so this may be a god tier unlock for myself, rather than our field.

But give it a shot, and let me know how it goes?

  1. Checkout the code and get a local environment

  2. Install VSCode

  3. Install Claude code

  4. Next time you find a bug, or "It would really be better if...." try telling claude, not the dev.