Earlier this year, Y Combinator partner and Wufoo founder Kevin Hale came to speak with 37signals about how to design software users love. Here’s the talk he gave at UserConf 2012, that inspired our support team to invite him to our company-wide meetup:
Kevin is big on making everyone at the company do support, and how that informs what he calls “support-driven development.” When everyone has to answer customer emails, they’re more invested in improving the product for the people who pay for and use it.
We’d considered a “5% support” model before, wherein everyone at 37signals would answer tickets one day a month. But it wasn’t primarily because we wanted everybody to get touchy-feely with customers; it was because we were drowning in tickets. We ultimately tackled that problem in other ways — by expanding business hours, hiring a few new people and creating a comprehensive help site. “Everyone on Support” no longer seemed imperative.
We were missing the main point, though. Putting designers and programmers and everyone else in direct contact with customers isn’t about putting out fires; it’s about fire safety. It’s about having the kinds of conversations that lead to better products in the first place.
The idea is hardly novel; plenty of successful companies (Amazon, Olark, Zappos) train every employee to work one-on one with customers. Paul English, CEO of Kayak, told Inc. Magazine:
The engineers and I handle customer support. When I tell people that, they look at me like I’m smoking crack. They say, “Why would you pay an engineer $150,000 to answer phones when you could pay someone in Arizona $8 an hour?” If you make the engineers answer e-mails and phone calls from the customers, the second or third time they get the same question, they’ll actually stop what they’re doing and fix the code. Then we don’t have those questions anymore.
But let’s face it: Few people are going to jump at the chance to answer tickets if they don’t have to. (“I don’t know how you guys do this every day” is a common refrain among developers who jump in on support.) Still, no one denies it’s good for them, or for the company. Ultimately, leadership has to believe it’s valuable, and be willing to get their own hands dirty too.
Fortunately, that’s the case here — after all, Jason and David used to answer all those emails themselves, so it was familiar territory. Shortly after Kevin’s talk, Jason asked everyone (via Know Your Company) “Is there anywhere we’ve been all talk and no action?”
The earful he received from the support team was what it took to finally get “Everyone on Support” implemented. Ann hopped on the case and assigned everyone in the company a “buddy” on the support team, someone they could go to with questions and who could proofread their replies if necessary.
We’ve been at it about eight months now. We still have some kinks to iron out — sometimes we’re fully staffed, for example, so the “EOS” person doesn’t have a lot to do — but for the most part, we’re pretty tickled with the results. A few discoveries we’ve made so far:
1. It’s an incredibly useful training tool. The fastest way to familiarize a new hire with our products is to have them answer questions from customers. Nathan, who joined us in July, says that he absolutely learns something new with every EOS shift. “As a new employee, that was vital to helping me understand what we’re doing and how we’re doing it. Seeing how some of our jobs get stuck in the queues (avatar uploads, project exports, daily mailers, etc.) really helped tie some of the things I see in Ops to what our customers are doing.”
2. Long-standing problems get fixed. It’s not uncommon for a designer to improve the way something is worded on our website during their EOS shift, or for a programmer to spend some time squashing a bug based on an interaction with a customer. Especially when we have sufficient coverage for the day anyway, that’s been a fantastic use of the EOS shift person’s time.
3. The workflow process has applications outside support. “My ‘real’ job is so scattered,” says Andrea, our office manager. “I’m usually working on 2-3 issues at one time. When I work EOS, I try to focus on one thing at a time, resolve. Focus -> resolve. Focus -> resolve. Applying that mentality to my real job helps me feel less scattered.”
4. It reminds us why we’re all here in the first place. Our customers are the reason we exist as a company — the reason we get to do the work we love and take home a paycheck for it. That can be easy to forget if you never interact with them. “Software engineers and designers are often divorced from the consequences of their actions,” Kevin says. Not so if everyone has a stake in making sure the product is a pleasure to use. “Ops can rapidly get detached from the customer, because all we’re doing is keeping the lights on and helping set up new apps,” Nathan adds. “EOS keeps me reminded of why we’re doing that, and how our customers use our products.”
Does everyone at your company have a chance to interact with customers? If so, tell us more about it in the comments.
Emily Tate
on 14 Nov 13My team discovered the value of this sort of on accident. We had a support issue several months ago where our inbox got a little out of control and our support team couldn’t answer in the timeframe we try to maintain. The whole team jumped in to help clear out the backlog, and as a product manager I quickly saw some recurring themes. One in particular was easy to fix with a simple wording change on the website. We fixed it the next week in development, and saw a visible drop in our email volumes from this one fix.
It’s one thing to hear your support team say “We get a lot of questions about X.” It’s another to really see what that means when you have to answer the emails yourself. It was very eye-opening. We should probably be doing this more intentionally and more often. Great article.
Pierre Chapuis
on 14 Nov 13I work at Moodstocks (https://moodstocks.com/), and support is everybody’s responsibility here. It certainly helps us plan and design better features. It gives us a real sense of what problems our users have, what they do with our products, what they would like to do but cannot. We label support tickets by problem type and use that as a data point when deciding which features we should prioritize next.
Actually, we recently released an entirely new product (https://winch.io/) because we found out several of our customers needed it.
We do not use it as a training tool. In fact, really fresh hires do not reply to support requests at all, because we prefer to avoid blunders when communicating with clients. But it does help people learn more about the things that are not their specialty later on.
My only (personal, not the company’s view) issue with that system is the software we are using. We work with Desk.com, because we need its deep integration with SalesForce, but I am not a fan of the UI and it lacks some features that would really help with that use case, for instance the ability to attribute a case to several agents. So I am curious what software other companies that made this choice are using.
David Andersen
on 14 Nov 13The first software company I worked for put new consultant hires in support for the first 30 days. It was excellent for getting to know the product and challenges. I only wish the engineers had been there too.
A certain large database company should follow this practice; they might find they start creating products that people actually enjoy using vs. tolerating (barely).
Emil
on 14 Nov 13Wufoo support before acquisition
Hi there, Thank you very much for the correction. I’ll change this…. If you need anything else, please let us know.
Wufoo support after acquisition
If this issue is not resolved to your satisfaction, you may reopen it within the next 7 days. Thank you for allowing us to be of service to you
Hi there, sorry for the inconvenience…
(including a really huge ugly HTML table with unnecessary information about reference numbers, created, updated, category, status, spam filter information etc)
@Emil
on 15 Nov 13Yea, I agree! I’ve been very disappointed with how Wufoo has changed since the acquisition. It feels far MORE corporate and far LESS fun.
Daniel Rose
on 15 Nov 13I’ll take a somewhat contrarian position. In the company where I work, there is an unofficial “everyone on support”, due to (a) many customers knowing the phone numbers of key developers and (b) our support department often forwarding calls directly to the developers. And I have to say that this is very problematic. Two reasons:
1. “If you make the engineers answer e-mails and phone calls from the customers, the second or third time they get the same question, they’ll actually stop what they’re doing and fix the code.”
Sounds great. In practice, what happens is that this doesn’t work, since while trying to fix the code, the phone rings. And five minutes later it rings again. And two minutes later it rings again… You get the idea.
2. Many of the problems which cause customers to call are something which waste the time of the highly-paid engineers. Understanding what they are trying to and telling them they are doing it wrong or that it makes no sense takes time. And these problems aren’t the kind which you could put in a KB. Up to 80% of the calls are of this quality (and our software costs up to €50000 per seat, depending on the chosen options). Some examples: “Sometimes I accidentally click on function “paste special” instead of function “paste” in the toolbar. Couldn’t you add a popup asking if I wanted to run paste when clicking on paste special?” “The MRU list contains the most-recently-used files. If the file isn’t there anymore when clicking on it, a popup notifies me of this and asks if I want to remove it from the MRU list. Couldn’t you automatically remove all the missing files from the MRU list on startup?”
Joel L
on 16 Nov 13@Daniel: I get your main point, but your situation seems to be rather different.
Things seem to be really dysfunctional for you because a) customers bypass (official) support and interrupt developers at random times and b) support department doesn’t want or know how to handle many questions, so they interrupt developers at random.
The “Everyone on Support” method is supposed to be planned, thought through, and knowingly implemented — but you’re saying it wouldn’t work based on your “Everybody randomly calls developers” method not working…
TC
on 17 Nov 13@Daniel, you transfer those calls that are unnecessary for you to take to someone else, if they initiate to you.
Daniel Rose
on 20 Nov 13@Joel: I wasn’t trying to say it doesn’t work. I think (when done properly) it is a good idea. Rather, I agree with your point “The ‘Everyone on Support’ method is supposed to be planned, thought through, and knowingly implemented.” But if this isn’t the case, then it can be worse than before.
This discussion is closed.