People are returning from summer vacations, including hiring managers and folks like you seeking open positions. Many people choose this time of year to switch jobs after receiving annual rewards and reflecting on their current roles. I’ve written extensively about recruiting (Permissible poaching, Out of the interview loop, Hire’s remorse) and about switching jobs (A change would do you good, Get a job: Finding new roles, The new guy (or gal)). I’ve even written about resumes and cover letters (Supercharged resume attached). However, I’ve never described how to prepare for and subsequently shine in interviews.
The point of an interview is to answer three key questions: Are you capable of doing the job? Do you want to do the job? Are you a good fit for the job? These are two-way questions. The hiring manager is deciding whether to offer you the job, and you are deciding whether to accept that offer. Your goal for an interview is to ensure those three key questions are answered accurately for both of you.
Many people spend thousands of dollars on interview preparation and training. If it helps them land a lucrative offer, it’s worth it. However, I can save you some time and money by covering the basics. I’ve read the books, articles, and curriculum and helped lots of people get hired. Let’s talk about preparing for an interview, introducing yourself, solving design and coding problems, answering behavioral questions, and reflecting after an interview.
Are you ready?
Before a job pre-screening or interview, you want to prepare yourself mentally and physically. Interviews are typically stressful and strange situations. They offer a short amount of time to answer questions you’re rarely asked in daily life, show enthusiasm for a hypothetical job, gain a great deal of information, and then make an important decision. You’re probably nervous. That’s expected and helpful for indicating you want the job.
In addition to practicing answers to coding, design, and behavioral questions (more on each of these later), you’ll want to research the company and job to demonstrate your interest in the role and develop questions to ask your interviewer(s). You’ll have a limited time, so plan to only ask questions that you need answered before considering an offer and whose answers can’t be found on the company website or in the job description. How much travel is involved? What is expected daily, weekly, and monthly? How long will it take to be promoted? Consider what would significantly impact your decision to accept or reject an offer.
Before the interview, dress as professionally as you would to give a presentation to your manager’s manager. Use the bathroom so that you’re comfortable, and take a few relaxing breaths. Check your look in the mirror and pose like a superhero (this actually triggers chemicals in your body that give you confidence). For remote interviews, do all these steps and double-check your camera, mic, and networking. Now you’re ready.
Remember, you want to present yourself accurately during the interview. If you come across as better than you are, you won’t live up to those expectations. If you come across as worse, you won’t be given a fair chance. Aim to be yourself.
For more on feeling self-confident and less like an imposter, read I’m not all that.
Why so serious?
I’ve mentioned appearing interested in doing the job several times. Why is interest so important? You might believe, as many do, that the primary focus of interviews is capability. Certainly, hiring managers only consider people who can perform the job, but many applicants are capable. Thus, the decision comes down to desire and fit.
But what if you are far more capable than other candidates? First, that’s rare. Second, that may be unwanted. You might be overqualified. You might demand higher pay or a fast promotion, which could be problematic for the hiring manager.
The hiring manager chooses between multiple capable candidates based on desire and fit. You can’t control fit unless you know folks on the team (networking is important), but you can show interest in doing the job. That’s crucial because, assuming there’s only one open position, the hiring manager can only offer the job to one candidate at a time.
While the first candidate considers the offer, other qualified candidates are free to take other offers (and often do). Thus, the hiring manager should prioritize offering first to a candidate who’s likely to accept, thus closing the position quickly and minimizing the risk of a rejected offer. Also, someone passionate about the job is likely to perform it better. By appearing interested in doing the job, you put yourself at the front of the line.
For more about being passionate about your job and your customers, read Customer obsession.
Let me introduce you
You’re now prepared, excited, and ready, but interviews often feel out of your control. You don’t control the questions or exactly how people will respond to your answers, your body language, or how you talk. When you introduce yourself, however, you get an opportunity to set the tone and control how people perceive you.
Usually, when an interview starts, the interviewer will introduce themself and ask how you’re doing. You can respond with your name and then mention things that will govern how the interviewer engages with you. Do this for each new interviewer you meet.
The most common thing to mention is that you are excited and a bit nervous. Doing so relieves tension in the room (virtual or physical), establishes trust through being vulnerable, and encourages the interviewer to forgive stumbles you might make. It also shows self-confidence since you are willing to be open.
You should also mention anything else that might impact the interview or your interviewer’s perception of you. “I usually need a few seconds to collect my thoughts, so please forgive a slight delay in my answers.” “I’m deaf in my left ear, so please understand if I need you to repeat a question.” “I have a slight stutter (or an accent), so please let me know if you have trouble understanding me.” “I tend to go on a little long, so please feel free to interrupt me as needed.”
Many people are self-conscious about these kinds of traits and are afraid to mention them. However, anything different about you will be noticed by your interviewer. Instead of having a slight delay when responding, a deaf ear, a stutter, or a tendency to talk, your interviewer may assume you’re unintelligent, inattentive, insecure, or self-absorbed. Those assessments are incorrect and inappropriate, but absent an explanation from you, your interviewer won’t know any better. Instead, provide concise and clear guidance to your interviewer after you introduce yourself to help both of you gain the most accurate assessment of each other.
That’s a problem
For software engineer positions, the first interview question is often a design or coding problem. Even if you’re great at design and coding, you’ll want to practice these exercises on small problems with limited time. Why? Because when you design and code on the job, you’ve got the internet, plenty of time, all your favorite tools, and problems with no clear solutions. When you design and code for an interview, you’ve got no internet, 20 minutes or fewer, a whiteboard or lame web app, and an expected solution. It’s different.
To practice design problems, try designing a common household item with nothing but a sketchpad and a 20-minute timer. Nice examples include alarm clocks, ovens, and thermostats. First, define a list of requirements, then design a minimum viable product, check that you’ve hit the key requirements, and then add extras. Having someone evaluate you and provide feedback on requirements and initial designs is helpful. Try a few exercises like this.
To practice coding problems, use an online site that collects them and provides answers and analysis. Some examples include Coderbyte, CodeChef, and LeetCode. Choose the “Easy” problems since interviewers are typically limited to around 20 minutes for coding problems. The idea is to practice coding outside your usual IDE in a limited web app environment on a small challenge with a known solution. That’s not what you’d do in real life, but interviews aren’t real life. Do a few problems, and then continue practicing until you can solve easy problems in 20 minutes or less. If you get advanced notice of the lame web app you must use for the interview, practice using it in test or “single user” mode.
During your interview, take full advantage of the live human being assessing you. Ask about requirements, ensure you understand the problem, summarize what you’re doing as you go, and get feedback after each step (“Do I have the right idea? Did I miss anything?”). You can even ask your interviewer if it’s okay for you to use your favorite IDE (sharing your screen if you’re remote) and to do web searches on your behalf. Only fools ignore the enormous advantage of having someone who knows the solution right across from them. Don’t be a fool.
It’s fine if you can’t finish your design or code in the allotted time. Your interviewer knows this isn’t real life. The idea is to evaluate whether you know what to do and how to do it, not whether you can solve a fictitious problem in a fabricated environment. The exception is when you’re given a week to complete a significant problem at home. In these scenarios, you get to use the internet, your IDE, and anything else you need within the interviewer’s specified limits. You should solve these take-home problems.
Tell me a story
The rest of the interview will consist of behavioral questions. “Tell me about your values (or how you exhibit the following values).” “How do you resolve conflicts between teams?” “What do you do when you disagree with your manager?” There are more straightforward questions, like best and worst projects, but most behavioral questions are open-ended and full of gray areas.
The best way to answer all behavioral questions is with a story. Some people like to sound smart by quoting books or talks, but those answers are boring and fail to demonstrate competence. In contrast, real stories from your past are compelling, easy to remember, easy to tell, and prove you have real-life experience. Tell real stories.
When your interviewer asks a behavioral question (“How do you demonstrate integrity?”), start by acknowledging the question. (“Integrity is central to building trust across teams.”) Doing so makes it clear you understood the question and gives the interviewer a chance to redirect you if you didn’t.
Next, transition right to a story (“I got a chance to demonstrate integrity last year when …”). You can also transition with “For example” or “There was a time.” Regardless, tell the first related story that pops into your head. It’s not necessary to think of the best story—every story is great, and seeking the “best story” can blow your momentum. Jump right into the first story you think of and tell it as you would to a friend outside your team. Be honest and include the good and bad—this makes the story more compelling and believable. Avoid diving into details that aren’t essential to the story and may distract from your message.
It’s important for your story to have a positive ending. This is an interview—no downers. If you happen to pick a story that ends badly, finish by describing everything you learned from the experience. There’s always an upside. Then, if you can, tie the story back to the job you’re applying for. (“And that’s why integrity is so important, which is part of why I’m applying for this job. Your company has a reputation for integrity, which makes it a place I want to be.”) Tying back to the job shows you’re interested.
If your interviewer asks you about something problematic in your past (getting laid off, a gap between jobs, a short stint), provide a short honest answer that explains the situation, and then switch to talking about the future. (“It was disappointing to be laid off, but it gave me the opportunity to find the right job for me. Your company, particularly your team, is just what I’m seeking.”) Interviewers only ask about the past to learn what you’d be like in the job going forward. Thus, the focus should always be on the future. Try practicing some behavioral questions with a coach, friend, or loved one, including the questions you’re dreading.
For more about integrity and transparency, read More than open and honest.
What did we learn?
At the end of your interview, you may still have time for questions. Use the ones you prepared in advance. It’s okay to ask the same question of multiple interviewers from the same team. If you still have time, ask about their job and their business. People love talking about themselves.
Once the interview is complete, take a breather, smile at getting through it, and reflect on what you’ve learned. Take notes about your impressions as well as the answers to the questions you asked. Trust your gut instincts about the team culture and how you would get along with team members. Pay special attention to your impressions of your future manager—that person will be critical to your growth and happiness.
For information on managing up, read Managing your management.
Back to the future
Interviews are quite stressful, but they aren’t that complicated. Read about the job and company in advance, listing questions you need answered before considering an offer. Practice design and coding questions in an environment and timeframe close to that of an interview. Practice telling stories that end on a positive and/or learning note in response to an interviewer’s behavioral questions, including questions you dread getting asked. If you can, tie the end of your answers back to why you’d love the job. Dress professionally, use the bathroom, check your look, relax, make yourself big in the mirror, and then just be yourself with a focus on the future.
Remember, an interview needs to address the three key areas: your capability, desire, and fit. Your designs, code, and stories will demonstrate you’re capable of doing the job. Tying your stories back to the job you’re applying for and staying focused on the future show you want the job. Being your authentic self ensures a good fit. If you don’t get an offer, that’s fine. It wasn’t a fit, so thank goodness you didn’t get the job. If you get an offer, you should have all the information you need to make your choice. Now go out there and grab that next great opportunity!
Want personalized coaching on this topic or any other challenge? Schedule a free, confidential call. I provide one-on-one career coaching with an emphasis on underrepresented, midcareer software professionals. Find out more at Ally for Onlys in Tech.