Writing

Software, technology, sysadmin war stories, and more. Feed
Saturday, February 4, 2012

People make poor interfaces between computer systems

There's something I've seen too many times in the world of technical support. It's where a company decides to start selling a new product without actually integrating it into its existing systems. Instead, they decide to use their existing humans as the "API" between what they have now and what they have added. It's a mess.

Here's how it starts. First, let's say your company has its own home-grown system which keeps track of customers, their devices, levels of service, and support issues -- tickets and phone calls. Everything happens in there for a while. Your support people know how to use it, and your internal programmers build stuff on top of it.

Then, one day, the product people decide to add a FooBar SSL product. They start advertising it and send out a few blurbs for the internal support people. Soon, customers are asking about it, and the support people have to dig around in their e-mails to make sense of this stuff. This makes them look stupid in the eyes of the customers.

Meanwhile, Product doesn't care, since they added a new product before the end of quarter and thus made their goals. They're off in Vegas getting hammered.

Back at the ranch, support folks determine they have to log into the FooBar SSL vendor's systems to transmit the certificate signing request by hand. Then they have to personally subscribe to an internal mailing list where the FooBar systems will send an update when it's done.

Several days pass while the certificate request is verified and then signed. Then a mail goes out. That original tech then has to check their mail, find the notice, then log into the FooBar system again to retrieve the new certificate. With this in hand, they then get to paste it into the company's own ticketing system and drop it onto the customer's server.

Once that's done, they can mark the certificate as "installed" in the company ticketing/provisioning system. This does two important things. First, it sends it to billing so the customer will be charged. Second, it starts a timer, so a reminder will go out about 45 days before the certificate is due to expire so that a renewal may be processed in time.

Guess what happens if the tech never sets that certificate to "online/complete". If you said "they never bill for it and thus never make any money and also never remind the customer a year later", you win!

On top of all of this, the Product monkeys think that it's acceptable to make humans be the interface between two provisioning systems. All they care about is getting their goal cleared, without any regard for the avalanche of disaster which will follow when they push that boulder down the hill.

Their masters also just see money coming in and don't care about their methods. The fact that support people are screaming about having to do pointless error-prone monkey work is incidental. After all, if they're so smart, then why are they answering phones and working tickets?

If you've ever purchased a product from company A which actually comes from company B and have noticed a certain amount of insanity during the installation or billing process, this might be why.

Oh, and this assumes everything works. If your product or service from that secondary company ever needs tech support, look out.