Challenge: Gusto’s business is designed around empowering a better life for all employees through their work, but existing bug-fixing processes didn’t fit this goal. The process of finding and fixing bugs was complicated, tedious, inefficient, and all-around unpleasant for Gusto engineers.
Results: Gusto redesigned its bug-fixing process around the idea of code ownership. Using Bugsnag, engineers have visibility to errors that occurred in the code they wrote, clear indicators for the impact of each error, and the resources needed to diagnose and resolve errors quickly.
Gusto is a comprehensive HR, payroll, and benefits platform for small and medium businesses. Gusto has an extensive human resources platform and more than 90 developers who diligently work on creating and maintaining its multiple applications, like payroll, health benefits, payments, risk checks, and others.
As each of Gusto’s applications scaled and the number of customers grew, their engineering teams identified that troubleshooting bugs was becoming a very tedious and inefficient process for the developer assigned weekly to that task, whom they call the Viking Master. The Viking Master would halt any other priorities and solely focus on identifying and fixing bugs. Given how much code was being pushed to production, there was a lot of noise generated when it came to error notifications. Many times, the errors the Viking Master was addressing were lines of code they hadn’t written, making it even more complicated when replicating and fixing errors. The Viking Master had to spend countless hours figuring out which errors to address first, digging through logs, and reaching out to other engineers to get the full context, just in time for a new Viking Master to start from square one the following week.
Eddie Kim, CTO and co-founder of Gusto, knew this was not the kind of experience he wanted for Gusto’s more than 90 talented developers. To better match their company’s value of empowering people to do their best work, Gusto sought to improve the necessary task of troubleshooting errors and make it a much more enjoyable and less time-consuming process.
“Whenever an error occurs, each application team gets immediately notified via Slack, where we show pertinent information about the exception and which developer committed the code.”
-Eddie Kim, CTO and cofounder
Another efficiency created by the Developer Experience team was using Bugsnag for workflow purposes. Once an error is identified, it is useful for the team to know which errors are being worked on and by whom. This ensures that no important issues fall through the cracks and that there are clear next steps as to who should be fixing what bugs.
Even though the Developer Experience team is continuing to roll out more efficiencies to the error troubleshooting process, Bugsnag has already allowed them to realize some initial benefits. Mean time to resolution has decreased and all engineering teams can now enjoy smoother deploys that allow them to address errors before they escalate.
“Bugsnag is a central tool that enables us to create ownership mentality for all software engineers.”
-Eddie Kim, CTO and cofounder
By enabling developers to more easily identify and address errors, Gusto can quickly iterate and improve their software’s performance. This leads to more robust and faster background job processing systems, such as the amount of time it takes for their customers to run payroll or file taxes. As a result, Gusto offers a better customer experience leading to fewer support tickets and increased customer satisfaction.
Also published here.