Assessing and being held responsible for the cost of bad decisions
I was recently working on a software project where the client would consult one organisation then that organisation would consult through to my organisation and eventually to me. Unfortunately, the organisation with direct contact to the client does not have very much skill in understanding computer programming problems, the notion of software reusability and decomposition and generally advising the client in such a way to ensure that their interests and expectations are met. This is unfortunate, but also incredibly common (dare I say it, so-called “enterprise” programmers).
A consequence of this debacle is that the software project is highly unlikely to meet the client’s expectation at all or in a timely fashion. Furthermore, I am likely to be asked to accept responsibility for this failure. This is despite my insistence that “using Scala and functional programming is not a panacea, especially when foolish demands are made of me” and various other protests of varying nature.
I used to have to deal with this kind of ineptitude when I was at IBM and I had some very rigorous methods for eschewing the responsibility for poor decisions by those who (I grit my teeth, but it must be said) are incompetent-but-unaware-of-it, while still achieving what was required of me. Such opaqueness does not exist in this case and I’d prefer to produce a useful and timely solution for the client with skilled consulting and the advanced programming techniques that are available.
But I can’t and I’ll be paying the price in the end.
How do others manage this scenario?
March 30th, 2009 at 1:10 pm
If your project is failing you’re going to suffer a loss of face, it’s unavoidable.
When you say “accept responsibility for this failure” do you mean there is not going to be a post morteim examination to determine what could have been done better?
I’m relatively inexperienced so I haven’t had to be the ‘head guy’ on a failed project yet, but if I was head guy on a project that failed, regardless of who’s fault it was, I’d want to figure out if there’s any way that it could have been made a success.
Given your above statements that the intermediary was incapable of making correct decisions (or enough of them) then was it possible / will it be possible in future to have someone else make the decisions?
Is it possible to have a successful project while ignoring their decisions?
If the answer to those two questions is no, then it would imply that it’s simply not possible for a project undertaken under those circumstances to be successful, in which case everyone who took part is equally responsible in my opinion, but more importantly, you’ve learned something and can hopefully avoid entering into such doomed propositions in the future.
March 30th, 2009 at 1:17 pm
Hi Tony, I always enjoy all your comments on a wide range of matters. I can’t answer this question but I’m interested in learning about consulting since I might try to do a bit (in the simpler realm of jQuery-JSON-AppEngine development). I used to work in a research organization (though by the time I’d joined they’d changed the spelling to organisation). We had various groups with useful skills and we tried to raise money on the side by consulting. Our clients would look at our research groups and almost invariably say: “Artificial Intelligence: that’s what we need”. They assumed that this would be able to solve their problem, even though they couldn’t describe what their problem was…
March 30th, 2009 at 3:14 pm
Hi Tony,
those cases are really unfortunate. I have been in such a situation a couple of times and in the end the only thing helped was a) good documentation on the course of the project (and who made which decisions at which point) and b) to escalate the problems with bad desisions early to the project management (and document that).
If you’re the last in a chain it’s always difficult to prove that you knew the problems all the time and you just tried to comply. Better act early and risk trouble during the project than taking the full blow in the end.
Best regards, — Jan.
March 30th, 2009 at 7:28 pm
Warn early and warn often, in writing.
That way, When you are held accountable, you can point out exactly when you requested more information/clarification/had questions, when you reminded them of that, when you pointed out an answer was insufficient, when you argued against certain decisions, etc. If you need to take the job, either because your boss says so or because you need the money, that is the only way to document the process. An extremely positive side effect is that you stay in constant communication with the parties involved and they see what you are doing and why. They can never feign ignorance that involved company X was being uncooperative, that client-representative Y didn’t provide clear answers, etc. Communication takes time, but it is well worth it, even if you are not going to need the records to be able to point out what went wrong.
I’ve seen a former colleague of mine, that has gone solo, use this approach to great effect.