We’re at the stage now where customer experience can be greatly enhanced by IT. Well to be accurate, we’ve been on a continually improving trend for decades. These days we expect instant replies, live chats, automated self-service systems for pretty much every common interaction with businesses. The interactions are usually mapped out, automated and commoditised.

For example, how many of those customer interaction live chat systems are actually bots behind the scenes, at least for the early stages of data gathering from the customer, bringing a real person online only when necessary? Once the conversation pathways have been mapped out, there’s no need to have a person sit at the other end and paste out the same questions again and again. This is an assumption on my part, I haven’t actually seen the internals of call centre handling and live chat infrastructure - it just seems the sensible and economic thing to do with the technology available these days.

So it is that much more irritating when we as end users or customers hit a bug with these systems. It grates that much more as we are just used to so much better. Flawless user experience is that much more important as our expectations have increased over the years.

Case in point - I recently tried to cancel my gym membership (reasons aren’t important - it’s a different, non-IT rant :) ). I was already in a less than salutary mood with the company in question, so had less tolerance than usual for user experience hiccups. I sent the email requesting membership cancellation to the email address supplied in the membership FAQ of the gym. No problem there. I receive a ‘your email is important to us, please wait’ auto-response. OK so far, but here’s where it goes wrong.

First, there was no follow up for a full day. I have no knowledge of the internals of the business and how they set up their customer processing, but given the company is based in the UK, I would have expected the enquiry processing to be operating in the UK timezone (regardless of where it was actually based - that part is irrelevant). No reply for a full day, before I sent a follow up email. Either they are processing a lot of cancellations (the autoreply email mentioned cancellation early in the text, so that might even be plausible), or their customer processing workflow is under-resourced or very inefficient. Either way, not good.

The autoreply email also recommended I log into my online membership account and cancel my membership there. It even provided helpful instructions on where to navigate to find the ‘Cancel’ button. Excellent, I think. I had actually looked for a similar option prior to sending the email, as again I would have expected that interaction to have been added to the online account user experience long ago - it would just have made sense. I couldn’t find it though - maybe I missed something.

I follow the navigation instructions to the memberships page to get to the ‘Cancel’ button. Nope - it’s not there. Ah - must be requiring JavaScript from a site I haven’t white-listed (I block JavaScript by default - to not do so is insane in my opinion). Nope, all JavaScript is enabled on that page - there isn’t even any from the tracking sites I blacklist by default. The page should be fully functional.

Next step for an IT geek, inspect the code backing the page in the browser. It’s dynamically rendered, but where I would have expected the ‘Cancel’ button to be there is an empty table cell. Well, not quite empty - it has a bunch of commented out code which strongly implied that there should have been membership actions available there.

End result, I have a nonfunctional membership page, and an email which gives incorrect instructions. Both of these are a user experience fail, and result in an even more irritated customer than before the interaction.

How to avoid this sort of problem? There are a couple of simple steps relevant to this particular instance:

  • For every user story, in this case online membership cancellation, have automated regression tests which run against all production deployment candidates. If someone pushes code which breaks that option, it will be caught. If that particular option could possibly be influenced by membership categories or account data, then cover those cases in the test. Simple!

  • For boilerplate text, in this case the instructions in the autoreply email, but more generally any text or user documentation describing the online system, ensure it matches the changes to that system. Every functional change to the system should also have a review of the surrounding documentation to see if updates need to be made. The dissonance between description and fact grates… a lot.

These are IT and product actions that directly effect customers of a business, even if the business itself isn’t an IT entity. They’re simple steps, but ensure that your customers remain at worst neutral about their user experience, rather than irritated enough to want to talk about it with their friends, or maybe write about it. That can’t be good for marketing and brand reputation.

In the end I bypassed the central membership processing, and emailed a human instead - it got sorted in ten minutes. Happy (or at least acceptable) outcome for me, but with lasting memories of poor user experience with that company. That’s a fail for their IT department (or external suppliers).

Shared at https://www.linkedin.com/pulse/user-experience-when-goes-wrong-donal-stewart