Developers routinely take on work with nothing in writing, and the results are predictably bitter. The awkward part is that the default position surprises both sides — absent an agreement, the developer owns the code, which is rarely what the client believes they paid for.
1. Author and owner of the work
The developer is the first owner and author of the work. Ownership transfers to the client where the work is created for hire or as part of employment — or the developer may retain ownership and license its use, with or without conditions.
When a client engages you, both sides should decide what rights transfer. If the engagement is to be treated as work for hire, so that the entire rights belong to the client, that must be in writing. Absent anything in writing, the developer owns the rights.
That is the clause worth getting right before any other. A client who assumes they own what they paid for, and a developer who owns it by default, will discover the mismatch at the worst possible moment.
2. Code libraries and reuse
It is natural for a developer to want to retain the right to reuse code implementing commonly used functions. Make this clear at the outset of the engagement.
The workable compromise: the developer offers the client a broad licence allowing use and modification of such code without restriction, while retaining ownership and the right to reuse it elsewhere. The client gets everything it actually needs; the developer does not have to rewrite their own library for every project.
3. Open source code
Open source does not mean free to use in any way. Licences vary in their requirements, and it is essential to understand the licence covering any open source component before incorporating it. The Free Software Foundation maintains a list of licences with commentary.
Where you use open source in the work, tell the client and make sure they understand the implications. Some licences carry copyleft obligations that can extend to code combined with them — which is precisely the kind of consequence a client needs to know about before shipping, not after.
4. Accepted versus rejected work
Clients frequently request changes, rejecting code along the way, with only the final work transferred. Developers often reuse rejected code in other projects.
Be explicit about who holds rights in code the client did not accept. It is a small clause that prevents a genuinely awkward argument later, when rejected code from one engagement turns up in another.
5. Milestones and payment
Break the project into smaller pieces with defined milestones. This:
- avoids disputes at the end of the project that lock up your payment;
- provides constant feedback, helping you refine the work and estimate the effort changes require; and
- keeps money arriving at regular intervals rather than in one contested lump.
The IP behind it
Patents can protect a software-implemented process, method, algorithm or system — subject in India to Section 3(k), which excludes a computer program per se, so what matters is whether the invention delivers a technical contribution.
Copyright protects the code itself, as a literary work. India is a member of the Berne Convention, so the work is protected across the many countries that are signatories, without any registration formality.
That combination is why the agreement matters so much. The rights arise automatically, and vest by default in the developer. Everything the client gets, they get by contract — so if the contract is silent, so is their claim.
The takeaways
- Absent writing, the developer owns the code — work for hire must be documented.
- Reserve reuse of your library, and give the client a broad licence instead.
- Understand open source licences before incorporating, and disclose their use.
- Address rejected code, and structure payment around milestones.
Frequently asked questions
Who owns software written by a contractor? The developer, as author and first owner, unless there is a written agreement transferring ownership or the work was created in employment.
Can a developer reuse code from a client project? Only if the agreement provides for it — which is why the right to reuse common functions should be reserved expressly at the outset.
Is open source code free to use in commercial work? Not without conditions — each licence carries its own requirements, some of which extend obligations to code combined with them.
Is software protected by copyright without registration? Yes — copyright arises automatically, and India’s membership of the Berne Convention extends protection to other signatory countries.
Useful official resources
- The Copyright Act, 1957
- Free Software Foundation — licence list
