Loveland Innovations brings disruptive technology to the insurance roofing business by delivering faster, safer, more accurate and more accountable property assessments. The company monitors 100% of its AI-powered IMGING application with OverOps to find and fix software issues fast, improve collaboration between development and ops, and best of all: proactively reach out to customers with any issues in time for users to easily make corrections.
Loveland Innovations provides advanced data analytics solutions and drone-based property data gathering tools to businesses in the insurance, roofing, solar and real estate industries. Bringing together robotics, artificial intelligence and machine learning, the company’s patented IMGING application collects and analyzes critical property data to help customers make quicker, more confident decisions, whether they’re estimating repair costs for hurricane damage, or creating a policy for a new property.
Our product creates massive efficiencies for our customers by eliminating the time-consuming, inaccurate and often unsafe task of manually inspecting property. This means our software needs to be incredibly reliable in order to deliver maximum value to our users. If issues in our code impact how the IMGING application is working while a customer is in the middle of assessing a property, that can impact their trust or lose the customer altogether.
In the past, our team worked at companies where production errors were frequently caught by the customer. In those situations, we’d be notified of problems by customer support, then we’d have to dig through logs to find the issue in question and spend time reproducing it. There were instances where we’d spend entire afternoons sifting through logs trying to make sense of what was going on, and would sometimes just have to call it because it was so unproductive and too much time was being wasted.
Because of these experiences, we knew that we wanted to take a proactive approach right from the get-go at Loveland. When we first started out, we went on the hunt for a solution that could help us identify and troubleshoot issues efficiently and give proper insight into the application state. We initially tested out a variety of APM solutions, but found that most of them didn’t give nearly as much insight as we needed, or required code changes and a lot of work to implement and maintain.
OverOps’ ability to capture variable state was what really stood out to us and convinced us to give it a try. Once we saw how easy OverOps was to use and how much data we had access to, we knew it was the right solution for us.
OverOps has been core to our troubleshooting process and maintaining clean code. We have a variety of alerts set up that we’re able to review as they come in and quickly diagnose what part of the code is causing a problem. We’ve broken it down between production and non-production to help with prioritization, and then we always focus our attention first on new issues that we haven’t encountered before or any anomalies. For example, there may be an issue that happens periodically that isn’t typically a problem, but if we see a sudden increase in its frequency, OverOps helps us investigate further.
OverOps has played an important role in ensuring collaboration between our development and ops teams. By providing extensive data around each issue, it’s easier to diagnose and determine if it is a development problem or an operations problem. We are able to see the exact path that led to an issue and eliminate any finger pointing that might come as a result of visibility issues. Our development and ops teams work together very cohesively to figure out the solution and deploy new builds with fixes where needed.
Additionally, OverOps has streamlined our customer support function and made it a lot more efficient and proactive. With OverOps, as soon as we receive an alert, we’re able to address the error and proactively reach out to customers––sometimes while they’re actively on a job site––to let them know we’re already aware of the issue and working on a fix. Being able to get ahead of customer-impacting issues and resolve them before the customer even has the chance to contact support goes a long way. We’ve actually had customers say things like “I can’t believe you guys called me first and I didn’t have to reach out to you to address that issue.”
There was one specific issue where we got an alert, went in there, and within about five minutes knew exactly what the problem was with our data, and were able to go into our database and address it immediately. We didn't have to spend any time in the logs, and I remember thinking, “That right there is huge value for us.” There have been many other cases like that where it has been extremely valuable for us to know immediately when there’s a new error and have tons of data at our disposal to bypass pouring through logs.
We use Splunk to look at logs and from there we can go into OverOps for a deeper dive. We've also built in alerting with OverOps and Slack. We have separate Slack channels for alerts and we can easily see everything ranging from errors that don’t require action but we want to keep an eye on, to issues that our customers are experiencing and we need to address urgently.