Many tech companies are conducting layoffs thanks to economic conditions and over hiring. You may not have interviewed in a while and you might even find it intimidating. I’d like to share some suggestions based on my time as a hiring manager, and mistakes I’ve made interviewing.
Some nuance up front: this is my perspective and yours may vary. This post applies situationally to finding a job as a software engineer or engineering manager. Use your best judgment.
- Recruiters are friends. People love to dig on them, but they are the people who sell you to hiring managers. Their job is literally to get people hired into open roles. Treat them kindly, ask them about the process, and ask for changes to the process as needed.
- Use your network: Ask friends to refer you to places they work. If there are no roles open then ask to chat with a recruiter anyway so you can share what you’re looking for and what you’re not looking for.
- Afterward, ask your recruiter if they can reach out as roles open up. This is especially important now as there are fewer roles open today, but what may not be obvious is that hiring managers tend to get incremental headcount for positions at the beginning of the year.
- In my experience, the least effective way to find jobs is via direct application to company websites. Companies receive many, many applications per position and it’s kind of a crapshoot as to whether you’ll hear back regardless of the quality of your resume.
- Keep your resume succinct. Move old work experience to another doc and add a statement saying “prior work experience available upon request.” Don’t bother adding “references available upon request” — everybody knows that, and references are less commonly requested these days.
- This is key: get lots of sleep the night before your interviews. Anecdotally, I’ve noticed my performance drops meaningfully at work when I don’t sleep well. My answers aren’t as crisp, I’m quicker to become frustrated, and I make more mistakes.
- Schedule interviews close together so you’re able to compare offers. Don’t be scared to apply time pressure based on an offer you have in hand.
- Order interviews from least to most interesting so you can practice and warm up at companies you’re less interested in.
- Prepare for technical interviews: if your interview panel requires programming exercises then buy Cracking the Coding Interview and get a Leetcode subscription. I hate it, but it’s where we’re at. Do the programming exercises — don’t just read them and think “I got this.”
- If your interview panel has architecture/system design interviews then ask your recruiter if the interview focuses on backend or client system design. If it’s the former and you’re not a backend engineer then read this book 2x to prepare.
- Regardless of interview type, you should ask clarifying questions to better understand the problem before diving in. You might otherwise solve the wrong problem or take a suboptimal approach. In fact, not asking clarifying questions is a red flag to many interviewers.
- It can be helpful to pause briefly to gather your thoughts before answering a question. When you need a moment to think, taking a sip of water gives you a visible reason to pause.
- Behavioral interviews are common these days. You might be asked to tell someone about a time you encountered a given situation. If you have an example then give it, and if you don’t then say so (don’t make stuff up!) and ask if an example about a similar situation would help.
- Don’t wing these! Come prepared with stories about situations navigated. Don’t write them down, but consider having a bulleted list to help you recall them. Have a list of your strengths and weaknesses in mind too. There are lists of behavioral questions you can use to practice.
- It’s important to respond succinctly to behavioral questions. Briefly describe the situation, move on to how you handled it, and then share what you would do differently if you faced the situation again. Saying you’d act earlier is generally frowned upon. Don’t ramble.
- You might be asked why you want to leave your previous company. Being laid off does not count negatively against you. It’s good to be honest. However, trash talking your former employer or colleagues comes off as unprofessional. Don’t do that. I recommend you share an honest and diplomatically phrased reason about why you’re looking, and primarily focus on what you want to learn/grow/do at the new job.
- At the end of each question ask “have I answered your question?” and at the end of the interview ask “do you have the signal you need? If not, are there additional questions you need to ask to get it?”
- This isn’t a thread about negotiation, but it’s to your advantage to interview for multiple roles. Some companies may lean on their reputation as an exciting place to work to give you a low offer. Having additional offers helps you in these situations.
- Leveling varies across companies and interview processes are imprecise. This matters because leveling affects your compensation package. You can check https://www.levels.fyi for a rough idea of leveling and compensation.
- Some companies may fail to gather the signal they need during interviews and attempt to downlevel you, promising a quick promotion. Don’t accept this. It’s generally untrue that one can be promoted quickly as it takes most people about 2 years to gather the evidence for promotion. Instead, ask if you can do additional interviews to give the team and hiring manager the signal they need to level you properly.
- If you have substantial time at your current level then I recommend asking to interview at one level up. For instance, if you’re a mid level engineer with 3-4 years at your current level then ask if you can interview at Senior SWE.
That’s all for now. I wish you the best in finding a new job. Follow @amdev on Twitter.