After a customer ended our contract, I thought he had treated us unfairly. We had worked hard and promised to deliver a good solution on time. I was angry enough to concentrate on his decision before looking carefully at how we had reached it.
The warnings had been there. Scoping took longer than expected, and we treated that time as something lost from the schedule. We told the customer we were ready even though we had staff shortages and lacked some of the skills the project required.
We kept pushing ahead to meet the deadline. The customer saw half-finished work and became more disappointed. We continued behaving as though we could recover without making enough changes to the way the project was being handled.
Eventually, he canceled. We lost money, and we had given him good reason to lose trust in us. I had been blaming him for a decision our own conduct had helped bring about.
I owned the problem and set new ground rules for serving customers. We would make promises based on what we could actually do. Scope and assumptions needed to be clear. If work was going badly, we needed to tell the customer and agree how to address it instead of hoping the next delivery would hide the problem.
I also needed to consider what was fair to both sides. We would propose the work needed to solve the problem, and changes had to be agreed on terms that both parties could reasonably accept.
Those were responsibilities we should have taken seriously before losing the contract. Before your company makes its next promise, compare it with the team’s actual time and skills. What assumption needs to be made explicit, and what would the customer need to know if that assumption proved wrong?