Skip to main content

Creating an Effective Developer Interview Process

Lesson 3 of 16

Components of an Interview

Gayle Laakmann McDowell

Creating an Effective Developer Interview Process

Gayle Laakmann McDowell

Starting under


Get access to this class +2000 more taught by the world's top experts

  • 24/7 access via desktop, mobile, or TV
  • New classes added every month
  • Download lessons for offline viewing
  • Exclusive content for subscribers

Lesson Info

3. Components of an Interview

Lesson Info

Components of an Interview

so I'm gonna do now is lay out a very standard hiring process. My goal is to give you kind of a plug and play process that works well. It's a very standard process bastard, and companies are probably doing something very, very similar to this already very standard process. So typically we have a process. It looks like this. You get some batch of resumes and then somebody hex has to actually go and pull out the right resumes there. Then there's usually some sort of recruiter call, and it might be as kind of. It's usually a sort of a combination between assessing this person's basic skill set background, your their availability, obviously, to actually take a new job. And it might have some basic interview component to it or not. Then you know that point. They hopefully have some sort of fall upon Recruiter, an email about my save recruiter here, By the way I'm talking about certainly, you know, whoever is filling this role, whether it's actually recruiter or if it's your you know, your s...

maller company and it's your CEO CTO since like that, uh so I'm calling that person recruiter for this purpose and it's gonna email after that. Hopefully not all companies are doing a great job of this, but hopefully laying out what kind of expect along the way. Let me talk a bit. About what? What should you should be putting there. That's actually pretty important thing that a lot of people dismiss and then they get a They might get a code assessment in a phone interview. Kind of depends on the company so they could get a homework assignment or some sort of code assessment like hacker rank, stuff like that and a phone interview. Sometimes those are in different orders, and then they the phone interview goes, Well, they come in on site, have you a day of interviews usually and then reach them hard hiding decision and then go out. You go out and actually try to get them to hopefully accept that offer. That's a very standard process. So today I'm gonna talk about we'll see sections when talk about the planning of prep email what you should be putting in there, uh, talk quickly about that and talk about some stuff about coding assessments and homework projects on. Would you be doing that kind of stuff, packable phone interviews on set interviews and also the hiring decision. We'll go over some William Quick things first, but this property? No, actually, a really useful thing to do. So one my old clients company was working with overnight, literally overnight, from one day to the next with them for two days. And it was a little when I made a big improvement on how they on their ability to actually understand someone. Skill set. It's very simple. The recruiter actually, before that, even even the initial like call like Halo Schedule interview or let's schedule, you know, I'd like to talk to on the phone. He actually said You would like to talk to the phone Gilbert understanding. I expect to, You know, we'll probably talk about your favorite project. What sort of things you like to do at this company? Uh, you and you might ask you things like some of the hardest challenges you faced. And so he basically said, These are the exact questions I'm gonna ask you. And the next day, he found he got much better performance out of candidates. It's a very simple thing, but you if you remember back to being a candidate, it's a little bit scary. Somebody asked who is your hardest challenge and you don't have your hardest challenge off the top of your mind. You're racking your brain for something you've done. That's kind of hard would be a lot better if you want to know some of the hardest challenge. If they actually got a couple minutes in advance or a day in advance to think about that, that's not letting them take anything that just gives you actually better data. So actually, tell them you here's the kind of things I expect to ask before we talkin here. This first phone interview with this will focus on coding and will be about this long. People usually asked two questions, and when you come in on site, you'll usually have you to coding interviews of design interview. You tell them what to expect. There is no value in surprising anybody. That doesn't mean you know what it certainly when it comes to coding questions telling them here the specific algal questions you're gonna be asked. No, that's that's going too far, but with some of the behavioral stuff, given a heads up about this kind of stuff would be good that you expect to ask you It's actually pretty useful to have give, like Sure, make sure Candid isn't surprised. So tell him that kind of So you know what to expect. Who will be interviewing Lamb if you don't know the names You for bigger companies, you may not know the exact names, at least the rules. You know, we expect to be interviewing with your sexuality, interviewing with two software nearest etcetera. This all this stuff is actually I'll talk a little bit. It's not gonna be the primary focus today, but talk a little about diversity where it's relevant here. And one of the things to think about here is that candidates who are, you know, women, minorities and your diversity candidates don't always have these networks of having 20 friends who've been through this process before. And they may be a little bit more out of the loop about what these interviews about and why they happen, and so you can actually help your diversity just a little bit by giving out this kind of information. And it's a good thing to give really toe ever anybody, but it's especially useful for cannons who may not have those networks on the other thing is actually giving them tools on how to prepare for interviews. Ah, it's a useful thing to do. People again don't always know what to do. They don't, especially when you talk. Diversity candidates, but also more experienced candidates again may not have the kind of networks that a fresh college grad does, where they say, This is how it how you prepare for interviews, actually guiding them a little bit on what to do. It's easy thing to Dio and makes them not only gives you better data about the performance, but also makes them feel lot better out the process. They don't feel like anybody's trying to trick them or take advantage of them. Catch them off guard. So, actually, given that information simple, easy thing to dio, I'll take you an hour or two to write up this email. I now you've got it so very easy. Very easy work today. Phone interviews talk briefly about this. Sometimes people will Candice and companies have this idea that, like bone interviews, are like this basic little screen, really easy test that doesn't actually do that much good. You actually want to make your phone interviews roughly equipment to the on site. So in one company is talking with who had 90% of candidates on the phone in view were brought on site companies. Actually, expending extra effort because they were doing phone interviews would have actually more efficient for them. Just to bring everybody on site because you're spending an extra hour to for no reason. So your phone interviews should actually challenging roughly equivalent to what the on site interviews should be. You could be a little bit more lax, you know, if you maybe need a three out of four score usually getting offer, maybe you give a you give a little bit of wiggle room there with phone interview but roughly equivalent to what you see on site. And what's nice about this is you. Not only are you get in your weeding out the really bad Candace before you waste all this on site time, but you're also giving cancer heads up about. This is what to expect, if you ask, can it's really easy questions on the phone. They're going to expect that that's what they'll see on site so you have it roughly pulled into what you see on site and then usually what we're talking about for phone interviews is about a 50% pass rate. So that's the kind of number you should be targeting here. I'm not terribly concerned. It's 40% or 60% but when it gets to 80% when it gets to 20% pass rate, you're probably doing something that's not optimal for you. Ultimately, the number of games numbers game, though. If you want to spend that extra time to bring in candidates who aren't performing, gonna perform as well on site or you really, really want to be careful, you'll only bring in very best people. You can shift those numbers how you want, but 50% is usually where it makes sense for most companies. Uh, one other thing I want talk with. There is what you should be talked about in the phone interview again. Roughly equipment on site. Usually what's good is to ask a bit of behavioral questions, But for software engineer, largely technical questions, though not exclusively large last technical questions the one difference with the phone interview when it comes to coding questions is don't have people draw giant diagrams. It's really, really hard to drive by night Search tree in coder pat, right? Like it's just you can't do that. So this is one thing to tell your interviewers. Don't ask questions like that. Ask questions. I just like a raise and hash tables and link list things like that. Things that don't require complex diagrams. It'll just make everyone's life a lot easier. Very simple, but useful to do. Then we come on the on site interviews, usually a good new numbers for ish interviews. Maybe sometimes three. Maybe, sometimes five put up for real interviews on site. Typically, what you're gonna do is your two coding interviews, one design and one behavioral. That's very standard. Uh, they should really all happen in the same day. That should be the target. So if you're having people come back, you know, if you're having people coming on site and then you figure out the new to a second round of on set interviews, it's just a lot of time for a candidate to be taking time off their other job. Their real job, uh, so everything on the same day and also if you're having people come back the next day or, you know, come back couple days later. A week later, you're adding in another week or two. The hard process. So your target should be on the same day. Uh, and what's good about setting it? The target be on the same day, is that Look, this is the target. This is what we want. But things don't always go that way. So if something happens on interviewer, get suddenly sick and you don't have anybody who can cover or, um A You didn't get enough date of the first time since like that. Then worst case you're talking about to, you know, having to come back one more time. Whereas if you're setting a target expectation of to different days of onside interviews now, what happens if something goes wrong? So could give you a little more leeway to go on to second Dave if you really, really have to a target of 11 on side interview. So for interview for actual interviews that day is usually good number. Don't have a new 44 back to back. That's really, really tiring. Give them like 1/5 10 15 minute break. Give him a tour around the office or let them just sit in the room and just play on their phone. That'll be their choice. Just give him a break. It's It's They shouldn't be doing three interviews in a row. That's that's hard. And then, well, if you do lunch, you know if those that covers lunchtime. Obviously, it's a few The candidate don't do coding interviews over lunch. This is This is just so hard. Forget it. It's as hard for the interviewer, and it's just the candidates of not really being eat or they are eating and how they don't have much time. And it just schools your process for no reasons. Just let lunch be lunch. One thing that I really liked. Actually, I have my objections to certain things Google did. But one thing I liked about it was lunch interferes with lunch. They would take you candidates and try to match them up with a lunch lunch interviewer. But the interviewer never really submitted feedback unless something went dramatically wrong. Like the candidate said, something offensive, uh, other. That near the lunch interview was just a like I'm here to talk to you about Google. This is a great cell opportunity, and they try to match up the candidate with somebody who they thought we were late to them. If they got referred by somebody, that would be when they go see their friend on campus. Or if that wasn't the case, then matchup with somebody who went to the same college who has seen the same activity since, like that. Really nice opportunity just to give him a break. Get up, Get them the opportunity to really talk about the company. And it was clear to the can. It's. Or at least it should have been that no feed that will be submitted. So it's a very much an open time to have the can't ask, ask and learn about the company as much as they wanted to give him a really nice break. Don't try to interview over lunch. It's just it's just hard, um, at least on technical interview. If you're going to behavioral stuff so your expectations low, don't allocate, don't expect to do in our behavioral stuff in an hour lunch interview. You need time to eat, too, and then on set interviews, usually about a 25% pass rate is about right again, I'm not, you know, not like 25% of the problem or 30 times a problem, but about 25% in the right ballpark. If you start giving offers to 60 or 70% of people you might want to look at, make sure you really have the right hiring bar in there. You just have sent us in the right ballpark in the actual interview. Generally speaking, you know, this is like I believe in one on one interviews should be, should be the expectation s 02 on one through on interviews. The reason why I discourage you from doing them is again there's pros and cons of everything. But the major reason is it intimidates candidates. People don't really know how to handle this. Two on one situation. You can get also weird group dynamic issues where, like one interviewers had, like, one up each other. I've seen that that's not good on. But also it's just a lot of time. You put two people in the room in every interview, and you are doubling the amount of time you're spending interviewing candidates. Yes, you're getting additional perspective on that interview. But is it really worth doubling the amount of time it takes? Interview somebody So you know there's benefits, but I would be very I would make. I would encourage companies to think very, very carefully if they really, really are getting the value out of a two on one interview, the only limited to the one that said, If you're doing a panel interview 200 interviews for the purpose of training or shadowing and just a periodic thing, that's totally fine. I very much actually encourages shadowing process during the training process, where an interviewer can kind of sit in the room and observe what's going on. That's great tolling cards that. But again, you know, two on one interviews should generally not happen as a routine thing, Uh, and then in the actual interview, the people who should be interviewing largely Pierce to be your interview so soft. NGOs getting a few bites off for 10 years, Uh, in amateur as well. If you're doing team based, hiring should probably be in the interview process and then make sure that the people have defined roles. Some companies are kind of haphazard. It's like these four people go on interview and it's kind after them figure out what they're supposed to do. Not do that we wanna do is have to find roles. So usually we're talking about two coding interviews, one or two design interviews, depending on how much experience a person has and what kind of role. Specifically, they're applying for it. But that's pretty typical. They want to behavior interviews. Sometimes people ask like am I saying that coding is so much more important than anything else? And that's why I have more more coding interviews. Not really. I do think the coding portion is pretty important. We are talking about software engineers, but the reason why encourage extra coding interviews? So ultimately, when you combine a coating interview over the phone or talk about three coating interviews and like one designed one behavioral, the reason why encourage extra coding interviews is because they're not as accurate. They're not as precise. People's performance isn't quite. It's consistent. So design interviews people tend to perform pretty consistently from interview to the inner to interview, so you don't need as many data points coding. There's a lot more things I can kind of go wrong and so and it is very important. So that's why I really encourage extra coding interviews. Eyes not that important, but just extra data points there. Uh and then you with where you're gonna see this, very is foreign amore experience candidate. That's where you might do next to design or actual behavioral interview depends on the person and how you want to shift that around. But that's where that's where this variance will be. But this is a very, very standard process. You don't have to do this, but this is very standard and then feedback. This is a really great thing to do. Thank you. Feedback your candidates. You know, it's just all here, companies say, Oh, we can't do this for legal reasons. That's not really true. You actually can. You can argue that increases your liability, and that's a valid argument does. But there's also plenty of other industries where this is very much common talk to people who are interviewing for big name management consulting firms. They're given feedback throughout the whole process. They're going back after the phone interviews and after everything you absolutely can give feedback might increase liability. I'm not a lawyer, but you absolutely can do this. It's not like you can't do it. Uh, and it's a good thing to Dio. I really like it because I do care about candidates and I'm I think it's up unfortunate for them that they never get this feedback. It's also really great if somebody you know, you captain interview on the phone and they come in in person and, you know, getting them that bit of feedback. It says, Hey, you did well. We want to bring your on site, but maybe should brush up on this. Give me a bit of feedback Even if you can't even if you don't feel comfortable telling them This is why you did poorly you can frame it and more positive light that says, We love to talk to you in another year. Um, we would know So I would encourage you to spend some time focusing on X, Y and Z in the meantime, well, given that in this fever, because feedback, it's just a nice thing to Dio and again comes back to give you, gives cancer more possible experience, and then they go and tell their friends, maybe want to interview this company. Another part of feedback, though, is feedback all the way around. Giving can. It's an avenue to give you feedback. Good to find a mind just interviewed for a company on. In her interview, the interviewer went on basically a political rant. A arguably said some things that were kind of I'm not that arguably pretty, very, very likely sexist about how like, oh, women just want to go by this Like some celebrities like popular Draft Scott, you'll probably doesn't go out right at this interview and go buy this dress, unlike some kind of sex and stuff, and she's clearly she gotten off. And she's like, Nope. This is not The company wanted Join, obviously, and Quarter has no idea. They don't know what happened. They all they know is that they liked her the different offer. And she said No. And really, that's unfortunate for the you know, every company has a bad apples, but you really want to know that information, so make sure that you're really setting for process. That makes it clear that candidates could give you that kind of feedback that makes it very welcome. And so you could do that after a decision has been reached both positively negatively. You can also set the stage very early on to make sure they're your recruiters are being really open with candidates. Make it clear that you can. They can absolutely give you feedback. You will. You'll always keep account confidential on handled, most respectful way you this. There will never be an opportunity for retaliation. You will never, ever let that happen with the reason why my friend didn't get the feedback was. Although she declined this offer, the the interviewer made her so uncomfortable that she is worried that if that goes back to the interviewer, then the interviewer might go retaliate against her and find out where else she's interviewing and, like, Go bad. Now there, uh, which I'm just a is not. It's not the craziest risk with how that interview acted to make sure that you're really getting that feedback. There's I hear so many negative experiences, and very few of them are going back as me back to the company. So not given the opportunity to improve, make sure you're really making that open coming in from online. I just want to get your take on this. So this 1st 1 comes from R. C. And we had a couple people vote on this one, and you have talked about your phone interviews. You talked about on site interviews, but R C wants to know what are the nuances and differences between in person versus virtual interviews. More people are doing, you know, video interviews in addition to the phone. But any tips you could give on virtual interviews. So I I encourage people to come in in person as much as much as you can do it, because there's just a difficulty in the interaction with doing something remote where I want to go up. And I want to fix this person's diagram in some way and I can't do that. And it's really no good unless you're gonna go ship ipads to everybody. There's with, like an apple pan. There's really no good tool to give me simultaneous diagrams. There are tools that can build Tendencias diagrams, but that doesn't It's like drawing a so it just doesn't work out so much apostle doing person if you can. If you have to do a virtual one, um, try to pick questions that don't involve complex diagrams. That's the major thing. It's a this way. You can give a shared coder decoder pad or hacker and could pair window whatever. And we're just drawing an array and I can go modifying array and you can go type up in array much easier than you can get right. Type of a binary search tree action plan that cool. All right, here's another question. Shabaan Miller posted this one, and they say, What is your feedback on approaching a second technical phone interview? Sometimes we don't get an accurate read on a candidate, maybe one or two times a week. And if the interviewer can't make a decision, we do a second technical phone screen with a different interviewer. Have you seen this to be effective, or is it more of a waste of time? I think I think it's OK to do that if something goes wrong. If something do, the interview didn't do a good job in somewhere other or you just didn't get her good. You if that's something that happens every once in a while, if it's happening a ton of times, I might want to look at here. This isn't something went wrong. This is something didn't do great on, so I'd want to look at what else could happen. The hiring process. But ultimately it is absolutely numbers game. So it's not something, you know. This is a calculation equation you could give with. How much time is it spending, you know, to do this extra interview? And if it's taking an extra hour to to do a phone interview when you no realistic, what happens if the first phone interview doesn't go well and you don't have a great read? You probably know it's not an absolute terrible person. It's just that a really quite good enough. Maybe numbers wise makes sense just to have him coming on site anyway. Great. Any questions from our live audience? Great and you? Good. You already got a microphone. Go ahead and ask. Patterns I've seen with candidates is into your wants to stress the candidate for like, I want to see how this candidate performs under stress, and I have always shared a vision that that's not my personal philosophy. But at the same time, the argument is, well, let's say the production out of here. There's an attack and like, how do we How do we make sure that this employee can do well in that scenario? What's your philosophy on that? No, I I think that is ludicrous to do that. I'm This is one thing. I very strong feelings that so first of all, the rash now gotta hear from companies. We want to see how this can handles under handle stress such as a production outage. But that's totally different types of yes, they were both using the same words dress. That's a totally different type of stress. The kind of stress from somebody who seems to not like you is a very different type of stress than a time shortage thing. If you really thought that you needed to testimonies ability to handle an urgent situation, then why would you make Canada and company you just give them a Times test, give them something that actually simulates that which I don't know, silly recommend, but that we more justifiable giving candidates a stress test like making them uncomfortable, and I I do hear a lot of companies do that I think is a terrible idea. It just it makes people not wanna work in your company question over there. Grab a mic. Good. There's one right behind you. You mentioned, um, during the interview prep. It was a good idea to recommend some Resource is for interview prepped candidates. I wonder what are some of the resource is you recommend to candidates before an interview so they can check out. Prepare. Yeah, so I mean, OK, so don't make the sale such. But, um, obviously, you know my ball crack The coating interview is the major brook that other companies recommend. Well, I also have a handout that won't do another talk. That's like a candidate focused thing that gives you will basically a flow toward for how to walk through a question. And so that could be. You get that crackling coding interview dot com, and that's another just it's a flow chart for Here's how you walk through question. You can also give people just I also recommend companies actually type up their own thing. Ideally about. Here's what interview process. Here's what our interview process is. Here's what we're looking for here is why we're doing it and put it in your own words. There's a lot of resource is, and I can't help coming out with. This was a lot of resources to do that. But having something comes a little bit from you that seems customized is also a nice thing to do.

Class Description

In this workshop led by Gayle Laakmann McDowell, former Google software engineer, interviewer and the author of the bestselling book Cracking the Coding Interview, you'll be hands-on, covering all the specifics you'll need to know about coding interviews. It will start with an overview of the hiring process and dive into more detail about types of interview questions (behavioral, knowledge, algorithms/coding, and design). You will learn how to create a hiring process that is efficient, sets a high and consistent bar, and attracts strong candidates.

Although sections of the workshop will be highly technical, non-technical people are encouraged to attend. You will learn:

  • Differences between assessing senior candidates and junior candidates
  • The goals and limitations of technology-specific questions
  • Selecting and asking appropriate algorithm questions
  • Mechanisms to evaluate coding skills, including whiteboards, laptops and code assessment tools
This class is your comprehensive guide to hiring the right developer for your company. 

In Partnership with Greylock Partners 



What an awesome opportunity to learn from one of the best on the topic! This course has value for anyone who's looking to hire or work with technical talent! I've attended tons of talent conferences and this course succinctly and tactically address how to effectively interview engineers. Highly recommended.

Kevin Scott

Terrific class with unique eye opening content. This class applies for any Dev. hiring team, whether startups or large, established companies. I recommend this training tool to anyone wanting to help others improve their own interviewing skill set and build dynamic hiring processes / plans.


This class was exactly as billed - I received in depth knowledge of how to create great developer interviews. Gayle was very organized and presented her info in a dynamic, inter-active environment. It was really great to be part of the studio audience.