In the process of due diligence for an investment or for M&A, I ask:
Considering that all other software is property of the company, is it sufficient to have a non-core part of the software, which was developed by a co-founder before joining the company, to be licensed with non-exclusive rights to the company (in contrast of having being assigned all ownership to the company)?
It is common practice for companies to build software products using software components that they do not own. Those software components, or building blocks, are often open source; jQuery for example. It is often common to use commercial software for which you pay a licensing fee; an Oracle database for example. Heck you may even be reading this post on a computer with a licensed OS (Windows) and a licensed browser (IE, Firefox or Chrome).
Since you are building your product using a component owned by a co-founder and developed prior to the start of your new venture, you should
1) Basically ask all the same questions as for any other outside component
2) Insure that the relationship to the co-founder providing the software is fully disclosed and that he is not the person making the decision to use his software (he lacks objectivity).
There is no reason to reject that software out of hand; you would probably not refuse to use jQuery for example simply because a co-founder had contributed code to that project.
is it sufficient to . . . to be licensed with all non-exclusive rightsYou should be asking that question about all outside software you are using, not just the software owned by the co-founder. Let me give you a couple of examples of where a simple assignment of a non-exclusive right to use may not be enough:
to the company (in contrast of having being assigned all ownership to
1) Is the right transferable? Suppose a big company wants to buy you out but finds out that you don't have the right to transfer use of this software as part of the deal?
2) What happens if the co-founder dies? Do you have the right to maintain and upgrade the software? Do you have the source code?
3) Do you have a non-compete clause with the co-founder? In other words could he make a better version and offer it to a competitor? If he can, does he also have to give you the improved version? If it is truly generic (like a sort algorithm) that may be fine, if it were core to the business you might not want to let a competitor have access.
4) Finally consider that you may have to deal with more than just the co-founder. If he should die then the software will belong to his estate and you have no way of knowing what his heirs may want to do with it. All agreements should be clearly laid out in writing to prevent misunderstandings in such an event.
Transferability is a key right that is often overlooked. Even big companies like Volkswagen get tripped up when they think they are buying something but don't do their due dillegence. They thought they were buying Rolls-Royce, but the licensing of the name was non-transferable.
It is best if ownership is given.
Next best is exclusive license.
Then what you have - non exclusive license
See what it would take to negotiate for each of these and then choose one. Also a migration path from one to the next as he is compensated.
I would also work out rights to deny licenses to competitors and non-compete.
All of those things require compensation, but if the person is a co-founder one has to wonder at the dedication if exclusive rights and/or ownership are not already granted.