Congrats on making it past the phone screen! You have proven that you possess the skill of speech, have not appeared overtly threatening, and the company is willing to spend more of their time vetting you. Whether you’re a senior developer, or a first-timer, you may be worried about what comes next. The interview styles at tech companies vary widely, but there are some universal pro tips that can shift the process in your favor.
Specific is terrific
Know and study specific details. Fumbling around and speaking only in vague generalities does not display hard technical knowledge. Specific details are things like exact function names, workarounds or tradeoffs within specific implementations, and runtime performance. Discuss well-reasoned opinions regarding why you prefer one technique/architecture pattern/framework over another. Lastly, if you don’t know - be honest. The interviewer knows when you’re faking.
Take the wheel, but not too hard
The goal of a technical interview is not to determine if you can code - most companies can filter that out from a resume, Github profile and phone screen. Besides testing how deep your technical skills go, the interviewer will be looking to quantify what types of problems you find interesting, how well you communicate abstract technical topics, and your personal interaction style. It’s a challenge to do this in a limited amount of time, so be mindful of keeping your answers concise and specific. During the technical discussion, the details of one discipline typically overlap into other related areas. For example, answering a question about database optimization can lead into a discussion about networking, which leads to unit testing. Steer the conversation to realms that you know well, and demonstrate that you possess deep knowledge. From an interviewing standpoint, possessing deep knowledge in one area is a big value indicator that you have what it takes to gain deep insight into other areas as needed. Before the interview, make a list of at least five specific areas that you feel best exhibit your technical chops. Rehearse them, and try your best to hit on as many points during the interview.
Come with prepared questions
The last interview question is one most applicants have the hardest time with.
“Do you have any questions for me?”
Do your research, and make sure you know how the company makes money. Ask about their plans for the next quarter. Ask about how a recent news event affected their internal morale. But most importantly, ask about the day-to-day of the job:
- “How would you describe the development culture?”
- “Do engineers pair-program, or mostly work alone?”
- “How much overtime have you worked in the past month?”
- “How long are your sprints?”
- “How widespread is X programming language at the company?”
- “What do you like best working at the company?”
An interview is half about a company getting to know you; don’t forget this is also your chance to interview the company.
Relax, this isn’t the only job
Proving yourself through answering arcane technical trivia and whiteboard coding can take its toll on the mind and the ego. Don’t pin all hopes on one job. The anxiety can turn into “interview stage fright” and no job is worth that. Instead, treat passing an interview like an engineering problem. Gather as much data as you can by interviewing for jobs you may never take. Do mock interviews with friends. Practice whiteboarding in front of your dog. Gather as much information as possible and take note of questions you don’t know. Even if you’re an experienced programmer, put time aside to practice the more arcane bits you may not encounter with day-to-day work. Tech is a huge and exciting world with many fantastic possibilities. The right job is out there for you.
If you’d like to put these tips to use right now, visit our careers page at http://martiancraft.com/careers/