In our series on how Fog Creek does customer service, we’ve looked at our email workflow and how we use snippets for better customer service. Another “feature” of our support team is that rather than taking tech calls as they come, we schedule them, and this post explores the why and how of that process.
Software Companies Have Layers
Our support team is a major part of the implementation layer that shields developers so that they only have to worry about writing code. When a customer calls in screaming about why-oh-why do you not have an importer yet for VisiCalc, it’s only been around for several decades, and if only you could write it for me this afternoon I could bring my development team into this century, and oh-by-the-way how do I use FogBugz scheduling when I have eighteen dependencies—when that phone call comes in, our developers don’t even know about it because our support team is protecting them from it.
But we also protect our support team. When a call comes in, our adroit office staff will answer with something like:
“Fog Creek Software, how can I help you?” …
“Do you have an existing case number?”…
“I don’t have a tech support rep available at the moment; can I schedule you for 3:30 this afternoon? If it’s an emergency, I can put you down for ASAP and someone will call you right back.”
This process works really well. While there might technically be a support rep “available” in the sense that he’s not on the phone, he’s not “available to provide the best quality of service.” Support engineers, like your developers (and anyone else doing highly technical work), work best when they’re not interrupted. If you patch the customer straight through to support, they have to stop working on pinning down a repro of that nasty email bug—which, by the way, your crack support engineer is working on to let your developers focus on shipping new features—and when they pick up the phone, their first thought is “how do I get off the phone so I can continue what I was working on.”
On the other hand, if you schedule a call, the support engineer can read the note in the case (e.g. “Customer says he can’t deactivate users”), collect himself, and give the customer his complete attention when he calls him back. This makes a world of difference in the emotional well-being of our support team as well as the level of service we are able to provide to customers.
How We Schedule Calls
When we’re ready to schedule the call, we use a simple scheduling form that creates a FogBugz case. The form is trivially simple with each time slot simply redirecting to FogBugz with a bunch of fields filled in (it works the same way as Bookmarklets).
The case goes into the Sales & Support Project (separate from Inbox), in the Tech Calls Area, gets assigned to the Up For Grabs users, with the Due Date set to the call time.
In the screenshot above, you’ll notice that the case is assigned to Derrick Miller, even though we originally assigned the case to Up for Grabs. This is because we have a simple FogBugz plugin that round-robins the calls assigned to Up for Grabs to the next available support rep.
Don’t Miss a Call
Once the tech call case is created, we want to make sure that the support rep assigned to the case doesn’t miss it. We have several safeguards in place to make sure tech calls don’t fall through the cracks:
- Change your FogBugz filter. Sort the cases for your support queue filter by Area first so that Tech Calls show up grouped at the top.
- Add email filters. Create a Gmail or Outlook filter that identifies Tech Calls and gives them a big fat green (or red) label.
- Set up a 42” TV in your support area that shows upcoming calls. This lets the entire team see the calls to make sure one doesn’t get missed.
- Other custom notifications, such as Growl for your desktop or Pushover for iPhone (this is trivially easy to set up with the FogBugz URLTrigger Plugin).
Why so many types of notifications? Since we’re not interrupting the support team when the actual call comes in, we want to make extra sure we see the call once it is scheduled. Some team members use lots of notifications. Personally, I just rely on my FogBugz filter and a Gmail filter that adds a “Tech Call” label to Tech Call case notifications.
Or Avoid the Phone Altogether (If Possible)
Another reason we schedule calls is so that we can contact the customer by email first to possibly resolve the case or gather additional information which will help us to prepare for the call. Granted, some things are inevitably best handled on the phone with a Fog Creek Copilot screen-sharing session, but you may be able to email the customer ahead of time, solve their problem, and avoid the need to get on the phone. Often this leads to a faster resolution for the customer and less interruption for the support engineer.
If I receive a call and recognize a known issue, I might respond with something like:
Thanks for calling Fog Creek!
I see we have a call scheduled for 2:00 PM EDT to discuss an issue you’re having with deactivating users in FogBugz. In preparation for the call, could you share additional details about the problem you are having?
Also, which version of FogBugz are you using? I know the latest version of FogBugz fixes a bug related to deactivating users, so you might try upgrading to see if that fixes it.
All the best,
Fog Creek Software
Very likely, if I’ve diagnosed the issue correctly, the customer will email back that upgrading fixed the problem. If not, we’ve hopefully collected some information from the customer that helps us prepare for the call and thus reach a quicker resolution.
It’s All About Better Service
Scheduling calls is an integral part of our efforts to provide remarkable customer service and works very well in supporting our highly technical products. Because our support engineers are protected from immediate interruptions when calls come in, they are in a much better position to serve the customer when they get on the phone. Our customers know that when they receive a call back, they will be speaking to a competent individual who can solve their problem.