Today on Hacker News there was a thread about a software engineer who had a non-compete added to his employment agreement which he had-to resign to be promoted. To make matters worse he didn't originally have a non-compete and this was done after the employer told him his original contract would not be altered.
I'll avoid mentioning the company they are discussing but you can find all of the information out there in that thread. But, I can sum up the discussion for you pretty easily: unsurprisingly non-competes are unpopular.
There are a huge amount of replies to that thread of people commenting that they would never sign a non-compete and giving examples of having turned down jobs that have a restrictive non-compete
A non-compete clause in this context is something employers sometimes add to an employment contract under which the employee is restricted from working for a competitor for a period of time, usually during and after employment anywhere from 6 to 24 months.
They usually cover only a specific geographic area, a specific type of work, or a specific industry. Overly broad non-competes are generally thrown out in court.
If you didn't know, non-competes in employment contracts are basically unenforceable in California due to state laws there.
Ever wonder why the tech boom happened in San Francisco and not Boston? Many early software companies were spawned out of MIT. It was possibly due to California's Non-Compete laws.
Typically engineering jobs will always have an assignment of inventions clause where while you are employed any intellectual property you create for an employer is legally theirs.
Experienced software developers are used to this. This is the big one worth mentioning that is always in there.
Usually these invention clauses draw the line at inventions created on their property and using their resources, so if you create some software at home (on your own computer) this doesn't apply to you. But some big tech companies have more restrictive clauses where anything you create during employment theoretically is theirs. I would never sign one of these (unless I was starving).
I've had to sign non-competes (reluctantly) before but generally they were very narrow in scope. Generally, I think that non-competes are much less common in engineering.
I don't think I'd sign one again today unless it was very narrow in scope or I was being promised a huge amount of money because the risk of not being able to work for a year or two under threat of legal action is huge. I believe a lot of other people feel this way (just look at comments in that thread).
Think of it: if you are "at will" employed your employer can fire you for any reason at any time and you have a non-compete that could be enforced, this puts you in a terribly disadvantageous situation!
The big risk is that even if you sign non-compete that is not lawful and you are forced to sign it out of desperation, you still might have to go to court to prove it is not lawful or you were effectively coerced to sign it. By the way here is an interesting post from a Minnesota law firm explaining how courts look at if non-competes are enforceable.
Anyway, say you think you are in the right, do you want to have to hire an attorney to go up against a mega corp with a fully staffed up legal team?
The simple answer is to just not sign non-competes if you are worried.
Firstly, recognize that employees at some tech companies (like the one linked in the thread above) are probably operating under a non-compete. This could make them hesitant to even consider taking another position.
It's already hard to recruit FTEs from the FANGMAN tech companies because of their back-loaded stock grants (if you didn't know they often get roughly half their comp in stock and it has a vesting period measured in years normally), but there are the additional issues with non-competes to take into account.
Here is a quote from one commenter on that thread:
I worked at ***** in the early aughts. They had the same non-compete then. I worked around it by going to business school after I left. By the time I took my next job, the 18 months had expired. Plan your post employment very carefully -- both financially and career wise when you join one of the big 4. When you receive a salary offer, calculate the actually salary by assuming 18 months of unemployment.
Wow, so that guy was so scared of having the non-compete enforced he literally put working on hiatus by going to school to wait out the non-compete!
Non-competes are much hated and experienced engineers will often push back against them even turning down offers to avoid them.
A lot of engineers at big tech companies are opperating under non-competes. You should find this out, because some companies are known to try to enforce them.
Or... work in California!
Some more reading: another commenter linked his blog post about non-competes which I thought was pretty good!