Tech support tips for developers managing outages and bugs
Posted Sep 19, 2017 | 6 min. (1140 words)It’s an unfortunate attitude that time spent on support is a waste of development resources – and one that can leave a team unprepared and overwhelmed when disaster strikes.
Developers helping with support is a real strength – larger companies often have layers and layers of support between customer and developer resulting in thin communication at best. So, when your app does experience an outage, there is no better way to stand out from the crowd and manage your affected customers with grace by getting your fellow developers on board with support.
Raygun lets you detect and diagnose errors and performance issues in your codebase with ease
During an app outage, you’ll likely be managing affected customers both inside your application and in your wider community. Today, I’ll look at some tech support tips, examples and preventative measures for your development team.
Manage in-app communication
Write better error messages
The better you architect your error messages, the easier it will be to differentiate a real problem from a user-generated error.
For example, the exception label: ‘formatexception: input string not in the correct format’ is not very user-friendly, and the customer might automatically assume there is a problem with your software and lean on support for help. ‘Please enter a correct email address’ is much friendlier, and empowers you the user to fix problems themselves rather than reach for the support line.
You don’t have to write new error messages for all your errors right away. Write more user-friendly error messages for the top 10% of your most frequent problems to allow a balance between proactive preventative work and reactive bug fixing. (You can tag errors with relevant information with Raygun Crash Reporting.)
Manage customer expectations
What do you need from customers to make an error easier to fix? On your contact application form, ask them to send any information that will help you get to the bottom of the problem faster (depending on their level of technical skill.) If you have architected your error messages in a friendly way and attached an error code, both customers and developers will have a better support experience.
Don’t bury your contact information
Only 1% of your users will report a software problem, but these users will become vital sources of information about the outage. So, always make your contact details easy to spot on your website and inside the app so you can open a two-way conversation between developer and customer.
If you haven’t already, consider a tool like Intercom, Zendesk or HelpScout to manage support requests.
Send an in-app message
Acknowledge the problem inside your application and link to an updated status page. Be honest and avoid being overly confident. A message saying ‘We’ll be up and running in no time!’ can be tempting, but that isn’t helpful for end users who are relying on your app to work right now. Be more specific, yet friendly.
Mat Patterson from HelpScout enforces the language of support can save many hours of miscommunication with your customers during an outage.
He offers the following comparisons:
Poorly written error message:
“Servers not available”
Try instead:
“Some customers are seeing intermittent error messages throughout their account. We’re aware of the issue and are working on it urgently. Incoming messages are being safely received and stored, but won’t show in your account until the problem is resolved. We recommend not sending any outgoing messages at the moment.
We’re really sorry to be holding you up today! Please know our engineering and operations teams are working hard to get everything up and running and we will update you right here in 15 minutes with the latest information.”
See the difference? Your customers will too!
Keep a regularly updated status page
Consider keeping your status page on separate infrastructure, just in case it’s a site-wide server issue. The advantages are that you can keep customers updated on server health, recent downtime, and what you are doing to remedy these problems.
Link to the status page on your contact form, documentation, or on a separate support Twitter account if you have one.
Here’s an example of Raygun’s server health page:
Note that this contains the following:
- Timestamp of the data refresh
- System status is broken down by system monitor
- A daily incident timeline
Make the maintenance page friendly
Your maintenance page will do much the heavy lifting and will help keep support requests to a minimum so that you can focus on the most critical support requests. (For more on triaging support requests and errors, read this article.)
Keep them both useful and straightforward:
Keep your community informed
Social media: take your problems to Twitter
Honesty is always the best policy and if you are having problems, let your customers know about it early. Often companies break their traditional brand personality and show a lighter side – think Twitter’s Fail Whale, which has even inspired t-shirts.
Consider getting on the phone
A scary concept, but even if you don’t explicitly offer phone support, you may have enterprise level customers who need to know their data is safe right this second. A real conversation is a great opportunity to give standout support.
Would your competitors get on the phone? Probably not. You’ll stand out as the company that was willing to talk to their customers.
All fixed? Consider a debrief
No doubt your outage caused your customers some pain and inconvenience. A study by the Carey School of business has recently shown that apologizing can have a massively positive effect on customer support.
37% of customers are satisfied with service recovery when they are offered something with monetary value. But when a business adds an apology on top of the compensation, the satisfaction rate doubles to 74%.
A popular idea is for the CEO to add a quick video explaining the downtime, which also alleviates time spent on support – especially if resources are slim. Add the video to your blog with an explanation where everyone will be able to find it.
It’s all about your outage attitude
When you are a smaller team, technical support during outages is hard, as most of the people who need to be fixing the problem may end up in customer damage control. But have a good outage attitude. Outages do suck but use all problems are an opportunity to stand out from your competitors and raise the bar on support standards in your industry.
Now read:
Five tips for writing great software error messages
How to handle errors in large-scale software projects (with best practices and examples)
Software intelligence benefits – the real value to your team