Support is hard, really hard, and it’s not something that most people are naturally good at. In fact, I’d say a very, very small minority are even remotely good at it without a lot of practice. That number might even be zero. Being able to provide high quality tech support AND also being able to resolve issues for customers is a skill that takes a long time to obtain. I am to a point now that I believe I’m pretty good at tech support, both in terms of maintaining good customer relationships and actually being able to track down the problems and their causes, but this is something I’ve been practicing for several years now.
Providing top-notch support is not just about being good in dealing with customers, especially angry ones, or even being good at hunting down problems, whether they be in your own source code or the code someone else wrote. Top-notch support comes from balancing these two aspects and many more at the same time.
There are some that are amazing at customer relations. These people can deal with the happiest and the most vitriol customers with equal poise.
There are some that are amazing at troubleshooting. Give them a problem and they will solve it, or at least track down its source.
Unfortunately, when it comes to providing tech support for code-based products, you often need to have a high proficiency level with both, and that is where most support technicians come up short.
Let’s look at a few scenarios.
A customer buys your plugin and discovers there is a conflict with their current theme. Since your plugin was the latest thing they installed, they assume the fault is yours (regardless of where true fault lies, if there is any at all), and they open a ticket in your support system that looks like this:
I just bought this and it is completely broken. Nothing seems to work at all. I can’t believe I just spent $49 for this piece of junk.
First of all, my sympathy goes out to every single support technician that has had to deal with this kind of ticket. I can almost guarantee that if you sell plugins, or work for someone that does, you have seen a ticket like this.
How do you respond? Do you ignore them? Do you throw back an equally angry response, perhaps like this?
Obviously your theme is a piece of crap and you have no clue what you are talking about, our plugin works perfectly.
Hopefully you choose to respond with a bit more eloquence:
I’m sorry to hear that you are having trouble, but we are more than happy to help you work through all of issues you are experiencing. Typically this kind of problem comes from a simple conflict with your theme or another plugin. With just a little information from you, we should be able to diagnose the issue and track down the source of the problem.
Learning to hold back your gut reflex to lash out and to step back for a moment in order to compose yourself can take a lot of practice. I promise you, I have lost my fair share of customers due to not remembering to take a step back before answering.
Dealing with unhappy customers takes practice, lots of it, and learning to not let hurtful words cut you too deep takes even more practice. You absolutely must grow a thick skin if you want to work in product sales or support.
People say mean things, it is one of the absolute constants of this industry.
What about when a customer opens a ticket detailing a really complex problem, perhaps a bizarre conflict with another plugin. Imagine it is a conflict you have never heard of, can barely imagine, and have absolutely no clue whatsoever where to start.
To put it bluntly: what the fuck do you do here?!
How do you troubleshoot a problem that is so bizarre you cannot even think of a reasonable hint to what might be causing it?
That’s where practice comes in. Problems like this get easier in several different ways:
- Intimate knowledge of the platform you are supporting, whether that be your plugin or WordPress core
- Hours and hours of practice hunting down tough problems
Having an intimate knowledge of the system you are working with always helps, for obvious reasons, but sometimes it only gets you so far. Just because you know what function is getting fired and where doesn’t mean you know all of the possible ways other plugins or themes could interfere with the function.
Really tough trouble shooting simply comes down to practice, and that practices comes from doing your absolute best to work out a customer’s problem at 2 in the morning when you are running on 3 hours of sleep and your 7th cup of coffee.
I see a lot of people fail in support because they are given a tough problem and their response is simply: “I don’t know what to do with this.”
From personal experience I can tell you that no tough problem simply gets easier by ignoring them. You get good at solving challenging situations by jumping into them headfirst.
A true sign of a great support person is when they are given a really hard problem to solve and, instead of cringing and backing away, they dive in and start working their way backwards, line by line until they find the answer.
Remember, a possible answer is a thousand times better than no answer at all.
I have a small group of developers that assist me with support for Easy Digital Downloads. Some of them spend quite a few hours every single week working through tickets and some spend one, maybe two hours, but I try to do the same thing with all of them: intentionally assign them tickets that I know are over their head.
Why do I do this? It’s simple: if you want to become better at anything you must challenge yourself, so I challenge my support team by asking them to solve the problems they don’t know how to solve. Even if I know the answer to the ticket and could have it solved within a few minutes, I still prefer to assign it to one of my team and pay them for an hour or two of their time. Yes it costs me more to do that upfront (sometimes), but it also makes them better and better at providing tech support, which pays off in the long run.
The key to getting good at support is doing it and working really hard.
In the development world, there is a mantra that goes like this:
Just fucking ship it
The idea behind this is to simply work on getting something out the door and then working to improve it. If you never get your product out the door, it will never get tested, never get better, and will never make it into the customers hands.
Support is much the same way: you only get good at it by providing a lot of support. If you want to be good at support, you have to spend countless hours helping customers resolve problems.
There is no other answer. Period.