Now that you know how to beef up your resume and how to sell yourself, it’s time for the hard part: actually selling yourself. And by that, we mean the interview. There’s no denying that the interview process itself is generally the most stressful part of the job search process for candidates, but plenty of practice and preparation can go a long way. Here is some of our expert advice on how to prep, what to avoid and what to do when it’s all over.
Prepare and Practice
Studying isn’t just for students. It’s a good idea to read technical interview prep books such as The Google Resume and Cracking the Coding Interview by Gayle Laakmann McDowell. Also, Brush up on algorithms and other computer science fundamentals. Be familiar with different questions about design architecture, front-end coding (e.g. HTML5 and CC), backend-coding (e.g. Java and Ruby) and general problem solving questions. Additionally, we’ve seen many software engineers tripped up in the by being unable to think about software in a macro level. To help with this, really take the time to think about software design architecture, understand the problems faced by companies like Twitter or Uber, and try to come up with ways to solve those problems.
In addition to being able to sell yourself on a high level, be sure to practice skills you may be tested on. Examples include white boarding your thought process and explaining your code to others; pair program with a buddy and practice coding without online/physical references; and coding with a timer, and force yourself to code certain features within a defined time constraint. Hackathons put on by AngelHack, StartupWeekend and TopCoder are great places to practicing coding in a new environment, in front of unfamiliar people, while working in new development environments with less familiar tools.
Identify Good Weaknesses
One of the toughest questions to confront in an interview is identifying your weaknesses, but it’s a popular question so it’s important to be prepared for it. There are two key steps to answering this question. The first is to choose a genuine and specific answer. Take the time to think about all the things you aren’t the best at, and stay away from cheesy weaknesses like “I work too hard” or “I’m a perfectionist.” The second step is explaining what actions you are taking to alleviate that weakness. This step is even more important than the first one because it shows the interviewer that you trying to improve yourself.
Another tack is to explain recent weaknesses that you have already improved upon. For example, if you used to write lengthy code, and then improved your ability to write more efficient code, mention how you improved in being a better craftsman. For a lead software engineer, it might be that you used to overcommit yourself and/or your team and missed internal deadlines, but now you know how to focus on the core features and get things done on time.
Avoid Common (and Not So Common) Pitfalls
There are some obvious pitfalls that always bear repeating: don’t be late, don’t have bad hygiene and don’t show up to an interview with no understanding of the company’s products and vision.
Also, be aware that not having clear goals might suggest that you aren’t very motivated, and not having questions to ask interviewers or just passively answering questions without engaging in conversation may show a lack of interest. On the flip side, being too verbose, being condescending to your interviewers, or badmouthing past employers or coworkers can indicate that you are a bad team player who is unwilling to listen to other people’s opinions.
Some other less obvious pitfalls are coming across as being too focused or dogmatic about one technical language. Companies use different tools to solve problems, and you don’t want to come across as too rigid in your thinking. Also, not having hobbies can be a red flag for many startups, who are all about having a strong technical team and culture.
A good rule of thumb is to send a thank you email with highlights of your conversation with 24 hours of an interview, and really insert your personality as much as possible. In most cases, it’s not going to make or break your interview, but a good follow-up could get you the job it the company is trying to decide between you and a similarly qualified candidate.
If it’s a job you really want, send handwritten thank you notes to your interviewers. Handwritten notes are a rarity these days, so this will really make you stand out and could be what ends up landing you your dream job!