October 7, 2024

Wrong contract terms for the wrong situation

by

If I’m going to be completely honest, I love contracts.

I use contracts all the time, not only at work but with family and friends.  I truly believe that most interpersonal conflict in this world can be avoided if more people took the time to write out basic contracts in advance…but that’s a whole separate topic.

The most common contractual structures in ExDev are:

- Retainer (pool of hours)
- Time and materials (hourly, person-month)
- Milestone based
- Price per deliverable
- Back-end royalty

While having agreed-upon rules at the outset of a new engagement is great, it can become problematic if the world around them shifts. Therefore, a good rule of thumb with service contracts is that:

The more unknowns you have in your scope, the more flexible the contract should be.

If you want to explore a concept, it’s fine to ask your vendor to estimate costs based on their ‘usual’ creative process.  However, you should then make sure your contract is flexible enough to allow for exploration, and for the sake of both parties, avoid locking yourself into a fixed amount of work.

There’s nothing worse to a vendor than a client asking for a fixed price project, then requesting a million changes once the delivery has been made.  This is bad for both parties indiviudally and the overall relationship collectively.

It puts the vendor in a tough spot.  No one wants to say 'no' to a client, and the tack-on changes are usually quite small, seemingly 'not a big deal'.  But that’s disrespectful to the vendor - the client is ignoring the fact that they have already exceeded the agreed-upon scope, and as a result are forcing the vendor to maintain a higher overall project load.

One common way vendors deal with this problem is to assign the project to a junior on their team.  That way the client is still getting serviced, not ignored, and it helps mitigate additional losses for the vendor.  That, or you just stop putting in honest effort.

Either way, as the client in this situation, the quality of the work you’re getting has fallen off the cliff.

A good way to avoid this situation is to mix contract structures.  Tease out the unchanging part of the scope, and lock that into a fixed price.  Then give the contract a flexible backend to allow for exploration.

The point here is to align the work that needs to be done with contract terms that ensure everyone feels fairly compensated for the work they are asked to do. Because getting out of alignment will not only damage the project, but also put you in a hole should you require any future work from that vendor.

Sign up with your email address to receive new posts and updates

Gain Insight on External Development