187

Suppose I have a main job (Monday to Friday, 9am to 5pm) that involves lots of computer programming, and one day I build a recommender system for my company (think of Amazon.com making recommendations). My company is in the perfume industry.

Now, I also have a part time job (8 hours a week "side gig") in the clothing industry. Based on the knowledge that I gain from my main job, I build a recommender system for this company. I make sure that I build the recommender system without looking at any of my existing code. However, because I just built the other recommender system, I am able to build this recommender system much more quickly. The code for the recommender system I built for the clothing company is also very similar to the code for the previous recommender system I built for the perfume company.

Did I do anything legally or ethically wrong?

For context, recommender systems are covered by many graduate-level computer science textbooks. They take many weeks/months to build. Code to build standard recommender systems can be found on code repositories such as GitHub, though implementation details can vary. Assume that the recommender system I built is relatively standard.

wwl
  • 1,699
  • 3
  • 9
  • 11

13 Answers13

375

There is no ethical dilemna here. The simple fact that experience allows you do something more efficiently has nothing to do with ethics.

henning
  • 283
  • 3
  • 8
Kilisi
  • 222,118
  • 122
  • 486
  • 793
  • 36
    Agreed. @wwl did you bring any experience from previous work to your perfume company job? So long as you don't reuse documentation, code or tests from the perfume job on the clothing job, then it is the same thing. – Mawg says reinstate Monica Nov 13 '18 at 07:33
  • 26
    I would add that there is no "conflict of interest" here because the 2 companies are in entirely different industries. So don't sweat it :) – vikingsteve Nov 13 '18 at 11:19
  • 9
    Knowledge ("how" in this case, as opposed to "what") and skills gained are not intellectual property. No company can prevent you from putting those skills to use. My current employer even went so far too say that if we build a tool (eg a recommendation system), we're ok taking that code with us. It just can't have or use propriety information (eg contain or access their customer or product data). Might not be the case with you, just saying how my current employer broke things down. – Draco18s no longer trusts SE Nov 13 '18 at 15:05
  • 2
    Goes a bit further than simple experience though, don't you think? OP wrote the code for his day job, so it seems highly unlikely that there wouldn't be significant similarities to this IP contained in the second implementation, unless he deliberately chose a completely different approach. In which case his previous experience wouldn't be much help. This is why companies trying to clone commercial OSs (for instance) purposely avoid hiring people who have worked on the subject OS. IP that is contained in someones head rather than their HD is still IP. – jkf Nov 13 '18 at 20:04
  • 1
    @jkf not gong to advocate he chop his head off before doing a job. I don't see an ethical issue and won't try and twist it until I do, because that will never happen – Kilisi Nov 13 '18 at 21:33
  • 8
    @jkf, I don't agree with Richard Stallman about everything, but his article about the deceptive vagueness of the term "Intellectual Property" is precisely on point. With regard to your statement that "IP contained in someone's head is still IP" (and passing over the astonishing resemblance to thought police) can you try to specify whether such IP is supposed to violate (a) patent law, (b) copyright law, or (c) trademark law? – Wildcard Nov 14 '18 at 01:37
  • 3
    @Wildcard The other answers that mention lawyers are a better bet than asking me, but off the top of my head I would say that a court might decide (if it came to it) that OP had violated the copyright of his employer, and (if his employment contract is anywhere near standard) possibly is also in breach of contract. The way the courts decide whether you have violated copyright AFAIK is not to ask you nicely whether you copied code from work -- they analyze both sets of code and look for substantial similarities, which probably exist. Like a song with different words but the same tune. – jkf Nov 14 '18 at 02:07
  • 4
    Agreed that if you wrote the second system from scratch it should be fine but proving that might be hard. As others have said I'd expect strong similarities between your first version of a recommender system and the second version you write. Especially if writing both are very close in time to each other. Even if you aren't trying you are still going to remember the first and major structures and even things like function names may well end up matching. Those similarities could look like you copied the original code and just tweaked it for the new use or to try and hide the copying. – Evan Steinbrenner Nov 14 '18 at 21:10
  • 2
    @EvanSteinbrenner while that has a slight chance to be a potential legal issue, it's not an ethical one. Personally I would not even worry about the legal bit unless it actually arose which is extremely unlikely and easily solved. – Kilisi Nov 14 '18 at 23:22
  • 2
    @jkf "IP contained in someone's head is still IP" No. This is the very opposite of the truth. The contents in people's heads is definitely not intellectual property. To be IP, something must be in a fixed form. You'd get some very silly results if the opposite were the case. To violate someone's patent, there must somewhere exist a patent document. To violate someone's copyright, there must somewhere exist a piece of paper or a file or something of that sort. If you hold something only in your head and only speak it out loud and no fixed recording is made, no IP exists. – David Schwartz Nov 15 '18 at 01:40
  • 2
    Copyright isn't the only thing generally termed IP. Whilst it's unlikely that code you'd write would breach copyright (unless you had a copy of the original code, or a flawless memory), it might be a trade secret, and covered by an NDA, which could get you sued. – James_pic Nov 15 '18 at 11:37
  • Just commenting the accepted answer to give another way to look at the issue. Work experience is advertised as, and often is, a benefit. You may want to have a lower salary in order to work for companies active on really interesting technologies or fields: this choice allows you to grow both professionally and as a person, and offer you to take the knowledge out in the world as yours. Using that knowledge on other project is like purchasing food with the salary from a company that sells perfumes: it's meant to be like this. – phagio Nov 15 '18 at 12:15
  • Knowledge is job independent. – SliderBlackrose Nov 15 '18 at 15:00
  • @SliderBlackrose That's not true. See institutional knowledge – TylerH Nov 15 '18 at 15:43
  • 1
  • Something that is perfectly ethical can still be punished if it goes to court. 2) If a lawyer says that something i forbidden, that does not make it so.
  • – Beta Nov 18 '18 at 15:05
  • What is a "dilemna"? Did you mean a dilemma? – Michael Harvey Nov 19 '18 at 16:44
  • @TylerH That is irrelevant to my statement. Institutional knowledge is a subset of overall knowledge. It is the subset of a combined group of individual knowledge, and the individual knowledge that makes up that institution is job independent. The numbers 1-10 are knowledge. The fact that you use those to label a file as #12 is a subset usage of those numbers being applied to your specific organization. That doesn't mean that the numbers are now institutionalized to only your organization. – SliderBlackrose Nov 27 '18 at 16:54
  • @SliderBlackrose No, it does not mean that the numbers 1 through 10 are institutional knowledge, but that's a very silly claim to make. What's institutional is the very example you gave of labeling a file as #12, or in real world cases, much larger and more specific knowledge sets about proprietary languages, applications, or processes. – TylerH Nov 27 '18 at 18:31