QA as a crutch
I often get the feeling that quality would be higher if there were no QA people. My thought is that without QA, 100% of the accountability falls on the engineer to find and fix bugs. Additionally, since many engineers don’t or won’t manually test their work thoroughly, being accountable for finding and fixing their own bugs puts more pressure on the engineer to write automated tests.
This, of course, is dependent entirely on how much the engineer cares about there being bugs in the system. Most engineers don’t care, using the rational that bugs are simply a by-product of developing software, and having a certain number of bugs should be acceptable. Furthermore, some bugs are minor, and should be de-prioritized in favor of high priority bugs, so really there are some bugs that will never be fixed by virtue of responsible triage based on business priority.
These types of engineers are typically lazy bastards and are unaffected by the presence of QA – they will do whatever they feel like, largely because they can get away with it. If you work with these types of engineers just figure out what they did to get such a sweet deal, and get career tips from them.
The engineers who benefit most from not having QA are those who are not lazy bastards. These are engineers who take pride in their work, and don’t want any bugs in their system, but who make honest mistakes. Without QA, these engineers get better.