Feb 16th, 2021
Defining Success
Part 6: Quality
  Written by: Jesse LaDousa, Chief Executive Officer
We’ve had a couple weeks of arctic freeze here in Minnesota. Not at all unusual for this time of year, but it still comes as a bit of a system shock when the wind chill readings get to thirty-five or forty below zero. When this happens, Minnesotans naturally retreat into their homes and hunker down to ride it out.
I’m not one that sits still very well, so on the weekends that I am stuck inside, I look for a project to tackle. We live in a nearly one hundred-year-old house so thankfully, there’s always something to do. I have a long list of house projects that I want to tackle at any given time, but this weekend called for some easy cosmetic updates.
The prior tenants of our house did little in the way of maintenance and the thoroughness of their care for the property was lacking. Honestly, part of what attracted us to this house was the fact that we could work to restore it to its once pristine character. My project this past weekend involved replacing and repairing the doors on our second floor. Over the years, many changes had been made to these solid hardwood doors and frames. New and adjusted hinges, hardware, lock sets, strike plates, etc. The doors were out of plumb. Some would hang open at all times while others would slam shut and many of them didn’t latch properly. I came to find that these doors were sporting four different styles of hardware and 5 different sets of hinges.
As I worked from door to door, replacing the hinges, door hardware, and latch plates, I began thinking about quality. Many of these “updates” on our doors were quick fix band-aids, designed to make a small annoyance or problem go away. While that may have worked in the short term, it was clear that the long-term goals were missed; as many of these band-aids had now failed and left the door in as bad of shape or worse than they were before.
This line of thinking applies directly to our software delivery projects as well. Agile delivery teaches us to prioritize and deliver in small increments so value can be achieved as quick as possible. Many teams fall into the trap of thinking this means cutting corners while writing code, executing tests, or drafting documentation for the project. The quality of delivery can suffer, with teams sometimes thinking “We’ll just remember to fix that later”.
Just the opposite needs to occur. When you are breaking down work for small incremental delivery, quality is even more important. Teams must think about the overall architecture and project goals and align their work to ensure those goals are met. When your code has the chance to reach production at the end of every sprint, the quality must be top of mind.
Sometimes, you must slow down to go faster. Think about the sprint delivery with quality as your key goal and plan to work that quality into your delivery. Do this every sprint, and your success rate will increase. Band-aids fall off, quality repairs can last forever.