We've all had to deal with customer service nightmares. One of my "favorite" stories is of an insurance claim I filed a while back. The adjuster was a bit odd; I never met him in person, but whenever I spoke with him over the phone I felt as though I was being interrogated by a Smith. "Missster... Middleton, yes. How... are... You... today. We sseeem to have an... iss-ue." The issue was finally resolved, one year after I filed my claim and not to my satisfaction. The adjuster stalled; he never answered his phone, even if I called him 30 seconds after he tried to call me; and hethrew up every roadblock imaginable (and a few that are still mysterious). The claims officer I worked with at the insurance company was apologetic, with the refrain, "I understand. It's a big company."
While this was going on, I had a lot of time to think about the meaning of the excuse, "it's a big company." If a company is too big to provide the product that its customers have paid for, then doesn't this make it "too big a company," in the sense that it's reached a
diseconomy of scale? It seems to me that in that apology lurks an admission that the company is inefficient, that people shouldn't buy its products, and that its shareholders should sell. I won't name the company, but it seems that my armchair analysis was correct, because they have since pulled out of some sectors of the California insurance market.
I'm not writing to complain about poor customer service and corporate inefficiency, however. I'm writing to praise what I think is the best customer service experience I've had — ever — with a software company. The company is
OmniGroup, and the product is
OmniPlan.
My previous post discusses the company and mentions the product. OmniPlan is project planning done correctly: it doesn't look and feel like a tarted-up spreadsheet. The interface is clean and extremely easy to understand. Error messages are concise and helpful, often providing suggestions which can be acted upon simply by clicking a link (contrast this with Project's tendency to render paragraphs of text in modal dialogs, making any good suggestions). While it can't yet form "links" between projects like Microsoft Project can (I'd love to be able to have a master rollup project and resource pool, and multiple detail projects owned by different editors linked into the master), for students and for most professionals organizations, it's perfect.
Again, though, I'm here to talk about excellent customer service, not excellent applications. A new version of OmniPlan, one which supports OSX 10.5 (Leopard) is in beta; I've been using OmniPlan 1.5.2b2 for some time now. It works extremely well, and has some nice new features such as filtering which I find very handy. However, once I built up a complex project with around 250-300 tasks, many with multiple resources assigned at various allocations and with inter-ask and inter-task-group dependencies, I noticed a slowdown and some reproducible crashes.
A word about being a beta tester (or being a software user of any kind). Software has bugs. I don't care how well crafted it is, or on what operating system it runs; if it's much more complicated than "
Hello World," there are going to be issues. Good engineers and good companies acknowledge this and make a good effort to minimize bugs and address them promptly. This is actually what "beta" software is all about; once software becomes mature enough to use, it's actually better in the long run to release it into a hostile environment so that bugs which don't show up in testing can be caught and fixed. If one chooses to run beta software, one enters into a sort of agreement with the software developer. Part of that agreement is to report issues as they arise.
This means that issues bugs or crashes should be reported, to the extent possible, along with the steps to reproduce the problem. Developers need to know about the events that led up to a problem, or the context in which it happened, and only the beta user can provide these details.
It might not seem like this is conducive to being lazy. However, I'm concerned with long-term laziness; call it "Sigma-Laziness" or "Net Laziness" if you like. I like software that makes my life better, not just software that makes each five minute stint of my life better.
OmniPlan, like all of
Omni's products, makes my life better. I was therefore happy to drill down into a problem I spotted over the weekend which caused a crash with the beta I was using, and to provide as much detail as I could in the seemingly anonymous automated crash report and feedback system that's built in to
Omni apps.
Within a day, an Omni "Support Ninja" contacted me, and asked me for more details. Some I was able to provide, some I had lost. In the end, it was confirmed that the details I provided made it possible for the developers to reproduce the problem I found, and ensure that it's fixed in the third beta, expected shortly. All of this was delivered with very rapid turnaround, and the Support Ninjas seemed genuinely concerned, thankful, patient and happy to work with me to eek out the details. While it took some extra time on Sunday to articulate the problems I was having, in the long run, issues are being fixed and my life will be better.
Meanwhile,
Omni has shown itself an example of a company that can be successful, produce great products, and stand behind them — no excuses. I don't know much about their internal organization, but if I were to guess I'd say that they have a lean organization, a culture of ownership and accountability, and a great hiring process. They also seem to really like what they do. They may be right at their particular economy of scale. I hope they stay that way, and that other companies take notice.
And no, I'm not on the
Omni payroll. I just like to give credit where credit is due.