A while ago I wrote about how companies can hire the best engineers. Here’s the other side of that process: how to find your engineering dream job.
Congratulations! Whether you’ve decided it’s time to move on from your current job, you just quit, or you were laid off, you already have a new job – finding your next job! Finding a new job can be more work than having a job. Yeah, the pay sucks, but it can be fun and rewarding in the end. During my last job search, I loved catching up with old friends to find out where they were and met a lot of interesting new people.
Disclaimer: as I noted in my last post, this is written more for engineering jobs where the market is very strong and you may be looking at lots of opportunities and multiple offers. Unfortunately the job market is not so sunny for many other lines of work, so some of the tips here may be less relevant.
Anyway, here’s how to approach your new job.
Step 0: Grieve your last loss
Changing jobs can be very stressful. It can be trying, especially if you didn’t leave your last job on your own terms or it didn’t work out like you had hoped. The first thing you need to do is take some time, grieve for your last job and process the end of it. The last thing you want is to be in an interview and let feelings of anger or sadness come out with a potential future employer. Take a weekend, take a week, take a month, but before you start looking again, make sure you feel closure on your last job.
Step 1: Stock your armory
I can’t fathom a serious job search these days without using LinkedIn. In fact, I used it exclusively as my resume. (For recruiters who insist on a PDF version, there’s an export link.) Fork over $25 a month for LinkedIn Premium to get all the bonus functionality, the best being able to see who’s been looking at your profile. You can’t do that with a PDF or Word resume you’re emailing around.
Update your profile with your latest job details, update details of your previous roles, add any awards, patents and solicit recommendations.
Step 2: Strategize
There are three questions every employer is going ask you, so you want to think hard about them and make sure you know exactly how you’re going to respond.
- What do you really want to do?
What drives you? What kind of work gets you so charged up you can’t sleep at night? What have been your favorite professional moments?
- Why do you want to work here?
Given your answer to the previous question, how does a company align (or not) with what you want to do? This will also help you figure out your targets for step 2.
- Why did you leave your last job?
This may be the trickiest one, especially if you didn’t leave your last job on great terms. Be honest without being disparaging of yourself or your former employer. Future employers don’t want to hire someone who has a history of bitterly remembering former employers.
Step 3: Pick your targets
Start making a list of potential employers. These may be companies you admire, places where friends work, or even places you’ve worked before. For Boston startups, I found Startups in Boston, BosInno, @ScottKirsner, and Xconomy to be good sources for figuring out who’s hot and who’s hiring. Look for companies that are growing or recently got funding.
At this point, I think it’s good to get organized with a spreadsheet that tracks all the information you’re going to gather on each company. Here’s a template of the one I used. Copy it and tweak it to your needs.
The last set of columns are a bunch of subjective metrics I used to rate each company. While I didn’t simply take the job with the highest score, it did help me rationalize and compare each opportunity.
Step 4: Attack!
It’s time to get yourself out there. Your LinkedIn updates may have already gotten you some bites, but now’s the time to be direct.
You may not want to hit all your companies all at once. Here’s why – in general, the bigger company, the slower their hiring process is going to be. If you apply to a big company and a tiny startup on the same day and you eventually get offers from both, you’ll likely get the offer from the startup way earlier. This puts you in a pickle: do you wait to see if the big company will give you an offer or take the startup’s offer? An offer may have an expiration date on it too, making it more complicated. Now, a company that really wants you will be generous with the expiration or offer to extend it if you need time, but you could still end up with a mismatch in timing.
It’s in your best interest to have as many offers in at the same time as possible. It helps you to compare the offers against each other and negotiate if the one you want is lacking in any way. That said, this is a tricky dance to pull off. Potential employers don’t want to have to compete and they also want you to want them just as much as they want you. So you may not want to volunteer information about what other offers you have or what you’re waiting on. Just as you want companies to respect you, respect them as well, because you want to start off the relationship right with the one you take and keep the door open with the ones you don’t.
Find the resume submission form on each of your target companies’ websites. If you can, try to get referred in through a friend or former colleague at that company via LinkedIn or email. It’s much more likely that you’ll hear back than submitting a faceless website form.
While this is a good start to finding your next job, it’s likely you won’t discover all the companies out there who are hiring or you find interesting. That’s where networking comes in.
Step 5: Infiltrate
Networking is key to building roads into companies and discovering opportunities, especially with small startups that may be hard to find otherwise.
A couple of good ways to meet people are through technical Meetups in your area and joining relevant LinkedIn Groups. Other social networks like Facebook and Twitter may be useful too, but probably less so than Meetup or LinkedIn.
Be sure to stick around after meetups, talk to the speakers, let them know you’re looking for a new opportunity and ask if they know of places where you’d be a good fit.
All of these activities I would consider active networking. It’s also useful to do more passive networking. For example, every once in a while I would post an update to Twitter and/or Facebook regarding a mildly amusing anecdote from my interview process. While it might have seemed that I was just sharing a funny story, I was also reminding people that I was in the market. Several leads came to me from friends and former coworkers who saw a post and pointed me to an opportunity.
Step 6: Engage in hand-to-hand combat
Eventually you’re going to end up in some interviews, either on the phone, in person and likely both.
To get the offer, you’re going to have to perform well in these and the only way to ensure that is to prepare as much as you can. Here’s some concrete activities to complete before each interview:
- Research the company and make sure you understand their business. Come up with at least one thing (in your opinion) they could do better in case they ask.
- Look for interview questions previously asked on Glassdoor. If you get one of these questions, consider yourself lucky as a good company will retire a question once it becomes public. But nailing a question because you studied it before hand can’t hurt.
- Read Programming Interviews Exposed and The Algorithm Design Manual. They’re both good prep work and refreshers on the fundamental computer science principles that you have forgotten since your college courses. If you get asked any of the questions in these books, you’re very lucky. Most top companies will ask more complicated variations of them.
After the interview, follow up with the recruiter or manager to thank them and also make sure they have a reminder in their inbox to get back to you.
Also, make sure to write down some notes about the company. It’s easy to get cloudy on the details of each company once you’ve talked to a few and you don’t want to annoy a company by asking them the same questions again.
Step 7: Emerge victorious
After interviewing, the hardest part may be the waiting. You may get an offer immediately after the interview or it could take weeks. Again, it’s usually a factor of the company size and the layers of management that may need to be involved in a hiring decision. You can use your LinkedIn Premium account to see if your potential employers are still looking at your profile, even if they’re not directly communicating with you.
When you get an offer, make sure you get it in writing and get clarifications on any questions you have. Before you sign anything, make sure you understand
- Health plan benefits. What’s your cost per paycheck?
- Dental benefits
- Vision benefits
- Stock option value and their vesting schedule
- Who your manager will be
- Expectations for work travel
- Vacation time
- “Normal” working hours
- Work from home policy
- Target bonus and how bonuses are funded
- 401k. Is there matching?
- Transportation costs and time
- Any other special perks
You may want to try commuting to a potential employer’s office during the time you’d normally arrive to make sure you understand how much time it will take and work out any public transportation logistics.
Stock options are very important to understand and many privately held companies may not volunteer all the information you need to calculate their value. What you need is the strike price (or a recent strike price), the number of granted options, and the valuation of the company. Be very suspicious of any company that won’t give you the details to figure this out. This information is often closely held, but they should give you what you need. If not, you may be getting screwed.
Once you have all the information you’ve organized, it’s time to make a decision. For decisions like this, I usually have a gut feeling. While the spreadsheet is there as a rational backup, I usually have one or two options I’m really excited about. That should be your choice.
Congratulations on your choice! However, once you start, it’s still not time to relax. Behave as you’re still being interviewed. Good luck!