When a prospective customer calls us, they generally have one of two engagement models in mind: time and materials (T&M) or fixed price (FP).
Just to define the terms, T&M is a billing model where a professional services firm, such as Cardinal Peak, invoices their customer a set amount for every hour worked; plus expenses (“materials”) are passed through at the firm’s cost. We expend effort up front to work out a detailed, estimated schedule and budget for the project, and we work hard to meet it. But at the end of the day, the upfront estimate is precisely that — an estimate — and we do not provide a guarantee we can complete the project on the schedule and budget we supplied. (Our track record is pretty good, though: We wouldn’t have too many repeat customers if we missed our estimates often.)
T&M contrasts with the fixed-price billing model, where, as the name suggests, a services provider provides an upfront cost, and the customer makes payments as project milestones are reached. In the FP model, all the risk is on the services provider because the amount of money the customer is paying is set up front.
(There is a third model that occasionally comes up, where a customer wants to avoid paying the services firm up front altogether, and instead, the services firm is given some sort of participation in the sales of the product once it is in the marketplace. We call this a “royalty model,” and I will have more to say about it in a subsequent post.)
With the introduction out of the way, this post explains why Cardinal Peak strongly prefers T&M engagements to FP ones — and why savvy customers should, too.
First, we do understand why our customer has a desire to obtain a fixed-price bid. A fixed price allows the customer to bound its implementation cost up front. However, the customer achieves this benefit by pushing the entire implementation risk onto us.
The approach we must employ to mitigate this risk is:
- insist on highly detailed requirements documents up front;
- significantly design the system prior to making a bid in order to enable a reasonable estimate to be generated; and
- substantially mark up our best estimate to provide a buffer for the unanticipated, because “stuff” happens — and in addition, risk has a cost in all economic transactions, and if we are going to carry more risk, we are going to insist on additional compensation.
Unfortunately, rarely is a project so simple that the customer has developed a sufficiently detailed requirements document prior to approaching us. This leads us to the first big FP problem: Significant work needs to be done, both refining project requirements and developing potential architectures before we can generate anything close to a reasonable estimate. And the amount of work needed is generally so much that we need to charge for it because real engineering is occurring during this phase.
Of course a well-managed T&M project still requires a schedule and cost estimate, but in this case such upfront work is no problem. The customer simply engages Cardinal Peak for a Phase I scoping effort, which is usually relatively short. We then work closely with the customer to solidify the requirements and use the result to generate a design, an engineering schedule and an estimate. This Phase I effort is very valuable. It gives the customer a chance to get to know us, and at the end of this phase, they have a solid requirements document under their belt and a professional estimate of the work required to complete the project. The customer can either walk away at this point or move on to a Phase II implementation.
Unfortunately, in the FP approach, customers generally feel that Phase I design and planning work should be a Cardinal Peak business development expense. The problem is that the amount of upfront work is almost always too large for this to be practical from our perspective. I suppose Cardinal Peak could try to treat such upfront work as a business overhead, but this approach increases our cost on all projects we undertake.
Anyway, one way or another, let’s assume that a project eventually moves into Phase II: active implementation. Here, we encounter the next big problem with FP projects. It is almost guaranteed that during the course of implementation, new product possibilities will emerge that are attractive to the customer. Put another way, the business reality in which the customer lives will change, and this will lead to a desire on the part of the customer to change the project in some manner. Requests along the following lines are common: “Can we add this feature, modify that one, and drop this other one?” Or, “Can we change the architecture so that we can easily add a wireless option in the future?” In an FP engagement, most requests like this require engineering analysis to determine their impact on the total number of project hours, and then a signed change order to officially adjust the fixed price of the contract. And usually, this implies substantial project management formalism that adds cost to the project and, more importantly, interferes with our ability to make progress quickly.
Later still, the project will move into the release stage, typically a beta test. Although Cardinal Peak’s team is great, I’d be lying if I told you that the systems we develop are always bug free from day one! The problem from our perspective is that one man’s easily avoided trivial annoyance is another man’s bug. In an FP model, the customer tends to think that until the last possible annoyance is worked out of the system, the project isn’t over — which is in fact rational behavior on their part for an FP deal. Why would they think otherwise? The customer has no skin in the game with respect to trading off the cost of fixing an annoyance versus its actual impact on sales or customer satisfaction.
The process I’ve just described for an FP project should sound familiar because it is basically a 1980s-style “waterfall” project management model that has been pretty thoroughly debunked. It’s slow and expensive. Unfortunately, the business realities of the FP deal push us into it, to the detriment of both Cardinal Peak and our customer.
Indeed, for almost all our customers, speed is everything. They need to get started NOW! And the cleanest fastest deal to negotiate is always a straight T&M deal. We can start work immediately once we agree on a rate chart and a couple of other standard contract terms. Anything else takes substantially more time to negotiate in order to address both Cardinal Peak’s and the customer’s legitimate concerns. Even writing the contract can be time-consuming.
Sometimes customers think that they’ll save money with an FP deal, but in practice, this couldn’t be further from the truth. First, for the reasons outlined above, there is a lot more management overhead in an FP project, and we’ll include the cost of that overhead in our pricing. Second, that risk premium we charge is pretty large. So really the only time an FP project ends up being cheaper for the customer is if they get “lucky” and we misprice the implementation risk markup. And we’ve gotten quite good at not making that mistake — a few scars quickly teach that lesson.
We do understand and respect our new customers’ fears that, in a T&M engagement, we will have no incentive to be efficient in our work. However, we believe this concern is best addressed in other ways. In particular, we assign an experienced project manager to every project. Among other things, his or her job is to keep close tabs on the team’s implementation progress and communicate it to our customer on a frequent basis. A tight feedback loop between our customer and us allows quick course corrections to be made when necessary and leads to increased and mutual trust over time.
Furthermore, unless you’ve personally experienced it, you’ll be amazed at the strength of the inherent incentives for Cardinal Peak to feel invested in our customer’s success in a T&M deal. When our customers are successful in their business and happy with the work we do, they come back to us for more and more. We want to be an important part of our customers’ engineering effort for the next decade! It is always easier for us to sell new projects to an existing customer than to find a new one.
Related: Previously, I wrote about irrational optimism while planning a project, and my partner Howdy has written about the cost of an engineer hour.