|
Before spending money on a lawyer, check what happens in your state in breach of contract suits for the amount of money you expect to get sued for (or have to sue for) should the relationship fall apart. In some states (maybe most) suits that would arise from a contractor agreement will go to mediation/arbitration automatically. When that happens the mediator will likely pay more attention to the original intent and who did what, or didn't do what, rather than specific details of the contract. Many, often most, terms of the kinds of boilerplate contracts you get in consulting/freelancing are covered by law anyway. As long as you have spelled out the expectations you can assume the fine print is just repeating what the law says already. And contracts cannot void or override state or federal law. You need to clearly describe: - What you promise to deliver, the more detailed and specific the better. - How much and how often the customer will pay you. - Start/end dates for the contract. - Who owns the finished work product (generally defaults to the customer but best to spell that out). If at all possible contract, charge, and get paid for specific deliverables as opposed to a fixed fee for a vague statement of work, or hourly for whatever the customer asks/expects you to do. It's much easier to enforce a contract that says "Set up staging and production instances for web server in AWS or GCP, with specs X, Y, and Z, by DATE" than one that says "Set up hosting environment." As the project proceeds you should agree on the deliverables with the customer, and how much those are worth, not the time you think it will take. You should avoid putting yourself in a position where the customer can owe you a lot of money, or you could get sued for a lot of money. Fixed-fee projects for thousands or tens of thousands of dollars with vague specs and requirements just lead to trouble, because you and the customer probably have very different expectations and interpretations. No one knows how to write complete and unambiguous specs that everyone interprets the same way. No one knows how to estimate software development or plan for the unknown unknowns that inevitably arise. We can call it engineering but really it's a lot of guesswork, and your customer will proceed from a different set of assumptions than you have. If you do get sued, or you have to sue, you will almost certainly spend more money on lawyers and lose money on non-billable time than you can hope to recover. Don't count on a contract to give you a slam dunk. Even if you "win" in mediation or court you just get a judgment, not a bag of cash, and collecting on a judgment turns into another problem to waste your time. The legal process moves slowly, costs a lot of money, imposes stress, and reduces your billable time. Mediators will probably not understand anything technical and they want to get the case over with, so they tend to split the difference, pocketing a fee and ordering payments to attorneys. |