I am giving a talk titled “Building A Telecom Business Without Selling Your Soul” Tuesday morning at ETel. The talk is about how to bootstrap a business without taking on millions of dollars of other people’s money (I funded all three of my businesses with less than $250,000 in investment). A key theme in my talk is about how telecom is full of niche opportunities which are themselves decent sized businesses. Corporate IVR, which we are all victimized by, is one example of how there are still plenty of opportunities in telecom…

One of the things I discuss in my talk is an IVR system that “reads your mind”. Call any corporation today and you’ll find that the phone system is actually quite stupid. It treats all calls the same, and usually asks far too many questions. Some of the most sophisticated voice recognitions systems are actually the worst offenders. Instead of helping you, these systems remind you that you are talking to a machine.

My reference design for corporate phone systems is based on invisibility. When a customer calls, they want to talk to a person, period. If they wanted self-service, they would go to your website. With very few exceptions, customers do not want to talk to a machine, and so the machine’s only purpose should be to route the call to a human as quickly as possible (preferably invisibly).

What I find interesting about these systems is that their designers have vast amounts of information at their disposal, and yet they do not use it. I’ll use United Airlines as an example. I like United Airlines, and am generally a happy customer. Their phone system is one sore point, and it would be easy for them to improve it a great deal. It would make customers happier, and would save their butts when they have a meltdown such as this winter’s blizzard that shut down Denver International Airport, and most of their flights.

When I call United today, I always go through the same script. It asks me what I am calling for (reservations, mileage plus desk, etc), then for my flier number, then if I am traveling domestic or international. The phone system doesn’t know anything about my recent activity elsewhere in their system. If it did, it would expedite things greatly. Here are a few examples…

In Normal Circumstances

I have a reservation in the system for a flight from SFO to Brussels. I call in a couple of days before the flight. The script goes something like this.

I call from my mobile phone, which is linked to my profile as a contact point
“Thank you for calling United Mr McConnell. Are you calling about your flight from SFO to Brussels on March 1st?
Yes
“Your upgrade request is still waitlisted, and you are in economy plus seat 10A. Is there anything else I can help you with?”
Yes
“Let me get a reservation agent for you…”

The goal with a system like this is to use other sources of information to determine what the caller is most likely to be calling about. In the case of an airline, it’s probably going to be a recent reservation, lost bag report, upgrade request, etc. By leveraging this information, you can accomplish two things: 1) expedite a call by reducing the number of menus a person must go through, 2) communicate to the caller that you know them and are personalizing the system around them. The caller may ultimately hit 0 for an operator, but the caller will be less frustrated.

When Disconnected

Callers often dial in via mobile phone. It’s pretty common to be disconnected, which can be immensely frustrating if you have to wait a long time to get through. In this case, I am disconnected while talking to an agent. I call back and hear…

“Welcome to United Mr McConnell. You just called us a few minutes ago, would you like to talk to the agent you just spoke with?”
“Yes”
“Please wait a moment, we’ll transfer you to the agent you just spoke with. If this representative is busy, you’ll be transferred to someone in the same department…”
I am transferred to the agent I just spoke with and resume where I left off

So if I was in the middle of talking to an agent in the lost luggage department, when I call back, the system tries to reconnect me with that agent or at least sends me to the correct call center queue so I don’t have to start the whole process over again.

In Exceptional Circumstances

In most businesses it is inevitable that you are going to have bad days where callers overwhelm you. Airlines are at the mercy of the weather, and when the shit hits the fan, nothing is more frustrating than being stuck on hold for hours. United Airlines does a pretty good job of notifying customers of weather delays, automatically reassigning people to new flights, etc, but they only have so many people to answer the phone.

Here again is an example of how a smart IVR system could improve customer service, and in crunch times, make life easier for both the caller and the poor person who is talking to upset customers all day…

“Thank you for calling United Mr McConnell. We are experiencing severe weather delays. Are you calling about flight 260 from Denver to Boston?”
“Yes”
“Flight 260 has been canceled due to weather. You are currently waitlisted on Flight 294, due to leave at 230pm from Gate 34. Would you like us to text you at this phone number with updates?”
“Yes”
“OK, we will text you with updates about Flight 294. You can go to the gate or go to the Red Carpet Club. Thank you for flying United. We apologize for the delay. Is there anything else I can help you with?”
“No”

In this example, I’d get the information I need very quickly, and probably without the need for operator intervention. I call in, find out that I am waitlisted on another flight, and I am done. No need to sit on hold for eternity to have a live operator tell me the same thing.

Building A Smart IVR System With Web Services

This type of system would have been impossible to build several years ago, mainly because of the difficulty of getting one system to talk to another without all sorts of complex middleware. Now, with basic web services we can accomplish this pretty easily.

Our hypothetical airline IVR system would talk to a set of private webservices that allow it to find out what transactions a caller has been involved in recently (e.g. does he have an upcoming flight, is he in transit now, has he requested an upgrade, etc), and to see some reservation information (e.g. flight and seat assignments). Once these web services are built, something a company’s web development team would be able to do, the IVR system does not need to know anything about the internal details of how the rest of the systems function.

The IVR system queries the web service with a few bits of information (caller phone number, number dialed, etc). The web service replies with an XML recordset containing what it knows about that caller’s current activity (e.g. currently in flight or not, upcoming flights, customer service requests or prior contacts). The IVR system can then use this information to expedite a call.

Thousands of Niche Opportunities

This is an example of why telecom software development is not a bad way to make a living. Think of all of the thousands of bad phone systems that are still out there. It is actually very rare to encounter a good system. I don’t think that these companies intentionally design their phone systems to torture customers, they just don’t know that it’s possible to do much better.

From an entrepreneur’s perspective, this is a great opportunity. Not only is there demonstrable pain, there is also no shortage of companies that will pay to solve this problem. Companies know that telephone customer service is often the only thing that customers see. The quality of telephone interaction can have a big impact on the company’s brand.

This is also a good opportunity for entrepreneurs because this is not a winner takes all market. These projects are, by definition, custom projects. There’s no way to create an off the shelf solution since every company has different customer interactions and different systens. There’s no way for one company to dominate the business of building these solutions, and so a small team that’s adept at building them can thrive. It’s quite a difference from the web services industry, where everyone lives in fear that their product or widget will be made redundant overnight by Google.

I’ll be talking more about this Tuesday morning, both about my experiences as an entrepreneur, and about how to spot and exploit niche opportunities like this.