Unpopular opinion: Separate QA teams lower quality
Unpopular opinion: Separate QA teams lower quality.
Here's why: When you tell developers some other team is responsible for testing and assuring quality, they cut more corners and ship lower quality code.
QA can't add sufficient quality after the fact.
When you tell developers they alone are responsible for quality, they:
✅ Write more tests
✅ Cut fewer corners
✅ Take more ownership
✅ Consider more aspects of quality (UX, accessibility, performance, security...)
✅ Produce higher quality code
So, in companies with dedicated QA roles, I believe QA should embed with cross-functional delivery teams. Doing so assures QA is involved early and collaborates throughout the process. But the motivation and incentive risks I've mentioned above remain.
I've worked with companies where QA felt threatened by me writing automated tests. "Hey, that's our job!". I've even seen this concern escalated to management! 🤦♂️
That's wrongheaded. QA should focus on quality and exploratory testing, not on writing tests for developers.
And consider the irony: Developers writing tests frees QA up to do their job better and more creatively! If developers write solid automated tests, then QA doesn't have to do boring, manual, redundant testing. They're free to search for edge cases to assure quality. 👍