Essentials of a Good Software Outsourcing Agreement
Essentials of a Good Software Outsourcing Agreement
Jul 15, 2020 |
I agreed to outsource some work to another company after several discussions about what needed to be done, and how and when it should be carried out.
We also discussed the cost and payment terms that were acceptable to both of us. But when the agreement was emailed to me, its contents were absolutely shocking! It had so many one-sided terms and conditions (none of which were on my side, of course) that I almost refused to do business with them.
The agreement said I had to give stock in my company, as well as pay cash – but we had never discussed stock as compensation. It also stipulated that I had to pay $100,000 in “damages” if I ever “breached any of the covenants of the agreement”. But we had verbally agreed I was to pay only a couple of thousand dollars per month for the services being offered.
“Oh, that’s just our standard agreement,” the other guy said.
“Oh, did you think I was just a standard moron and was going to sign it?” I replied.
What were they thinking? Such a disconnect between what you agree to in person and what is written in the agreement creates a bad impression, and can lead to a situation where the agreement is used to drive the relationship, rather than your reasons for doing business in the first place.
Outsourcing Agreements Shouldn't be One Sided
Yes, the agreement is between corporations – theirs and yours. But ultimately, an agreement is between people. And in my experience, there’s a universal sense of fairness that should not be betrayed if you plan to work together for the long run.
Neither party should seek an unfair advantage. An outsourcing agreement should document clearly what you have already agreed to in principle through your discussions about the work to be performed, and how and when it will be paid for. It should protect both parties from misinterpretations if either party is no longer in the picture.
There is an ultimate purpose both parties are aiming to achieve. In fact, it’s the reason for having the agreement to begin with. It is the “spirit” of the agreement, which is a real and palpable thing. If you seek some undeserved benefit, even if the wording of the agreement allows it, you are violating the spirit of that agreement. And it probably won’t work.
The buyer has the ultimate power in an outsourcing relationship because they can withhold payment. If your outsourcing partner does not perform, you don’t pay them!
Is a company in another country going to sue you over a final payment that is less than $25K or even $50K? Probably not, because it is not worth the time, travel and legal fees required to make it happen. Therefore, an offshore partner (or any partner that is smart) will go the extra mile to make you happy with their services, to make sure they get paid.
Should you take advantage of them and not pay, even if they do a good job? Of course not! If that is how you run your business, then delete this eZine and please don’t call me.
Most outsourcing agreements have two parts: a main agreement, and separate exhibits for each project or programming engagement. The main agreement covers basic legal terms and definitions. It is the contract that governs the relationship between your company and the outsourcing partner.
Your main agreement should include these elements:
Independent contractor relationship: the outsourcing company is an independent contractor and their engineers are not your employees
Intellectual property rights: you own all intellectual property that is produced
Assignment of copyright: to specifically assign the copyrights of the software source code to your company
Non-disclosure obligations:defines your proprietary and confidential information, and agrees not to disclose it
Term and termination: the time length of the agreement and the rights of each party to end it
No conflict of interest: neither party agrees to enter into other agreements that conflict with this one
Non-interference with business: neither party will interfere with the business activities of each other’s company for some period of time
Force majeure: limits the liability of both parties if work is interrupted by major acts of natural disasters such as fire, flood and hurricane or man-made causes such as war, terrorism and government regulation or restriction
Assignment:the outsourcing partner should be restricted from contracting out (or outsourcing your work) to another party without your written permission
Governing law, jurisdiction and venue: if there is an issue, you will want the laws of your own state and country to apply.
This covers many of the important aspects of an outsourcing agreement. But what about price? What about quality and responsiveness to bugs and problems? These details can vary from project to project or between engagements. They need to be specified in separate exhibits added to the agreement, each containing the statement of work (usually copied from the proposal made to you by the outsourcing partner), pricing and payment terms, and your agreement re the payment of other expenses.
There are a few other clauses and details you will want to include. My purpose here is not to offer complete legal advice – you should use an attorney if you have any concerns and questions about the meaning and wording of your outsourcing agreement.
As CEO, Andy leads and advocates for the globalization and collaboration of great software teams with companies in search of talent, innovation and a globally-distributed extension of their engineering function and culture. Andy founded the ground-breaking nearshore software development services company, Isthmus Costa Rica. He began his global software services career as a division manager at Cognizant during their early formative years.
Learn how to use software outsourcing services to grow and thrive.