Later Doesn’t Exist. Build Quality or Pay Later

Bruce started working with a new section of the company. They have different development practices in his new world. He noticed they set high quality standards on the front end. Code coverage and automated tests are created with the first line of code written. If code doesn’t pass the standard its fixed until it does. Bruce noticed they got better results. The tests and build/test integrations take some time to setup. But the outcome was good quality.

How you do anything is how you’ll do everything (credit Benjamin Hardy because its where I heard this first). This is true with how software is written, tested and deployed. Shortcuts on the basics lead to bleeding cuts in production (and promoting to production).

I work in an organization that has an Operations Team. A good number of details get deferred by the development team. This is because it’s not the development team that bleeds in the middle of the night when their defect is discovered.

“Jim, where the monitoring thresholds and alerts?” “We didn’t do that yet. We’ll do it manually in production.”

This says that you’re not testing your monitoring and alerts. You don’t know how they’ll behave until they’re needed. This is like testing your fuel gauge by running out of gas.

I didn’t want to write this post today. It was something I committed to at the beginning of the day. If I can’t trust myself to do what I say, others can’t either.

Software engineers (including systems engineers), scrum masters, product owners or managers of the world, it’s time become trustworthy. This can be by being honest with ourselves and others:

“We don’t unit test. We don’t use code coverage. We value delivery time and current cost over quality and deferred cost.”

Or it can be done by having a higher standard that plugs the hole in the boat that is our defective product and slowly bails the water out until we find ourselves working on business value that is reliable as a Toyota.

The cord gets pulled and the line is stopped when a defect is found on the line producing a car when a company uses TPS (Toyota Production System). There is no “later”. Quality is built in. It’s corrected in real time … the root cause … at the source … at the expense of delivery. Because later doesn’t exist.