Getting Technical with Customer Success

We’re the Customer Success team. We’re here to make the AeroFS user experience a breeze. We’re fast, because we are technical. We save valuable customer time because we have the know-how and the drive to tackle code ourselves.  We personally fix bugs and add features to make AeroFS better for users and administrators. When users have questions, we are happy to bury our heads in code to find answers quickly.

So when external systems inhibit our ability to quickly serve our own customers, we don’t just operate at status quo. We do what we can to make those systems work for us. Case in point: Zendesk.

There are many wonderful features of Zendesk that help us stay on top of communication with our client-base. Zendesk is great at that – tagging and ticketing client communication threads. But we also document all sorts of details, from specific hardware and operating systems our customers use to error messages and stack traces, so we can come back to them later when helping other users.

As a team, we really don’t like to chase answers to the same question twice. That’s why search is so important to us. But we’re also a technical team and find ourselves pushing the limits of Zendesk where other CSM teams do not. So we set out to make Zendesk search work better for us.

The Zendesk API and our November Hackathon presented us with the opportunity to solve our search woes once and for all. We knew that better search would help us help our customers faster, so we decided to unlock this information. We buckled down, and we did something not every customer success team would – we wrote some code.zendesk-elasticsearch

Search that Works for Us Works for You

Two days later, we had indexed our Zendesk tickets in Elasticsearch and we had developed a simple web interface for searching them.

Here’s how it worked:

    1. We stood up a single-node Elasticsearch instance to index tickets.
    2. We created the front-end interface for searching tickets and displaying search results using Ruby on Rails.
    3. We wrote several rake tasks that poll the The Zendesk Incremental Exports API for changes to tickets and post the changes to the Elasticsearch cluster.

The new system has a number of advantages over Zendesk’s search that help us provide support even faster:

      • Elasticsearch handles complicated search strings, like portions of stack traces or error without returning lots of false positives to sift through.elasticsearch_searchResults
      • The web interface we created provides a preview of the ticket within the search results, so it’s fast and easy to determine if you’re interested in a particular result.elasticsearch_ticketExample

Sharing is Caring

Since the Hackathon, we’ve been using and improving the system. We’ve refined the UI to make it better for us by highlighting matches within tickets and including the full contents of the tickets within search results. We’ve tweaked the Elasticsearch query and use a phrase prefix type query with lots of slop to get more relevant search results when searching for log file output or conversations with our customers.

Today, we are making our Hackathon project available on GitHub so that others can check it out. If you have the need for Elasticsearch in your own instance of Zendesk, feel free to make it your own.

–Jeff & the AeroFS Team