Make Tech Support Easier for Developers With These 3 Tips
The support ticket system can give support-engineers a headache, as they get flooded with requests that don't always make sense. Learn how to streamline this process.
Join the DZone community and get the full member experience.Join For Free
Providing excellent customer support is an important cog in the software industry. So why do teams make it so hard for developers and tech support to respond in a timely and helpful way? Support tickets don’t get resolved and customers are left hanging.
It’s time to make tech support easier for developers.
Response times and overall customer satisfaction are easy to improve. Take a look at your tech support process every few months – in particular how you triage, test, and automate your support. A smoother process helps to open the flow of communication between developers and customers, leaving both parties happy and stress-free.
We’ve put together a few tips on improving how you can triage support, test, and automate minor tasks.
1. Improving Your Triage Process
Adding a filter to your support queries can prevent a deluge of small support queries stressing out your team. As you know, most support tickets are not for errors and technical issues, they are usually billing or admin related.
Triage issues and assign them out to developers only when needed. This way, the appropriate issue will get assigned to the correct person. A smaller bug can be assigned out to a junior developer, and the more experienced team members get to work on important projects and major bug fixes. Junior developers will get the appropriate challenges they need to up-skill, without spending too much time in the weeds.
The customer is happy receiving excellent support, and the developer is happy feeling sufficiently challenged.
The level of support offered at each of your pricing tiers will, of course, depend on your internal process. You may have customers that get more priority over others, which may be indicated by your pricing tiers. Does the small team that pays $50 a month get the same support level as your custom enterprise plans? Well, there is no answer here – after all, first impressions count, and they may have uncovered a bug that is affecting thousands of other customers. These are all points to consider when triaging issues.
One tip is to use a decision matrix like the one below:
We feel the best way to triage support tickets arising from software errors is by how bad the problem is. We use Raygun to help do the heavy lifting here and automatically identify how many users are affected by a problem. If there is 1 error affecting 100 people, vs. 1 error affecting a thousand people, we will prioritize the fix to the highest number of people affected. Generally speaking though, we usually know about an issue before any support tickets arise, or if nobody reports it.
2. Test in the Appropriate Environments
Is everyone following the same debugging and fixing process in your team? If you work in a remote team, for example, it can be hard to get everyone following the same processes, leading to support tickets mounting and falling through the cracks. To stop that from happening, you can follow a ‘three environments’ rule for deploying any fixes.
For example, a great process could look like this:
- Local environment: testing in the local environment is important, as is creating appropriate unit testing. It can take two to three times longer to fix an error once an issue is into a production-like environment.
- Production-like environment: some companies miss this environment and use virtual machines for this step. However, it does not contain production like data or behavior.
- Deploy to prod and smoke test: It’s much easier to detect and diagnose any issues that happen for end users once you have already come through local and production-like environments.
(If it’s a smaller UI bug, you may not need to test in two pre-production environments. For major bugs, you should test in your local dev environment AND a production-like environment.)
3. Automate Your Processes Using Tools
Check your workflow for any tools that could help automate the process. Here at Raygun we usually see support issues one of two ways, via Intercom, or via our own crash and error reporting software.
When an error is found and presented on our Raygun Dashboard, all it takes is a quick analysis to see if it’s minor or major. A minor error could be caused by something as simple as the user not having the correct permissions from the integrated app. There are no errors coming from within our own software, so, therefore, the problem must lie at the customer’s end. This removes a big source of frustration and time wasting for tech support teams. No need to spend hours attempting to try and reproduce an error – only to realize it was minor.
For larger issues, senior developers should be on call at night and during the day during work hours. Large outages, like the recent AWS outage, can happen at any time. This is where your ChatOps software is a lifeline.
Use Slack (or your ChatOps tool of choice) as part of the tech support triage process. A channel dedicated to errors will tell you if something is down. An alerting software like Pagerduty will also automatically alert people on call of the error, and it’s location and severity. From here, the on-call developer can give a timeframe for a fix and recruit helpers if needed. This reduces the number of developers who look at issues, helping to save on developer costs.
Time for a Spring Cleaning?
Did you find any area that you can offer better tech support for your customers? Perhaps it’s bringing in new tools to help with a faster response time, or implementing a user-centric triage process. It’s all about improving efficiency. Your developers and customers will thank you for it!
Published at DZone with permission of Freyja Spaven, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.