On Cafes and Customer Focus
April 24, 2022I’ve recently had two not-so-great experiences with a favored local cafe that have had me thinking about customer focus in Software Development. Both of these involved some form of delay followed by an explanation of why they couldn’t rectify the issue because (I’m paraphrasing here) “the system won’t allow it”.
I’m not going to name the cafe involved. Suffice it to say that it’s one I like a lot and have been a regular customer of since mid-pandemic. They have good sandwiches and lovely pastries. I like their specialty coffee. They’re well located to pick up a quick breakfast for my wife and me on the way to the playground on a weekend morning.
The first time, an online order failed to go through. My usual weekend move is to order online as we’re packing up the kiddo and the doggo to head out the door so we can swoop by and do a quick pickup. I’ve done this tens of times without issue. On this particular morning, I got an error message but was seemingly able to move past it. I saw the charge come in on Apple Pay, so I figured it must have worked.
As I showed up to pick up my online order, I was told that they didn’t have an order for Isaac. Was I sure I had ordered? Did I receive a confirmation email? Turns out I hadn’t, but I did have a charge on my credit card, so I wasn’t completely crazy. That was just a pending charge, they said confidently, and it will disappear because the order didn’t go through. OK fine, but I still don’t have my sandwich. Well, the only thing to do now is to get in line and order one. That line looks pretty long and I’ve already been waiting a while, can you help me out?
The second time, the cashier—who, I want to make clear, was incredibly nice and is not the target of this post—failed to charge me an extra I asked for on my sandwich. She came to tell me this after I’d been waiting 20 minutes with my kid crying in the car. Happens, I get it. Can you just add it on?
And here’s the intersection with building software: both times they tried to explain to me that their system could not allow them to make things right for me. We can’t just make you your sandwich, even though our ordering system broke on you, that’s not how the system works. We can’t just slather on some hot sauce. It’s not in the system.
How many times have I said something similar to my PMs or my customers? I can’t ship that feature for you, there’s no ticket for it. I can’t do that refactoring, that’s not how the service is architected. I can’t support that type of discount, my oh-so-elegant data model would have to be refactored.
“The system doesn’t support it” is never a satisfying answer for a customer. They don’t care if “the system” is well built to support the thing they’re asking for. They by and large don’t care how you solve their problem. They care much much more that you solve it!
“The customer should always be right”, I said to one of the employees of the coffee shop as I left without my sandwich that day. Or maybe I was saying it to myself.