Skip to content

Instantly share code, notes, and snippets.

@nathanleclaire
Last active April 24, 2018 03:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nathanleclaire/6fc2673b86fffcc4debd976baac9d879 to your computer and use it in GitHub Desktop.
Save nathanleclaire/6fc2673b86fffcc4debd976baac9d879 to your computer and use it in GitHub Desktop.
Holbie Students Guide to Get First Job

How Do You Get a New Job?

How do you get a new job in the tech industry? Perhaps even your first job? What if you don't have any experience? Are you screwed?

No. You can do it. You will get rejected. A LOT. Be prepared to experience 15 or more rejections for every offer you get. It will suck. But if you go out and pound the pavement, if you keep persisting, and if you keep improving your skills - some daring soul will take a chance on you, you will get a job, and the next time you go through the whole circus it will be easier.

It's not going to be easy, but it's possible. And every subsequent job hop (if you're doing it right) should be easier for you, so you might as well get started now. If you execute your job search(es) well, the difference it will make over your whole career will add up to anywhere from tens of thousands to millions of dollars, depending on how lucky you get and how savvy you are. There are, of course, many other benefits from landing a good job from flexible working hours to on-site perks to general happiness and well being.

The general method is simple.

  1. Get a System - Figure out how you will get a new job and stick to the system. Don't just try to go by feel, you'll fail.
  2. Get Leads - Identify companies you might like to work for and get them initially interested in you.
  3. Woo Them In Interview - Anywhere from calls to whiteboard coding to onsite interviews will be asked of you. Be ready.
  4. Get an Offer or Rejection - Get them to put their money where their mouth is or stop bothering with them.
  5. NEGOTIATE - Push the boundaries of the offer to see what you can get out of it.

The ideal outcome, i.e., what you should aim for at the end of this process is to have multiple competing offers coming in from several different companies. This is important! Even if you think you know who you want to work for, don't stop interviewing with others! This could make a difference of many thousands of dollars over your career!

The second best outcome is to get a good offer from a company you'd like to work for, and you think you will learn a lot from.

It's worth noting that a lot of this is optimized towards startups since that's what I know. YMMV

Get a System

If you want to get a new job, you have to have a system. Seriously, track this stuff or be prepared to fail.

What does this mean? In its simplest form, have a spreadsheet tracking:

  • the list of companies you've applied to
  • who your point of contact is
  • what the role is
  • what stage you are with them (Cold Email? Call? Onsite? Offer?)
  • when you should message them next

...and perhaps a bit more, but those are the basics.

Some people do this more or less unconciously. Great if that worked for them, but it won't neccessarily work for you. Without it, there's no way to evaluate your performance, and track the various stages of the pipeline you are in with various companies. Did that hiring manager not contact you because you were miserable garbage in the interview or because they simply got busy? Without the system, you won't have any way to know when you should e-mail them to ask. Therefore, otherwise good opportunities will fade away. It should be obvious why this is a bad thing.

Ask yourself this: If someone offered you $20K in exchange for a few hours of data entry into a Google Spreadsheet, would you do the data entry? You may be nodding your head, but a huge majority of people walk into a job hunt with no system and nothing prepared, and lose big on money and opportunities because of it. Put in the work and it will pay off.

Last point: Companies have this for candidates too. They use systems like Lever to track you and everyone else who walks in the door.

They are already at a huge advantage compared to you because they have money and they have other candidates in the pipeline. Do everything in your power to correct this imbalance.

Getting Leads

You'll take 3 main approaches to get in the pipeline to potentially get hired somewhere:

  1. Warm Intros - Get one of your connections to introduce you to a hiring manager-ish type person. They may sometimes hand you off to a recruiter type person to get you moving along the process, but always start with the hiring manager - they actually care.
  2. Cold Intros - Just straight up e-mail a recruiter or (at smaller companies) founder/CEO/CTO/COO, introduce yourself, say why you're interested in the company and what role, and ask to speak on the phone sometime.
    1. Yes, this actually works.
    2. No, you won't annoy them. (Or if you do, they'll deal with it.)
  3. Job Hunting Apps - These are sites like Hired.com or TripleByte that will put you up for "auction" to a bunch of companies. I'm not sure I'd recommend these for a Holbie student, but they might be worth looking into. You will get double taxed (you have to give the school some of your salary, as well as these

I'd avoid recruiters and e-mail real employees directly if possible. They know the actual requirements of the job, won't spam you, and will be flattered if you say, "Hey, your work is really cool! I like ". Oh, also, you'll get paid less if you get through recruiters, since they usually take a cut of your salary etc. if you land at that company. That said, sometimes you can't avoid recruiters - be courteous, realize sometimes they'll do goofy stuff and they're a needed part of the ecosystem.

DO NOT BOTHER filling out applicant tracking systems (the typical annoying "Upload your resume" crap online) unless asked to do so by a real person, especially if your background is unconventional. The purpose of these tracking systems is largely to filter candidates out because most of them are garbage that couldn't write a line of code to save their life, but they produce a lot of false positives too.

For instance, I have a Philosophy degree. Any HR drone worth their salt is going to throw my application out immediately because they have been told to look for candidates with Computer Science degrees only. If I'd stuck to applying to jobs online, I'd be way further behind in my career. Seriously, learn how to cold email and take people out for coffee. Even if they can't hire you, they might want to help you, and introduce you to other folks.

Suggested Reading:

Homework: Identify 10 companies that sit at the vertex of "I'm interested" and "It's possible for me to work this role".

Woo Them in Interview

Tech interviewing has been written on ad nauseum. Some quick tips and other resources -

  • Be a scheduling master - If you're requesting a meeting, don't make that person think. Send them some proposed times to get the ball rolling.
  • Run a solid first touch call - When you talk to people for the first time, ask lots of questions and express an interest in what they're working on. You'll get points for genuine interest and appreciation.
  • Remember the inmates run the asylum. - Rejection isn't personal. Plenty of dumbasses in SF / Silicon Valley have funding and now are in a position to hire. You might not want to work for them - they might be funding the company from Daddy's coffers, or they might be narcissistic douches, and so on. But you, being none the wiser, might still end up interviewing at their company anyway. Worse yet, a ton of horrifying methodology around interviewing programmers is commonplace. Don't let the sting of rejection get you down.
  • Practice coding in a Google Doc (or CoderPad) or on a whiteboard until your fingers bleed. - How do you get to Carnegie Hall? Practice, practice, practice. If you work those intial nerves out with a mentor or a friend grilling you on coding, you'll be that much better prepared for the interview. Like it or not, a lot of interviews involve whipping up semi-passable code on the fly, so you better be able to do it.

Negotiating

Basically:

  • Don't tell them your current salary - It will only be used to haggle you down. (think "They're making $45K now, so they should be ecstatic with $60K!" - meanwhile they would have offered $75K if you said nothing)
    • If they say "we just need something for the form" - Say you want to evaluate fit before talking money and just mark down N/A
    • If they say "we need to know what range you're looking for" - Ask them to name a range and you'll say if you're agreeable or not.
  • More offers == Better negotating position - In order to negotiate well, you should have multiple offers. The threat of you going to another company after they've already invested a bunch of resources into interviewing you and making an offer has way more teeth than just demanding more money.
  • That said, even if you have only one offer, ask for more money anyway - A company once made me an offer that felt low. I told them I wanted about $25,000 more salary to consider it a fair offer. They upped the offer without hesitation. You can make $25,000+ more per year just by enduring some mild awkwardness and asking for what you're worth.
  • If they won't budge on salary, look for other improvements to the offer - You can definitely get more paid time off, or negotiate working remotely, or more stock options, etc. And speaking of options...

My recommendation is to treat startup stock options as worth $0. But you might want to evaluate them, and if so, you need to know at least:

  • Your strike price
  • The company's current fair market value
  • number of shares you will vest
    • Remember, the grant is usually over 4 years time! You have to stay there 4 years to get the full amount of shares offered. That's a long fucking time! Most people get new jobs after 1 or 2 years. Plan for that.
  • The total number of shares outstanding

After accounting for vesting (you only gain options if you "vest" them over time at startups), the share ownership you can potentially acquire of a company is:

(number of shares you will vest) / (total number of shares outstanding)

Odds are unless you are a very early employee at a startup this will be less than 0.1%. You can get completely fucked a million ways on options which is why I recommend to value them at $0.

GET THAT CASH MONEY (SALARY)! A STARTUP IS NOT YOUR FRIEND AND NOT YOUR FAMILY! THEY WILL 100% THROW YOU UNDER THE BUS TO PROTECT THEMSELVES AND THEIR INVESTORS! YOU MEAN NOTHING TO THEM!

Do the wrong thing with stock options and you could end up penniless. YOU HAVE BEEN WARNED!

Some of you will ignore my advice and join startups anyway with dreams of getting rich. Don't do that. If you join a startup, and there are a lot of good reasons to do so (e.g., they're the only people crazy enough to take a chance on you), then optimize for the smartest people who will hire you and the best work environment. You will be paid in knowledge and expanding your network.

Everyone thinks that the Valley is full of lunatics pulling 100 hour work weeks but plenty of companies let programmers slide with 35-40 hour work weeks if they're smart about getting stuff done and prove themselves valuable. If you do want to work 100 hour weeks, just start your own company. The drop off in shares from last founder to first employee is absolutely massive, and "broke because I founded my own company" is a much better look in a future job hunt than "broke because the startup I was working for went under".

Look into 83b election, early exercise. You absolutely want this if you can get it. Once you've been hired, your negotiating position is garbage, so get this redlined into the original contract NOW if you can. Otherwise, you might find yourself in a situation where if you want to leave a company and buy your shares, you will be expected to plunk down anywhere from $1000 to millions of dollars in taxes (AMT). If you have early exercise and a good salary, you can save money and buy your shares ASAP to avoid paying this horrible tax quirk that totally fucks startup employees over.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment