Ethics of providing sample code to prospective employer
May 16, 2011 3:26 PM

(Posted for a friend) A co-worker of mine and I were discussing a sticky situation that I think is pretty common in the IT field. We are both applying for new jobs and have been asked to submit sample code as well as documentation. Obviously code and documentation is intellectual property of the employer, even though the employee essentially wrote/designed/authored it. How would one go about submitting code and documentation in a legal and ethical manner that still displays relevant work experience?
posted by langedon to Work & Money (11 answers total) 4 users marked this as a favorite
Do some side work on an open source project or on a personal project.

If an employment agreement prevents you from doing side work, try something along the lines of "I can't show you prior work product without breaking employment agreements. I hope that you understand. I'm sure you wouldn't want your employees showing their work product to competitors."

When I was a hiring manager, we asked for solutions (in code) to a short problem that we would pose, but never asked to see confidential work. That would have been a stupid way to expose ourselves to legal problems.
posted by dws at 3:35 PM on May 16, 2011


Write your own stuff.
posted by aramaic at 3:47 PM on May 16, 2011


Over time I've assembled my own "programmer's portfolio" to show code to perspective employers from two sources: (1) code to which I own the rights because I wrote it for one of own projects or as a contribution to an open source project and (2) code which I wrote (but do not own the rights) but for which I asked and received a license to use it in my portfolio.

With regards to code from my own projects, I'm careful to use only code that I wrote on my own time and with my own equipment. Furthermore, some employee contracts give the employer rights to all code written while an employee, but usually offer a mechanism for excluding preexisting work. If my employer asks for this, I'm careful to list my ongoing projects for exclusion. With regards to code that belongs to an employer, in my experience my employers have frequently been willing to give me a license to show code that I wrote for them if I am careful to ask to use code that they consider to be incidental to their core business (particularly the smaller employers).

When you assemble your "programmer's portfolio" choose code samples from your personal projects as a way to demonstrate your passion for particular coding subjects and demonstrate your coding skills (perhaps you've got a flair for algorithms or can show than even when writing "for fun" your coding style is disciplined and maintainable). The code that belongs to former employers to which you have a license can, of course, demonstrate your coding skills. More importantly it gives you an opportunity in the job interview to demonstrate that you respect your former employer's rights and that you understand IP licensing (i.e. something like "I can't show you my best work from XYZ Inc., but they were willing to give to me a license to show this code snippet...".
posted by RichardP at 4:11 PM on May 16, 2011


Yeah, write your own code. Just pick a project and do it.
posted by delmoi at 4:24 PM on May 16, 2011


word of warning, though: by writing your own stuff while employed, employer can claim ownership of that code if it's something that they think is worth pursuing.
And they can win (look up Alcatel v. Brown).
posted by Neekee at 5:02 PM on May 16, 2011


For bonus points quickly code something interesting, like a Mandelbrot fractal generator, neural network that guesses whether a stock will up or down tomorrow, or whatever piques your personal interest and intersects with your technical skills. Submit it with the message dws supplies above.
posted by oblio_one at 5:30 PM on May 16, 2011


Some thoughts (choose as applicable)

1. Read your employer's IP policies
2. Do it on your own time and on your own computer
3. Pick an area that is not even remotely related to your current employer's area of business
4. Answer a programming question with a complete code example on a public site and provide a link to it
posted by theobserver at 5:42 PM on May 16, 2011


Speaking as an interviewer, I want to see what you think good code looks like. At some level, I don't even care whether or not you wrote the code, as long as you know it well enough to discuss it intelligently, tell me why you're proud of it, tell me how you could improve it, etc.

I can't imagine spending enough time with a code sample to steal your previous (or current) employer's proprietary algorithms.
posted by Bruce H. at 5:45 PM on May 16, 2011


Speaking as a former hiring manager, I once ended an interview and sent a candidate home when he tried to show me code he'd written for his current employer. I was told (and IANAL) that even looking at it could expose my company to liability.
posted by dws at 6:07 PM on May 16, 2011


These issues are the same for other people doing portfolios. The solutions are the same as stated upthread:

* create you own code -- completely yours and on your own machines and time;
* create or contribute to an open source project
* review the IP laws regarding your work at your present firm. I am willing to say that the first two options are probably best since firms are very conservative with their IP

I have interviewed people and the proprietary issue arose dealing with their creative work. So it is not just code that has this issue. Even for technical communication positions, people can and will ask you at length how you created, developed, solved or contributed to an artificat including, what tools you used.
posted by jadepearl at 6:57 AM on May 17, 2011


Thanks, everybody. It is kind of pointless to mark almost everything as best answer, I suppose, unless the point is that the answers are all very helpful.
posted by langedon at 4:17 PM on May 17, 2011


« Older I have two gmail accounts, and want to switch...   |   Health insurance for foreigners visiting the U.S.?... Newer »
This thread is closed to new comments.