Menu Icon

Getting Apps Done

Stop Asking Stupid Interview Questions!

February 07, 2020

1x
Audio Player 15 Seconds Back Button Audio Player Play/Pause Button Audio Player 15 Seconds Forward Button

Episode

58

Kel and Joshua discuss some really crap interview questions… and making them better!

Warning!! Joshua swears more times in this episode than all other episodes combined… I think it was a total of 2-3? Still probably not the best episode for children!

Be sure to check out our new Slack community to meet others who are facing the same things you are and share your journeys!

Tune-in using
Listen on iTunes Listen on Spotify Listen on Google Play Listen on Overcast Listen on Tune In Link to our RSS Feed
  • 00:00 Joshua

    Hey folks, welcome to getting apps done. A mostly nontechnical podcast about building software. I'm your host Josh.

  • 00:11 Kel

    And I'm the co-host Kel.

  • 00:13 Joshua

    And on this podcast we don't talk about technical things most of the time. We talk about mostly nontechnical things. The other skills and experiences that make you a better developer that aren't syntax or frameworks or anything like that. Today we want to talk about something that I've been doing lately while I've been interviewing developers that I think is working really well and it actually, it just started as a bit of an experiment because I didn't like the traditional question that's asks, but I like the concept of it, and it's that age old question, everybody gets asked at some stage and in fact we get asked it so many times that we train for this. In fact, in high school, I remember people telling me, you need to have an answer for this. It's that stupid question? What's your greatest weakness? It's stupid. It's the dumbest question ever because we're all prepared for it. We all have some weakness that we've turned into a strength that is just, it's all bullshit. And I don't want bullshit answers. I want real answers. What is your weakness or what are your weaknesses? Because you can have lots of them. Everybody does. I certainly do.

  • 01:14 Kel

    The answer to that one is a dressing up like Clark Kent. So when you're in the interview you can take off your glasses and go kryptonite.

  • 01:21 Joshua

    You have to slick back your hair at the same time though.

  • 01:23 Kel

    Right? Like you gotta you gotta just do the subtle shift. It only works for, I think, a certain type of person who has that look. Yeah, I think that's the best answer.

  • 01:30 Joshua

    I don't think I have that look, I couldn't pull that one off.

  • 01:33 Kel

    Yeah, I don't think I could do that one either. I could probably do Lex Luther. Oh, what was his greatest weakness? Taxes. Yeah. So we were talking about this is the thing, like we hate the traditional interview questions and there are better options and what are those better options? So yeah, it's like revisiting our favorite, one of our favorite topics.

  • 01:55 Joshua

    Uh, yeah, so certainly in this case I actually, I like the question, I just don't like the question. I want the answer for that question. And I was trying to find a way that I could get that answer and what I came up with, it was actually, it was just in the middle of a call and I thought, Oh, I'll try asking it this way. And it worked really well. I thought, Oh yeah, I like that. And what I asked was, as a developer, if you could build your dream team, so people who are going to compliment you, who have skills that you don't, or skills that you don't like to use, things that you hate doing and you can pick anybody you want it to be on that team. What sorts of people would you pick? Would you pick project managers or designers or something like that.

  • 02:36 Joshua

    And then I leave it open to them. I just let them decide who the hell would they put on their team. Because I certainly, I know I can think of several people I would want on my team because I know what my weaknesses are. I don't need to pad them. I don't need to frame them out as a strength. I know that if I were going to build a team, the first people I would go pick are the people who fill those gaps and it's, it's less accusatory then. It's not me saying that you're weak and I think that's the problem with the original question is you're immediately implying that somebody is weak and that's bad. When that's not true at all. What we're actually looking for is, okay, who can we pair you with that's going to work really well? If you love doing design but you don't like refactoring and doing things like that, then we pair you with somebody who loves refactoring. If you absolutely hate user experience and you don't like design and you just want to build really great software that runs a 152 million times perfectly, then we pair you with somebody who loves design and user experience and things like that. It's not that there's anything wrong with that being a weakness, it's just that you chose to put your strengths somewhere else.

  • 03:39 Kel

    We've talked a lot about like bringing your whole self to go to a job in a position and picking the things that you'd like to do and specializing and you end up with a lot of like, like anyone's going to end up with their own set of specialties and their own set of things that they just never worked on. And that's, I would, I want more of that. Like that's a better thing than what we have right now where everybody has the kind of like cookie cutter, like you squeeze random person into project manager role and then you switch them out and replace them and then no, that's, I don't want that. I want more interesting teams. I want people with a diverse set of skills that are useful. But when you do that, you end up with folks who have random gaps in their knowledge.

  • 04:20 Kel

    I mean we're a great example of that, of the things that we can do and not do and the things that we can't do are kind of arbitrary. They're like, oh, that's an odd gap in our skills. And so like when people ask me that question, yeah, I'm absolutely like, oh, I'd love to have a designer. I'd love to have someone who's like the, the hack things out a thousand times a second and gets, you know, can do these little spikes and test everything and I can come back and pick and choose and clean it up. Cause that's great. They just did all the hard work. Yeah. And some people will think of that as the fun part.

  • 04:49 Joshua

    I love that part. I, and yeah, if I were going to pick a team, I would pick Kel.

  • 04:57 Kel

    A little bit of cheating though. We've worked together so long that are our strengths and weaknesses have kind of like filled the gaps because it's ah, who hates this less.

  • 05:05 Joshua

    But that's kinda the way it works out quite often because throughout your career you can work with other people, you're going to find things that you enjoy doing and they enjoy doing and you kind of separate things and hopefully you will have that sort of experience with the teams you work with. So you're going to build certain skills, you're going to have gaps in other skills because somebody else did that part for you. And that's cool. I would pick somebody who can do testing. I would pick somebody who can do refactoring. I, those are things I absolutely hate doing. It's not that I can't do them, it's not that I couldn't sit down and learn how to do them or haven't done in the past, but I don't enjoy doing those. So why would I want to pick a team where I'm stuck doing that crap if I don't want to do it?

  • 05:41 Kel

    And there's definitely, like there's definitely room on a team for folks who would, who are willing to do those things regardless of whether they like them because you will pay them loads of money. And that's like how jobs work. Like, that's not, there aren't that many people who actually enjoy doing testing for example. Uh, but there are plenty of people who are willing to do testing to either like work with you to get to know these cool skills or to work on this product, cause this is a cool product they want or whatever. So like these are anyway rolling. I guess back to our interview question, I got really excited there about talking about like strengths and weaknesses.

  • 06:18 Joshua

    Yeah. And coming back to it. Yes, that's exactly it. We're trying to find these things and get information out of somebody by actually just talking to them, not asking stupid questions. That's another one that I've been trying lately and I still haven't gotten this one right. That team's question I think works perfectly every single time. I get some really great answers. Sometimes I have to explain it a little bit more because people start to name specific people or something like that and then no, no, no. I know you want Kel, everybody wants Kel. But I actually mean what roles would you fill? And they usually get it pretty quickly and then I'll get some really good results from that. But the other side of that is obviously what is it that you enjoy doing? So I've been starting to ask people questions about, uh, okay, so if you could pick any project, we've got these five projects on the go, which one would you pick first and just trying to get them to say, okay, this one has a lot of design aspects in it.

  • 07:10 Joshua

    I'd love to really dig into that and build a really cool shell for this thing and awesome UIs and really go through user experience testing and all sorts of things like that or, uh, that one's got a ton of UI stuff. I don't want to do that one, but that one. Look at that. That's got some really cool algorithms. I want to dig into those and build some engineering algorithms that figure out when trains should have something changed or whatever it is. You start to focus on. Again, it's the opposite side of that. It's not their weaknesses, but the strengths or the things that they would like to build up as well because sometimes I will explicitly say, okay, now you've chosen that. Is that based on your skills or if you could pick anything, even if you can't do it today, which one would you pick then? Because sometimes that changes the answer. Sometimes they'll, say nope. Same one I really want to go work on engineering algorithms. That's where the cool, but sometimes they'll say, actually I'm really good at the design stuff, but I would actually really be interested in doing some of this machine learning stuff. Okay.

  • 08:02 Kel

    Exactly. And when, when we're talking about interviewing too, like a good interview is, is kind of impossible. It's basically impossible in an interview, you know, the interview time frame to pick out the best person. Like it's kind of ludicrous that we would even think that's, that's a possible thing. Um, but so like a lot of what we do is you try to pick people that can grow into a role and that's how you're doing it. Like you're trying to figure out, well, what do you want to do and is that a space that we can help with? Is that a spot that you could fill at our company or you know, our team, our projects. Is this something or will you hate your life the whole time that you're here because you don't get to work on any of those things?

  • 08:41 Joshua

    I've absolutely turned people down for exactly that. When I found out what they really wanted to work on and their real focus was machine learning and we don't want you to do a little bit of it, but not enough that I thought they're going to love this job. Nope, I don't think is a good match because it's going to be really bad for you. You're going to hate it when I then turn around and say, actually I need you to build 432 forms please.

  • 09:03 Kel

    Absolutely. And that was always like for a while there, I actually wrote a blog post on this a while back where I did, I did a whole bunch of technical interviews, one right after the other in like 20, 30 minute time frames. Um, and like I generally would pass folks that were a bad fit because that wasn't, you know, I'm doing the technical interview. Like I don't really, your wants aren't the part, but part of what I would do is try to like poke out those types of things and yeah, we ended up coming back to quite a few people where it was like, we don't have this, are you, you know, you can pass, you could do this job, but I don't think that you want to. And yeah, we never had anybody who actually disagreed with that. Like it was, we kind of, we made it a group decision because I think that's kind of important. Like you don't want to like decide for them that they're, that this is something they won't want to do. Like I really want them to be involved in that discussion. Um, but yeah, none of them, they all were like, Oh yeah, that does sound like a horrible fit. I don't want to do that job. And that was, yeah, an expectation and a conversation.

  • 10:02 Joshua

    Absolutely. And I think that is really, it is just, we tried to, as you said earlier, put everything into cookie cutters and that's where all these interviews come from. That's where CVs come from because everybody wants to put everything in cookie cutters. If we just, if we make this generic enough, everybody will be able to do the same thing and we can just roll them out. And that's how we end up with the same crap over and over again. And I don't want the same crap over and over again. I want people who love their jobs and are going to do really great jobs because they love it and I'm not going to get that if I follow the cookie cutter recipe. It's just not going to happen.

  • 10:34 Kel

    Exactly. You end up with like, like business owners are really looking for predictability, right? Like they want to get the same thing over and over again. They want a repeat repeatable system. Because that's a really easy way to lower risk is if you know exactly what you're getting over and over again. So it's like, you know you want the drones, but that's terribly inefficient and that's like what a lot of like actual research into this does, is that it's much better to have a more organic group of folks that work and change and modify. Like they're less predictable but they are also, I hate to use the word efficiency, but it is actually kind of more efficient when you do the things that you like. Like when I work on things that I love working on, I'm booking.

  • 11:13 Joshua

    You're keen as cranberries!

  • 11:18 Kel

    But yeah, exactly. Like I move faster, I get things done faster, I create all these things. So like your pipelines, if you imagine this kind of as a workflow, which is coming from as a workflow developer, this is how I envision everything, pipelines of work kind of going through like the cookie cutter one would be project manager to team lead, to you know, drone or whatever. While a more organic process might shift and change over time and it will look more like a plant or something, you know, more like a fungus growing in the... Yeah. This gets a little bit of a weird analogy at that, but a more dynamic process and you get things that move faster and more interestingly and you get, I don't know, it's like more like more interesting might actually be the word I'm going for there.

  • 12:00 Joshua

    Yeah, and I think it is interesting because cookie cutters, it's not interesting. We always come back to car analogies because we started in the automotive industry and I'm going to go with one right now. I always envision that as you're looking for a bunch of different people to fill a bunch of different roles and then you go out and you get a whole bunch of Toyota Corollas. There's nothing wrong with Toyota Corollas. They're great, they're dependable, you know exactly what they are, and you can go buy a whole bunch of them and you'll be cool until you need a truck. And then you start hacking at your Toyota Corolla, turning it into a truck and it just, it goes completely wrong. I've seen these YouTube videos where they spend all this time turning this car into a truck and you're just looking at it thinking, why didn't you just buy a truck?

  • 12:43 Kel

    I remember the Bajas. I actually liked the Bajas.

  • 12:46 Joshua

    Yeah. But it was designed to be like that and that's the problem. I've actually seen people go out and buy Toyota Corollas and then turn them into trucks. Why didn't you just buy a truck? It costs you more. But that's what we're doing with people. We're getting a whole bunch of Toyota Corollas and trying to turn them into trucks and to sports cars and do all kinds of stuff. When you would've been better off in the first place, getting a truck, getting a sports car, getting some diversity, getting something interesting, getting some change.

  • 13:09 Kel

    I feel like it's more like trying to turn a Baja into a Corolla. It's like starting off with interesting and unique people and then trying to make them not that.

  • 13:18 Joshua

    Wedge them into the cookie cutter. Yeah. It's not cutting the cookies. You're jamming them in there.

  • 13:24 Kel

    Yeah. These analogies are getting confusing. Brought to you by the Toyota corporation. Um, we don't do sponsors.

  • 13:31 Joshua

    Uh, but if we did it wouldn't be Toyota.

  • 13:34 Kel

    Apparently. Um, but yeah, so a lot of what we do in the interviewing and like this is what we talk about when we're not on the podcast and we're just chatting among ourselves and we're trying to figure out like how to do an interview. These are the types of questions that come up. Like how can we ask people these things while also, while also dealing with this problem that people who are coming in for an interview are usually scared. They're nervous, they're worried about their job, they're worried about their kids, they're worried about their career. Cause like, when I approached this as kind of like a consultant, I can mix and match. I can take these risks and more bite sized chunks, which is, I'm a big fan of, this is a great thing that I can pick roles that I actually fit for and like my specialties are even amplifying that, of Oh I can do installers. Well nobody likes to do installers and nobody's really all that great at them. But I kind of am like, this is actually a specialty that I fell into, because I was willing.

  • 14:24 Joshua

    Because nobody else would do it.

  • 14:26 Kel

    Yeah. Basically I got tired of supporting it so I fixed it and now, now it's a specialty. But like, this is a good thing. This is a bonus. But it does mean very little good in larger roles because that's not a thing. Right? Like that's a a small chunk of a business. Yeah. And so anyway, people coming into interviews, this is a problem you're running into is that you're. They're trying to interview for the Corolla position and we're trying to get them to tell us all the ways that they're a Baja or that they have a random truck bed on the back for no apparent reason and like, like to drive on the beach.

  • 15:02 Joshua

    Because why not? That's cool!

  • 15:02 Kel

    Exactly it. And so we're kind of balances, and this is a lot of what we talk about. It's like, all right, what questions could we ask that don't set these people up for failure cause I don't want to be like, all right, build me a react app. And they go into full panic mode even though they probably could do the job.

  • 15:17 Joshua

    Yeah, and I do. I struggle a lot with that one. That is something that I had been trying to figure out and that's what a lot of this is around is it's not just these specific questions, it's about how do you ask somebody anything knowing that they are deer in the headlights constantly throughout the entire interview and you can see it, you can see, you know, you ask them to do something simple and they get cases wrong and things like that, that you know, they would never get wrong in the real job because you are right there. How can it not be terrifying for them, but at the same time we have to get this information out of them. We need to know are you a Baja, are you a Corolla? If I need to haul a bunch of timber, are you going to be able to do that?

  • 15:58 Joshua

    We're trying to, find a way to match these things up, match their skill with what we need so it's good for them. So it's good for us. But do so in a way that isn't absolutely terrifying. I told somebody the other day that we were going to do a one hour session to chat about things. Usually I just kind of spring it up so they don't have enough time to panic. But in this case, because I was trying to work around their schedule, they were in a day job and I didn't want to interrupt that. I didn't want to make them take time off from work were they're actually getting paid to do things instead of just listening to me yammer on about things. So I tried to arrange it and schedule it and they were terrified the whole time waiting for it. And I knew it was going to happen, but I couldn't find any way around it. And it's just constantly trying to battle this fear that is perfectly natural when I need them to not be terrified because the less terrified they are, the more I actually see is this a good fit? Are they going to work out well? Is this really what they want, is what I want.

  • 16:52 Kel

    Right. And it's really difficult. Like you can't tell anything beyond the fear like this isn't going to be there day to day or it might be there day to day. That's a thing that we should talk about and have a conversation about. And so yeah, like the things that have worked the best that I found: expectations setting give people an idea of what they're, they're about to step into. You're a lot less afraid if you at least know what's going to happen. Um, like when I do those technical interviews for like 30 minutes, the first 10 was usually, all right, let's chat until you calm down. We can start asking questions, but like, you're only going to get so much out of somebody within an hour interview or a half an hour interview. Or even like the wild one week interviews, I hear about folks going on like, you're not going to get everything. You still might get fired for a variety of reasons that turn out to be, you know, the end result.

  • 17:38 Joshua

    Yeah, absolutely. And we do actually do fairly lengthy interviews, not one week long, but we usually do at least half an hour for the initial chat just to, hi, we're CCQ, who are you? And then I usually do an hour with them where I just, we do some pair programming. It's relatively relaxed once they get into it and most people actually relax quite a bit. When I'm saying don't do, I don't know, go Google it. Really? Okay. Yeah, and it relaxes things and that helps, but obviously it's terrifying anyway. They're still with somebody who could say, yes, you have a job or no, you don't have a job. And then we usually follow that up once we get through those hurdles with something more like a four or five hour full on interview in person where we have lunch and tea and biscuits and everything else, which it's meant to be fairly relaxing. We'd go to somewhere nice. We have a nice relaxing time. We just chat. We talk about kids, we talk about sports and hobbies and whatever else they like to do. If they like to talk about photography, I'll talk to them incessantly about photography and it's meant to be relaxing just to get to know the person to get them into that position where I can start to ask questions like what would your team be? Who would you pick? And they can actually come back naturally because it's really difficult to get to that position.

  • 18:54 Kel

    Yeah. And I don't know for most of the things like I really liked asking people. All right, like tell me about a project you've worked on. What things did you hate? What things did you like, what things would you have done differently? That's a pretty common interview question actually. One of the few that I actually like on regular boring interviews that you see. Um, but those types of questions start to get dig in pretty quickly to where did they struggle, what are the problems that they had? And like what are the things that they're currently, they were interested in. And it's usually pretty obvious to tell somebody's relative skill strengths. So like I can't tell you how great of a designer they are because I'm not a great designer but I can tell you what their relative design skill is to mine pretty quickly just by asking questions and the things that interest them and the like the area that they're struggling with now. It's kind of like asking a musician. If you asked me like I'm, I'm struggling to play an F chord, it's hard and this one you know, and somebody else's like, yeah and I'm struggling to play the solo to. You know, those are, it's really obvious where we're at, at the basic level. And that's kind of where I pushed for interviews that it's actually really easy to decide if somebody is qualified to do the job technically. Like that's a 30 minute discussion back and forth of where about are you technologically and on these techs and which ones have you used and not used and your opinion of them. Like I really don't feel like that takes a lot of effort to get out of somebody. Though, you might need more than one person, you know, you know, measuring things you might need to triangulate on their actual relative position.

  • 20:18 Joshua

    Yeah. I actually, I've been working on some questions on those as well because a lot of those questions you just mentioned, I want the answers to, but I found more and more people have canned answers for, and again, that's what I'm trying to avoid. So I started asking them things like, okay, I see you've done a bunch of stuff with C sharp. What annoys you the most about C sharp? And the answer actually is very telling because some people will come back with something. I'm thinking, okay, you haven't used it very long. That's actually a really good thing. Some people come back with something, I'm thinking, Oh, ah, that is annoying. Other people come back with something. I'm thinking, okay, you know this better than I do. That's impressive. Um, kind of scary but also impressive and it's a good way to gauge just because you can have a canned response when somebody says, okay, tell me about this project. They've probably prepared it. They have some spiel that they're going to spit out. But when you start asking about opinions and feelings and things that are less factual and more, you have to stop and think about it. Okay. What do you hate about Ruby? Oh, let me get it started.

  • 21:26 Kel

    Exactly. I would usually, uh, improv those. Like I would ask the, the canned question, tell me about a project. All right, tell me about the architecture. And what I would do is I would listen for anything that I could dig into. Like it didn't matter what it was as long as I could dig into it. And preferably it was a tech that was like related to something that I wanted them to work on. And like, Oh tell me about that. What did you think about this pattern? Did you use these patterns? Did you, and it really had to flow depending on who I was talking to. Cause it'd be like, well we use, you know, subversion here and nobody uses subversion. And so I'd be like, Oh, what did you use for that? And like, I just have to dig in. And it was a very ad hoc thing of how those conversations flowed.

  • 22:06 Kel

    But that was the goal, right? Like to figure out what they use, what they hated, what they liked. I really am a big fan of what would you have done different, uh, with those types of questions, because those will usually bring up the, this is how I've grown. Um, but like you said, yeah. Like I, when I did training, uh, when I was teaching at a boot camp that was part of like, all right, this is a question you should really be prepared to answer because it'll get you prepared to answer all of the surrounding questions. Like learn to talk to this. Not just answer it as you can, but like learn to talk to these things.

  • 22:35 Joshua

    And that's really what it is. And I like, I like this one for two reasons. I like to ask people what they think of things because first off it's, there's not much of a canned response for that in general. But second, it also gives you a get out of jail free card because you can always say, eh, I don't really have a strong opinion one way or the other. So if they're talking about JavaScript and it's clear they have a fair knowledge of it, I might ask them, so what do you think of scoping in JavaScript? And the ones who really know it are going to come back with a whole bunch of stuff because it's crazy.

  • 23:05 Kel

    Scoping is really weird in JavaScript.

  • 23:07 Joshua

    Yeah, absolutely. And I will have some people come back and they start to rant about this and that and then they'll come up with in typescript this is so much better because of, yes, exactly that.

  • 23:15 Kel

    This and that!

  • 23:15 Joshua

    Because of this and that. And other people will say, I don't have any strong opinions and okay, fair enough. Cool. But it also kind of, it kind of helps because in general, most of them probably should have some strong opinions about scoping in JavaScript if they understand it. And if they don't, then I know where they stand. And it's not that there's anything wrong with that, but it helps me kind of place them along the scale and I pick a few things like that at different levels. It kind of gives them some things to tag on to because otherwise open ended questions are really difficult and in interviews as well. It's like anything. If you are stressed and your wound up and you're afraid and somebody asks you any kind of open ended question, that's hard. If you've had a tragedy in the family or something like that and somebody says, what can I do to help you? That's a horrible thing to do because that's really difficult to answer because your mind is completely elsewhere. You were stressed out and everything else. It's so much better to give them something to kind of cling on to and say, okay, what do you think about this and that and JavaScript.

  • 24:18 Kel

    Exactly. Yeah, like leading them on is actually, it's like what you're trying to do is you are trying to kind of like lead the conversation. You are in charge of this conversation and if they're afraid or panicky, well then you'd do something else.

  • 24:30 Joshua

    All right. I will put some transcripts up at https://gettingappsdone.com. Please be sure to checkout my website at joshuagraham.info and Kel's website at piffner.com. Obviously we're talking about interviewing today and a lot of our audience are new developers or even experienced developers who are getting ready to interview. So if you've got any questions about the sort of questions that we're talking about or if you've got any suggestions for really great ways to ask those tried and true questions that are all horrible now, uh, we would absolutely love to hear those because we're always looking for new ways to ask questions that don't suck. Uh, you can tell us about any of those on our Slack channel gettingappsdone.com/slack. Otherwise we post every Thursday. I will apologize, we didn't post last Thursday because I had a minor operation and didn't recover as quickly as I thought I would. So we're running a little bit behind, but we're back now and in full swing, so we'll be back next week. Thank you for listening.

  • 25:27 Kel

    Cheers.