Ask HN: Contracting – dealing with ambiguous requirements and liability
hnacct2001 Wednesday, November 27, 2024I'm talking with a client who wants me to help integrate three pieces of software that are already in development. They are new to custom software and they contracted out each piece without specifying that each of the three should talk to each other. I don't think it'll be that bad getting these to all work, but I am concerned about specifying the liability. Who will be to blame if I write method doSomethingWithBoxesAndScissors(box, scissors), and the other contractors produce code that sends ill-formed scissors in as an input? I can't rely on a pre-written spec because there is concurrent development happening with very little of it pre-specified by the client. And I am a bit concerned that one of these teams will go rogue at deliverable time, cut some corners, get their piece accepted, and leave me holding the bag.
The client says that I am allowed to direct each of the teams on what they must do to achieve the integration goal, and they must accept my direction. The client is also fine with me billing hourly, so I'm not worried about getting squeezed on a flat fee. But I am a bit lost on how to define liability. The client, understandably, wants me to accept some liability. But they are looking to me for guidance on this.
Had anyone else dealt with this? How did you define the liability?