Cost of Building Bad Software

Bad Software, Crash Reporting, Error Reporting, Real User Monitoring, Software Errors

This post was originally published on Ragun’s blog.

According to Microsoft’s Chief Executive Officer, Satya Nadella, “Every business [is or] will become a software business.” Becoming a software business means building applications, leveraging analytics and providing SaaS to better serve customers. Software being a strategic focus of a company’s end user offerings will continue to play a greater role in creating growth and satisfied customers across all industries. Developing great software is hard though and errors (bugs) can be costly. Visibility and actionable data are critical.

Grow Revenue with Better Software

How costly can software errors be? Consider a national pizza delivery company. Assume the company’s e-commerce site generates five million errors per month as a result of its software developers continually releasing new features and services. If only one percent of those errors (50,000) prohibit customers from ordering, at an average of $25 per pizza, the potential impact in lost revenue is $1.25 million per month. Eliminating 50% of that one percent would save the company $625,000 per month.

A common and immediate response from CTOs and other technology professional is, five million errors per month is extremely high. Based on our data from 2,000 customers, five million errors per month is actually common, if not conservative. Technology leaders are often surprised to learn how many errors their software has even with the best quality and testing efforts in place. In fact, it is not uncommon to see applications and websites generating 25-75 million errors per month. If you do not have visibility into these errors and their impact on users, you are at risk.

Build Great Software versus Fight It

Another way software errors can be costly is through low value, reactive work. For example, the average software developer spends 32 hours each month ($889 in time) fixing bugs, replicating issues and researching logfiles. If you have 50 developers, the combined 1,600 hours of reactive work “costs” the organization $44,450 in lost time. These hours are time away from proactively adding value to the business and its users. Reducing the 1,600 hours by 50% would “save” the organization $22,225 each month in time while increasing overall product and software quality.

Note the above figures are based on the average salary for a software developer at $58,000 per year. In cities like Boston, Los Angeles, New York, San Francisco and Seattle, these salaries can be triple. While reactive work is important, it rarely differentiates the business. Having visibility and actionable data to reduce software errors can help shift the software development equation from 70% reactive, 30% proactive to 70% proactive, 30% reactive. Proactive work – releasing new features and services – is where true value is created for the business and its users.

Better Customer Experience 

According to industry research, less than five percent of users let companies know when they experience software errors. To make matters worse, 71% of users abandon applications and websites after experiencing one software error. How can you fix problems when you do not know about them? You cannot. You need visibility into your production software. You need to understand how users are engaging with and experiencing your software after it is released … AND you need actionable data to help you fix errors before they significantly impact users.

A Software Intelligence Platform is the Solution

Raygun helps technology-focused companies build great software and deliver exceptional experiences to their customers. Application, e-commerce and media companies like Box, HBO and Nordstrom use Raygun’s software intelligence platform for crash reporting, error reporting and real user monitoring. Raygun is currently used by 40,000 developers across 2,000 companies in 120 countries. Request a demo of the Raygun software intelligence platform or trial it yourself with your team. Spend more time building great software and less time fighting it.

All contents copyright © 2016, Josh Lowry. All rights reserved.


Automation versus Orchestration

Automation versus Orchestration

DevOps is responsible for configuring and provisioning IT infrastructure, including application, database and web servers. One of the key value propositions of DevOps is getting applications up-and-running quickly in production environments. How do they do it? Automation and orchestration. What is the difference? Automation describes a task completed without human intervention. Orchestration describes the arrangement and coordination of automated tasks completed without human intervention resulting in a consolidated process or workflow.

To illustrate: Several tasks need to be completed to spin-up IT infrastructure to host a new application; e.g., launch virtual instances, load balancers, etc. All of these tasks can be completed through automation. However, these tasks must occur in a particular order, which is where orchestration is key. While creating orchestration templates in tools like AWS CloudFormation can be time consuming, they simplify and de-risk process and enable continuous delivery/integration while lowering costs. Automation is one task completed. Orchestrate is multiple tasks completed.

All contents copyright © 2017, Josh Lowry. All rights reserved.

%d bloggers like this: