JJ Rosen | Special to The Tennessean
Well, Super Bowl Sunday wasn’t much fun for my wife.
It wasn’t because her team lost (she was neutral this year) or because she ate too many potato chips during the game.
Earlier in the week, she got a fraud alert from her credit card company. It was for a random charge of $3.56 from a strange website she’d never heard of before. It was immediately caught and credited back. And it only took a few minutes on the phone before a replacement card was on the way.
All was good, or so she thought.
She’s a big fan of the Apple Pay digital wallet. With her iPhone and Apple Watch she pays for everything from coffee to subway rides with a simple swipe of her hand. It’s one of those small conveniences in life that once you start using it’s hard to go back.
It was 1 p.m. on Super Bowl Sunday when she tried to add her new credit card to Apple Pay (without a credit card, Apple Pay doesn’t work.) When I left to run some errands before the big game everything seemed fine. But when I returned two hours or later, I found my usually mild-mannered wife pacing the kitchen with a hint of irritation in her voice. I knew something was off.
She had been stuck in a classic case of “circular dependency” − a challenge that in my day job as a software developer I know all too well.
In software development, a circular dependency occurs when two systems depend on each other to function properly. Ultimately, it can create an “infinite loop” that will cause an application to hang. It’s not fun in the software development world, and it’s even worse in real life.
Apparently, my poor wife had been caught in an infinite loop between Apple and her credit card company. Apple said that the issue was with the credit card company and the credit card company claimed that the issue was with Apple, and she was stuck in the middle.
By the time I walked in the door, she had talked to Apple four times, and she’d been transferred to her eighth service rep with our credit card vendor, each time having to re-explain the issue. Between getting caught in multiple phone trees and being transferred multiple times to different departments, she was polite as always, but I could tell she was at her wit’s end.
Dependencies between systems, people, and companies are common. Small companies may have a heavy dependency on a single employee. Large companies may depend on a single supply chain vendor. And most every organization has a dependency on their technology platforms to keep their businesses going.
And in my wife’s case, she was dependent on two companies that had a circular dependency on each other to resolve her issue − everyone was stuck.
To a large extent, dependencies in business are unavoidable. No company operates in a self-contained bubble.
But constantly and proactively managing dependencies is often what separates a good company from a great one.
Great companies mitigate their dependence on single points of failure. They have redundancy and backup systems in place, so they are never at the mercy of one vendor. They have processes and procedures documented so that if a key employee is out someone else can jump in and help. And they diversify their revenue sources so that no single lost customer can sink the entire ship.
My wife, of course, wasn’t dependent on Apple Pay to go about her daily life. Evidently my pointing that out wasn’t the best thing to say after her hours-long quest for a resolution. As she always does in the face of adversity – she stuck with it.
After a few more calls and transfers the issue was finally resolved right after kickoff, and just in time to use Apple Pay to buy our pizza for halftime.
JJ Rosen is the founder of Atiba, a Nashville custom software development firm and IT support company. VisitAtiba.com for more info.