Are bugs and slow delivery ok?
The majority of the IT industry operates with low quality development and survives. However there are companies where quality is not an option.
High quality is NOT for everyone.
Does it make sense for your company?
I’ve compiled a checklist of questions to find out the answer.
NOTE: The above numbers regarding 5% and 95% is based on my personal experience. So those numbers are meant for illustrative purposes.
95% of companies can survive with low quality
Quality standards in the software development industry are generally quite low. Quality is a nice-to-have, something on the wishlist. But quality is not a must-have. The following are some symptoms that you don’t need high quality:
Bugs are ok. When a bug occurs, the impact is small. There isn’t any major financial loss nor reputation loss nor any legal/regulatory risk.
Slow bug fix delivery is ok. If the bug fix gets delivered in a week or month, it doesn’t matter that much. It can wait. There isn’t much of a loss.
Slow feature delivery is ok. It doesn’t matter if new features are delivered rarely. Business complains and wants faster, but they accept the slowness.
Wasting time is ok. Developers spend most of their day manually debugging the code and fixing regression bugs - it’s ok.
Burnout is ok. The team is working overtime, facing stress and health problems. Delivery is unsustainable. More mistakes are made. But, it’s ok. When the team gets burnout out, the developers can be replaced.
5% of companies can NOT compromise on quality
The following are some industries where high-quality standards are NOT optional. Quality is not a choice. Examples include:
Financial Services & Payments Processing
Manufacturing & Industrial Automation
Logistics, Warehouse & Retail
What’s the impact:
Bugs are NOT ok. Even one bug has a high cost. The cost may involve financial losses, and reputation losses - leading to loss of customers, hence revenue loss as well as lawsuits.
Slow bug fix delivery is NOT ok. In case a bug is discovered in production, the customer expects a fix ASAP. Every minute that passes by is costly.
Slow feature delivery is NOT ok. The market is competitive. When the business has high-priority features, they don’t want to wait for months to release.
Wasting time is NOT ok. The company does not want the team to do repetitive manual work. It is unacceptable to spend most of the day debugging and fixing regression bugs when that could be prevented through automated tests.
Burnout is NOT ok. The company’s product is so critical, that sustainable delivery must be ensured. Heroism and firefighting is not an option.
Should you invest in software quality?
For 95% of companies, the answer is: No.
These companies survive fine with low quality, there is NO business incentive to invest in quality at all. Quality will just remain a nice-to-have, but low on the priority list. Sometimes the company may invest in technical improvements - but they will remain as just wishlists and no actual change will occur.
For 5% of companies, the answer is: Yes.
These companies can NOT compromise on quality. Either the company will ensure high quality standards or business will close down. There is no choice. Quality is a must-have. This means there is a business imperative for quality.
How to raise software quality this year?
If you’re in the 5% of companies, where quality is a must-have, how can you achieve it?
One way is through books, courses, trainings and then *trying* to implement it in real life applications without having any feedback/support system, spending years in trial-and-error… But waiting for these several years could be too expensive, due to financial losses and reputation losses caused by quality issues.
The other way is through technical coaching, whereby instead of spending years trial-and-error, we implement technical practices in months on real-life code, rather than over-simplified training demo samples. The goal of Technical Coaching is to transform your real product.
Epilogue - Low quality causes failure to adaptive
Whilst 95% of companies can survive without quality, they will still lose out - in terms of competitive advantage, as commented by Daniele Scillia:
While it’s true that 95% of companies can “survive” without quality, then it’s definitely always true that quality becomes a competitive advantage for those in that 95% that aim to it.
With quality you can move faster, experiment more and in general it will be so easier for the company finding the right path to succeed that, in the end, that company will succeed.
Ultimately, failure to be adaptive, i.e. inability to be able to respond fast enough can cause businesses to go under, as commented by Jason Gorman:
Is it really only 5% of businesses who need to adapt to rapid discontinuous changes in their market? How many businesses went under because they couldn't respond fast enough to, e.g., a global pandemic, or a sudden hike in energy prices, or an online retailer disrupting their bricks-and-mortar operational model? I've seen a lot of businesses of all sizes and all ages go under in the last 30 years, and the ability to adapt their core software and systems was a major factor.
Software reliability and adaptability are very closely related: they both depend on how fast you can test your code. High bug counts have a strong correlation with high cost of change.
is this an advanced form of satire?