The “Who should do QA” podcast is one of the best podcasts about Software Quality I have found so far. I became a regular listener to the Test & Code show by Brian Okken. Episode 175 is one of the finest synopses about the quality practices to perform as a top software development team. Brian presents the ideas from a reflective style as a practical developer, making the concepts more engaging than QA biased content.
What does “doing QA” mean, anyway? Episode 175 · January 12th, 2022 · 13 mins 6 secs
From the whole episode, I will highlight the superset of skills that a test engineer brings or should add to the team:
- Experts of the product.
- Experts of the domain and customer expectations of the product.
- Aware of project schedule and risk tolerance of the areas of each project.
- Teams skill level.
- Taunted communicators across teams.
- Skilled and pragmatic exploratory testers and test trainers.
- Excellent at writing and speaking.
- Excellent software engineers
I would top this list up with:
- Good sense of psychology and social interactions. As explained what I consider the “bible” of software quality,” Perfect Software” by Gerald M. Weinbergs.
- Excellent exploratory testing practices as described by Maaret Pyhäjärvi in her book “Exploratory Testing” by Maaret Pyhäjärvi.
- Shift-left testing strategy advocate
- Solid understanding of the Context-driven school of testing principles.
Good quality is all about respect for the craft of testing. Testing looks easy, and from experience, I could say that this misconception alone is probably the root cause for most of the bugs in production. Fortunately, the top developers I had the pleasure to work with, really respect and collaborate sincerely with testing, thus making them even better.
It is wise to realise how the separation of concerns in many industries is the most efficient work method. Especially in highly complex environments like technology organisations. Thus good quality needs special attention, dedicated time to learn and explore.
I found that all this content about who needs to do testing links very well with the shallow vs deep fishing analogy by James Bach. He comes to explain that for shallow testing, you might not need QA specialists. Still, he recommends not going fishing to the deep blue sea of dangerous bugs without the safety assistance of a testing specialist.
“We test more deeply and reliably.” Minute 42. The Future of the Testing Role - James Bach.
To recap, quality is the responsibility of the whole team, just like performance. Without everyone’s contribution and goodwill, we can not get good levels of either. First, however, we need Quality Engineers and Project Managers to establish the specialised core principles for the rest of the team. They might not be actively coding, maybe not all the time, but sure they have the skills to set the project for success by making everyone’s life easier.
Thanks for reading.
I hope it helps.