Ask HN: Unicorn job offer after years of freelancing, need advice

10 points by rericks ↗ HN
I’m a programmer with ~6 years of experience. After years of freelancing, I’ve found myself with a job offer from a unicorn in SF. It's a prestigious company; few get in. My hunch is that it would be foolish not to pursue, but there are lingering questions that I’d love to talk through.

To list the obvious pros: the pay is great… the team is smart, diverse, friendly… the tech will touch many people… the subject is one I’ve been interested in… and the company will be a badge of honor on my resume. Relocation isn’t a problem.

But, I’ve been immersed in 1-off projects for 3+ years now, mostly centered on web, UX, front-end. It seems this new job will be low-level, CS-heavy, and involve major architectural decisions. I have a CS degree and I'm confident that I can learn on the job, but I’m worried that my relative lack of experience in these areas (plus corporate experience in general) will make me a slow starter. Can systems design be picked up over months? Is it easy to adjust to an office when you've never had a meeting or even asked for help for years? The last thing I’d want is to disappoint my team.

I’m also concerned about the policy wrt personal projects. Nothing you code outside work is cleared for public release. Normally this would be a nonstarter, but the rest of the job is so good that I have to consider it. On a pro level, I fear my skills will stagnate if I can’t build cool stuff for others to enjoy. On a personal level, it feels wrong that the company will own my entire output. There’s a chance I’ll feel chronically depressed over it.

Finally, I’m not sure how to switch my thinking from «free indie dev» to «corporate worker». I’m very interested in the job, but I’ve defined myself as a free spirit over the past few years, working out of cafes and building stuff that tickles my fancy. How do I transition without feeling crappy or losing myself?

Have any of you had to deal with these kinds of questions? Would appreciate advice. Thank you.

13 comments

[ 2.8 ms ] story [ 34.8 ms ] thread
Ask to speak to members of the team you will be joining. Ask them what the day to day looks like and what success metrics look like. Pay close attention to any inconsistencies that come up in different conversations.
I already spoke to a lot of them during my interviews, everything seemed to be good.
I meant in a longer informal setting - possibly over coffee / drinks in 1:1 sessions.
"Nothing you code outside work is cleared for public release."

Locate that cluse in your employment contract and cross it out and initial before you sign it. I'm willing to bet this is entirely negotiable and nobody will even blink. I speak from experience. After all, you own intellectual property already and it needs maintenance. So no, they don't get to own work you do on your own time.

If the company pushes back you really don't want to work for them. Seriously.

Is this the case for larger companies as well?
The hiring manager made it clear that exceptions are very rarely made in this regard. This is a sizeable company with little flexibility about these things (from what I can tell).

> If the company pushes back you really don't want to work for them. Seriously.

I would have agreed with you in the past, but the offer is otherwise exceptional. Like, getting-into-Harvard exceptional, from what I can tell, especially for someone with such a weird career track.

CA Labour code section 2870-2872

> "2870. (a) Any provision in an employment agreement which provides that an employee shall assign, or offer to assign, any of his or her rights in an invention to his or her employer shall not apply to an invention that the employee developed entirely on his or her own time without using the employer's equipment, supplies, facilities, or trade secret information"

https://web.archive.org/web/20160516081153/http://www.leginf...

They can be as unflexible about this as they want. Stuff you built outside the scope of the company, AND outside working hours, AND not using company resources, is yours.

> "(b) To the extent a provision in an employment agreement purports to require an employee to assign an invention otherwise excluded from being required to be assigned under subdivision (a), the provision is against the public policy of this state and is unenforceable. "

The reason why you want to cross out that section isn't so much as to signal non-compliance as to communicate, that that part of the contract is illegal by California law.

If the contract does not have a special clause about illegality, leaving that paragraph in might make the entire contract void.

True, but the problem is this:

> Relate at the time of conception or reduction to practice of the invention to the employer's business, or actual or demonstrably anticipated research or development of the employer...

If the company has its fingers in many pies across the software landscape, then this might apply to a majority of software that could be written. Also, the company didn't imply that they would try to claim ownership, only that such behavior wouldn't be permitted by company policy.

Who cares if you’re qualified tbqh. If the pay is sufficient and/or you like the team, take it, if not pass. There’s unlikely to be other benefits beyond those. And nothing these companies are doing is that tough that it requires super intelligence anyway.
(comment deleted)
If they offered you a job after technical evaluations, they think you're capable of the work. Don't underestimate yourself.
I'm in your place. TBH it's not going to be easy to get back into the CS grind but you'll get there; the basic thing to do is give yourself time and be patient with yourself. As for those around you, they picked you knowing where you stand -- they see something in you that makes them believe you will add value. Trust them on that.
Considering (and somewhat assuming) you can get back to freelance stuff with relative ease I'd say take the opportunity.