Managing CEOs for Programmers
Every programmer knows there are two kinds of CEO – technical and non-technical. They have to be managed very differently. In either case, if the CEO isn’t managed properly, he or she can get in the way of doing really cool stuff and, without really cool stuff, work takes way too much time out of the day.
In many ways, the non-technical CEO is hard to manage. Let’s say he comes from sales. That’s really awful; it usually means that he goes around “selling” everything except what your product is good for. Any time a sale isn’t closed, it’s because of the features you haven’t got. If a sale is closed, of course, it’s because of his brilliance either on the golf course or in the skybox at Madison Square Garden. BTW (“by the way” if you need a translation but that means you’re not a programmer), only a CEO would pay more for the seats furthest away from the action.
Maybe the non-technical CEO comes from marketing. That means she’s “customer-driven”, whatever that means, maybe that she can’t drive herself. Marketing CEOs always know what features a product ought to have – whatever features the last person she spoke to told her he or she wanted. Sometimes ex-marketing CEOs even listen to support calls. They think that hearing all the complaints from dummies who don’t go to a tech forum for support and couldn’t write a macro if their life depended on it will tell them what ought to be changed in the next release. They don’t know that, for every person that complains about the way you implemented a particular feature, there are ten people who think it rocks – but, of course, those people aren’t calling support to say that. Don’t worry, you’ll hear from them after you change the feature to the way the customer-driven CEO says it should have been implemented. But she’ll have forgotten that she ever told you to make the change.
Having the non-technical CEO be an ex-CFO is simply too horrible to contemplate. You can’t use cost-benefit analysis to figure out whether new toys – I mean tools, of course – are needed. Especially if you think that C++ is a grade just a little below B--.
In some rare cases lawyers can become CEOs. The lawyer-CEO will usually start out by requiring that you sign something that says every idea you ever had have now or ever will have including without limitation or recourse or commas ideas any children of yours may have including derivative rights from such ideas and derivative rights which might reasonably be inferred from such ideas of either yourself or said issue or ideas of said issues or issues of said ideas shall without further compensation or assignment or risk or hassle become for all time the exclusive property of your current employer and if necessary reasonable forms of torture may be used at the sole discretion of said CEO to extract said ideas should you prove recalcitrant in providing all of the forgoing without liability of any kind to said employer assigns or successors. You will, if course, hold all of the said above harmless from any consequences of any said ideas and undertake at your own expense to defend any actions taken against them and to hold them harmless from any judgments which might be rendered against them for any infractions real or alleged of any kind regardless of cause for which they may be held liable.
The trick to managing non-technical CEOs is not to make them feel too stupid while you’re pointing out to them that their ideas aren’t very smart. One technique I learned from my wife (who is one of the few smart non-technical people I ever met) is to always say “good idea” and then attribute to them whatever you were going to do anyway.
Here’s some open source sample dialog that will help:
CEO: We need to incent every customer to buy an upgrade in the next twentyfour hours because we’re not gonna make our numbers for the quarter.
You: Great idea! I shoulda thought of it. Unfortunately because everyone’s not as smart as you, we’re gonna have to wait until next quarter to get the upgrade revenue but we’re gonna do a new version for people with fifteen-foot diagonal monitors that’s a must have. Everyone will upgrade and we can charge a premium. I need you to sign this PO for thirty-foot monitors for the development team to make sure we can get it out on time.
CEO: Well, it was just an idea…
You: Boss, it is a BFD. You’re a genius.
CEO: You sure they’ll pay a premium?
You: You think people with fifteen-foot monitors are cost sensitive? That’s the genius of YOUR idea.
Next post is on managing the technical CEO. That’s hard!
Since I’ve been both a CEO and a programmer, I’ve also blogged on CEOs managing programmers.
Part 1 of this series is a phrase book of programmer-speak.
Part 2 is the meaning of “done” and how to know when you’ll get there.
Part 3 is about features that kill projects.
Part 4 is about super debuggers.