My Software Quality Principles
The core software quality principles that have helped me set the vision of how my teams perceive software quality
Published in
3 min readMar 18, 2022
I’ve contributed to several projects and products, built teams during tough times, and joined many others. Along the way, I’ve acquired some core software quality principles that have helped me set the vision of how my teams perceive software quality.
Here are my core software quality principles:
- Testing is the whole team’s responsibility — My mission is to develop and advocate for tools, practices, and processes that deliver quality software while simultaneously enabling engineering velocity. Although I’m a test engineer, I’m not solely responsible for testing or test automation. I don’t even do most of the testing. Lao Tzu once said, “To lead people, walk behind them”. Thus, I take absolute ownership of my mission but more importantly, I support, mentor, and ensure that my peers can be autonomous drivers of testing and quality.
- Short “tea break” CI feedback loops — Test execution stages have a massive impact on the speed of a CI/CD pipeline. The longer they take, the slower the pipeline is. And, a slow pipeline dictates how often we can release to customers. A test suite taking longer than the time it takes to stretch my legs…