Monday Consulting Questions: Getting Personal

I got a decent response to the first Consulting Q & A last Monday, so here we go with round 2.

Q. You are an overly-opinionated blowhard who writes things that are obvious.
A. That’s not a question, but OK. I AM highly opinionated. Whether or not I am a blowhard depends upon whether or not you agree with the aforementioned opinions. I’ve said on multiple occasions that I don’t write about anything we don’t – as a profession – know; I write about things we don’t – as a profession – do. It pains me to see the profession suffer because people can’t muster the discipline to do the things we know will make the profession better, and most of my writing is driven by that pain.

Q. Why haven’t you launched a product yet?
A. Well, it’s not for lack of desire. In truth, my original plan was to do consulting in order to get a revenue to pay for steering Cogeian Systems toward product development. But the reality is that the custom side of the business has grown so much, it’s all I can do to just manage the projects and keep everyone busy performing the work. I’m still learning to manage multiple projects at one time and I write code sometimes, although I’m trying to get away from that. It’s all been terribly disruptive to my original plan and although the revenue is excellent, at a certain point I’m simply going to have to put my foot down and accept less consulting revenue in order to free up the time and manpower to do a product. I guess the basic problem is that I just can’t turn down money.

Q. How do you handle maintenance contracts for custom work?
A. We don’t. In a software or web shop, projects tend to fall into two categories:

  1. Build something new.
  2. Fix something that is broken.

For projects of type 1, a lot of my colleagues suggest that I should set up a maintenance contract to ensure x amount of recurring revenue per month. The price of the contract varies; usually it amounts to 20% of the project cost, per year. But I don’t do this. I may be leaving money on the table, but it occurs to me that I only want to bill for work that my company does. So the official line is, Cogeian Systems performs maintenance on an hourly basis. That’s it; boring old time-and-materials billing.

For projects of type 2 – which we get a lot of because we specialize to some degree in fixing broken apps – the fundamental issues are more complicated because the code base ends up being a mishmash of old, under-performing code and newer, better-performing code. But ultimately, I decided to again stick with T&M billing. If it’s broken, we will fix it. If it is working, good for you, Mr. Client – I hope you keep it running long enough to earn a return on your investment. But I’m not going to charge you a monthly fee on the off chance that it’s going to break and you might need me. Just call when it breaks and we’ll fix it. Simple.