Sample Rails consulting contract

20 Feb 2008

I’ve had requests from time to time from other developers for the contract that I use with clients. Here’s the Terms section that I typically use. In addition to this section, I have sections that describe the work to be done, the payment schedule, and other info specific to each client.

Enjoy!

Sample Rails consulting contract

Ob. disclaimer: I am not a lawyer, and this is not legal advice—I’m just some guy on the internet.


Actions

Informations

9 responses to “Sample Rails consulting contract”

Daniel Fischer (15:35:58) :

Thanks for sharing that. i appreciate it.

Mike (17:00:46) :

“Client is granted a perpetual, transferable, worldwide, royalty-free, unlimited license to use all work product delivered by Contractor. This license is conditioned upon full payment of the compensation due Contractor under this Agreement.”

If I am reading this correctly the client doesn’t actually own the finished work product. I cannot believe that someone would agree to this.

Aditya Sanghi (01:59:57) :

@Mike,

This is helpful, when companies start the dialog with “Send us your contract” and copy HR. Since consultants are so agile, they quickly send a contractor favouring contract like this. Once HR get their act together, they either send their own contract back or negotiate the one you sent.

This can however work nicely between P2P contracts however. Say, you want to hire Ben for a couple of hours of work to review or fire-fight something, Ben can do the work for you once you agree to his contract.

..or something like that.

Cheers,
Aditya

Farley Knight (06:38:34) :

I’ve been looking for something like this for a while now..

Dude.. you are the man!

Yaroslav (08:04:42) :

Thanks for sharing!

Ben (09:07:22) :

@Mike:

In the US, absent an agreement specifying otherwise, clients don’t automatically get the rights to software developed for them on a contract basis—the developer still owns the copyright. The only way for a client to get copyright (and other moral rights) to the software that is delivered is to either 1. hire the person and get the work done on an employer-employee basis, or 2. have the developer agree to transfer the desired rights to the client.

So my clause is not as bad as you have portrayed it—it actually specifies some generous rights that I’m granting to the client. The client can do anything at all with the code except claim ownership of it. That right I reserve to myself.

I will say that for some clients, this is a show-stopper. If you as a client want to patent something that you are contracting me to build, you will most likely want full rights transferred to you. Most clients, however, don’t have that need, and don’t want to pay the additional expense I would charge for those additional rights.

Again, I’m not a lawyer, and I’m not advising anyone in that capacity.

Dave Mauldin (20:01:20) :

@Mike,Ben:

The monetary division is easy to present to the client as well.

If they’d like to own the code, it leaves you unable to use your own work in future projects.

If they’d like to pay less, they can let you use any of your existing code which you will continue to own. Also, you will be able to use any new code you write when working on other applicable projects.

It’s great of you to put this example out there Ben. :)

E. James O'Kelly (19:27:18) :

Awesome Ben. I was just looking for something like this after being taken by a client and Dan pointed out that you had posted this. The agreement seems much sounder then my own and I will be incorporating much of it.

Mike Schneider (10:00:41) :

Ben is right about contractors retaining rights to work product unless the contract specifies that the work is assigned to the client. The IP ownership issue tends to be a sticky point in development agreements. Almost no company wants to hire a developer and not own the code created. The problem for the company is that with a non-exclusive license, the developer could resell the work product to another company or compete directly with the client. A common way of solving this is to grant the company ownership of newly created work product, and a license to the pre-existing work product. In this way, the contractor can use his or her existing code base without fear of giving away ownership, and the company knows that the stuff the contractor built on the company’s dime wont be resold to someone else.

As a Seattle technology lawyer I see this issue come up a lot.
—Mike