We are in a sticky situation, that is no ones fault but our own. We had approached a developer to join our startup. After showing him the project he was excited and decided to join. Our mistake was not signing IP assignments from the start. After 6 months of coding, in which the developer held the code on his own servers, it is now time to incorporate and assign the code.
Here is our dilemma: The developer has no problem assigning the code, however, he won't assign it unless we give him the rights to re-use some of what he calls "generic" code. Are there any suitable "work around's" to this situation? I am fearful that it will become a road block when we seek financing. And lastly, if we decide to move on without him, and his code...can he use the code that he has developed under NDA?
Thank you for your help.
Co-Founder Legal Investors Intellectual Property
The developer has no problem assigning the code, however, he won't assign it unless we give him the rights to re-use some of what he calls "generic" code.You need to clarify what "generic" and "reuse" means. It would seem that the core issue here isn't that the developer has discovered a novel, groundbreaking approach that will generate millions and save the earth - you simply don't want him to use the code to directly compete against you.
Since the developer seems amenable towards reducing his equity component in return for "usage rights", one would believe that (s)he understands that reuse must be mutually agreed to.
Given that you need to get assignment rights to the code, I would suggest having a conversation to understand what "reuse" scenarios is being contemplated, and (if acceptable) write up an IP assignment agreement with an addendum that memorializes where such code can be "reused".
Then lock down the IP assignment and move forward.
If there's nothing signed, you're on very squishy ground and you should consult with an attorney asap.
If there's an NDA in place, that doesn't evaporate if you don't include him.. unless the agreement says otherwise. If it says he can't talk about the project elsewhere, then he can't. You just have to be willing to back it up because a contract without enforcement is decorative.
If you paid him, you might be able to make a case that he was effectively serving as an employee and push that you have a "Work for Hire" agreement - http://en.wikipedia.org/wiki/Work_for_hire There are probably tax implications on that one though, so be careful. But you probably have email exchanges that demonstrate/describe the opposite.
Alternatively, if you have another developer you trust, you can have the current developer identify the "generic" code and have it reviewed.
Regardless... sticky is an understatement.
Before this point, he was your good partner and now he wants something which puts your business at risk (at least you see it in that way). I work with programmers, they tend to reuse their code whenever possible. You don't need to be a programmer to know how copy/paste feels good. Also this is the only guarantee he has for his effort (he is not paid for that and you agree he deserves what he claims except problems you may encounter in financing). What is important here is, he should feel you worry about whole project which belongs to all of you and the problem is not his bigger piece of cake. Then you can agree with him to drop this claim if investors get reluctant. You can do what should be done earlier:
Bring this to paper beside his claims plus your rights on IP (consult an attorney)
After all, you have documented your fail plan and signed it (which he is responsible for it). To investors a good team is more valuable than a good idea or implementation and that agreement with generic code condition signals them you are not a team. Real risk is this.
Go to experienced people you both trust and ask if this condition is a risk to investment. If they say yes (as I mentioned my reason) he feels how his little claim ruins all the efforts. At this point you can write a new agreement and replace the old one. I believe the real agreement cannot be written at first. It should replace a previous one which puts blames on him (signaling we are not a team), also keep enough of your right in case of break up (he cannot use the code somewhere else easily since you have settled done him, even for 1% of your rights on IP against his 99%, then the code becomes useless to him).
This is your first misunderstanding and you will encounter much more in your career. Tolerance is vital to partnership.
As a programmer, we have generic code all the time - its usually the technical glue that holds a program together and allows it to work without actually being a program in itself. Think of a website - the web server is 'generic code', and nothing to do with the website code. The dev might want to take his equivalent of a webserver, or parts thereof, away with him for future use on totally different projects.
That said, its possible he might want to take his "webserver" away so writing a competing website would be much easier. Personally I think he doesn't want this, most programmers aren't interested in the business but in the code to make their lives easier in the future - we all reuse code, and every programmer will have a "toolkit" of code we wrote at previous companies that performs some tasks.
Advice: talk to him and see what code he thinks is generic. If you wouldn't understand what he says, then you need to go for the NDA/non-compete documentation. Get him to sign something that says he will not compete with you or develop anything that will compete with you or your business.. and you'll both be happy.
IANAL and I don't know what rules/conventions apply in your jurisdiction.
However, if it is truly "generic", it shouldn't take him long to re-create it in his own time.
If he has had it on his servers and if you havent signed a contract and the developer is still asking you if he can keep some generic code, I would just the fella keep it.
Of course, you could make an agreement about the generic code and how if he ever makes money from it, he should pay you royalty et cetera.
In reality, it is almost extremely difficult to own 100% of the code that a developer will make for you. Some one recently had asked how he could secure his code, to which this bloke replied : http://answers.onstartups.com/a/48035/25346