I think anyone who has done a decent amount of contracting has had a few (or a bunch of) toxic clients.
By toxic I mean a client who is behaviorally or institutionally self-destructive in a way that makes doing what they hired you to do nearly impossible.
For the most part learning how to handle these situations is about identifying clients that are dysfunctional and toxic before you engage and simply passing on the gig and then doing a good job communicating with the client after you’re in the door.
If you’re keeping your eyes open for it and you’re good with the human side of client services, toxic clients are unusual.
But, shit happens, you miss the signs ahead of time, you get gigantic check blindness*, and you’re in it now. You’re a month from shipping, there’s six months of work to do, the design is changing again, there are 4 managers on the client side all fighting each other over what this should be, some of them will be fired soon, but who knows which ones and you have too keep them all happy until that happens. You’re made mostly out of tears at this point and you’re not sure what to do.
*clients with ridiculously deep pockets often become toxic thanks to their willingness to pay people to just shut up and do what they’re told
In practice I’ve seen three courses of action for once you’re deep in it
You can usually solve these problems by being young, or hiring young people who don’t know when to go home and letting them break themselves on the client’s yoke. This might even seem like a good idea. The young people are in steady supply and often eager to hurt themselves just to ship something. And hey, “we just need to get the [person you interface with at the client] a W so that she can get the capital she needs to do things right”.
Thing is, I’ve done this, a lot and it doesn’t make things less toxic, it makes them more toxic. Hard deadlines and big challenges can be great opportunities for teams to do the best work of their careers and I know I crave that kind of thing, but toxic, self-sabotage doesn’t get fixed by wins. If the client is churning and in-fighting and then you ship something great, in my experience what you’ve taught them is that they’ve got a process that works.
Wallowing in the muck
So you don’t have the means to do the job right, what can you do? You can just manage the client and not the project. You can communicate the problems as you see them. You can do the tasks you’re assigned to the best of your ability. You can communicate realistic timelines, but then offer to do your best with the totally unrealistic deadline they’re asking for. You can delay the project 1 month at a time for a year instead of doing the hard reset that you needed. One that would have taken 9 months, but would have actually worked*.
You can do the exact requirements of the job, but give no actual fucks.
This is a morale crushing death march, but it’s also surprisingly common. It’s how a lot of slightly toxic clients turn into hell beasts because we don’t get ahead of these issues. I think the reason that it’s common, that we let it happen is that there is a TON OF MONEY in the muck. Tons. If a client can keep paying you and you need to make payroll, knowing that what they’re doing will never produce the product they want might not be enough for you to walk away.
*twelve delays of one month will get a manager yelled at twelve times, one delay of nine months that C levels hear as nine years will get them fired
And then finally, what I see as the only real option in this kind of scenario*.
Go to the client, be honest with them. “I want to see you succeed, but I don’t think we’re the ones to help you do that.” is cliche, but it works. I’ve done it, I’ve been hugged doing it (was awkward, but hey).
Offer to help them find your replacement.
If you can afford to disengage, do it.
*It’s worth saying that I run a one man shop these days because disengaging is a lot easier when the only paycheck I’m giving up is my own