Here is the situation:

While working by company A on project A you developed a very fast and perfect search algorithm.

Then you switched to company B to work on project B which is totally different from project A, but you find yourself in need of implementing a search algorithm.

But you know or think that you are not going to come with a better algorithm and if you try to reimplement it, it will look very similar to the old one.

  • Would you use the algorithm that you developed before?
  • Is this practice/behavior safe and ethical?
| improve this question | | | | |
  • Are you sure the search algorithm doesn't exist separately from you? It's unlikely (but possible) you developed something entirely novel – if the algorithm exists elsewhere (with proper licensing of course, e.g. Wikipedia), then it's entirely fair game. – Sean Allred Aug 4 '15 at 12:09

I'm not a lawyer, so this should not to be considered definitive legal advice.

You don't mention if there are license issues with the old code etc. So I'll assume they are proprietary.

In general, all code, trademarks and IP would belong to the company A. That is what you were basically paid to do there. The knowledge remains yours, but may be subject to a non-disclosure or restraint of trade of some sort. If the use of your knowledge is restricted, then I think there is little you can do.

In general what you know is yours, it is your skill and your trade - it would be very difficult to limit you and your ability to practice this.

If the algorithm developed really is unique - it should have been patented. If not patented (or pending) then the question becomes is there prior art or is this somehow public knowledge?

Frankly; if in doubt don't use it. "Do the right thing" - redevelop it; it'll probably have improvements, customisations and be in generally better off situation anyway.

| improve this answer | | | | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.