Confessions from a Big Tech Hiring Manager: Tips for Software Engineering Interviews

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey this is gargay with the pragmatic engineer and today i'm gonna talk about some of my confessions as a hiring manager i've been a hiring manager for about five years at skyscanner later at uber i also know a lot of other hiring managers who i talk with and i want to give a bit of perspective from the other side and also some advice that you might find useful when applying next one is how is that big tech this can be from the likes of uber lyft all the way to google facebook and other big tech companies first your experience with the recruiter themselves it might not fully be indicative with the experience with the company now this is an interesting one and i've been talking with hiring managers some hiring managers who disagree with this and they say that they think the recruitment experience will be representative of the company which i somewhat agree with companies who care about employee well-being typically invest a lot in their hiring processes so they will measure satisfaction of candidates going through the loop they'll want to try to filter out recruiters who are not doing that great so for example if you're asked to rate what the process was like and you're getting reach out for feedback that probably means that that company cares about their employees and also their candidates and companies who do this definitely include the likes of google facebook and some other companies as well at uber when i was there we also started to do reach out at least in my area to see what candidates thought about the process now at the same time recruitment and entering are two separate functions they also report differently recruitment reports into hr or the hr cyto world and engineering reports into the cto or engineering you're going to interact with the recruiter for a lot of time during the process the engineering manager and the interviewers they're going to have a dotted line with the recruiter they're going to talk every now and then but if you have a recruiter who let's say doesn't follow up all the time or is not as responsive it might not mean that the company is like that now what will be indicative of the culture is the interviewers so the interviewers engineers themselves if they come across as not friendly or rude or on the positive side if they come across as as nice people curious accommodating that will be a lot more indicative of what you can expect at the company so i would say pay a lot more attention to the engineers and the interviewers and the hiring managers you talk with on the process than the recruiters it might have also gone the other way you might have had a really positive experience with a recruiter someone was really attentive you might have had a really good feeling maybe they just made you feel really comfortable and feeling good about this place and when you start the team might just be different again the recruiter doesn't work on the engineering team they work with the recruiting team and their goal is to try to help candidates as best as they can another thing that a few people know is after you've gone to the resume screening and you're talking with the recruiter and you're going to the phone screen interview the recruiter will be on your side they're going to be one of your biggest advocates i've seen this multiple time now this makes a lot of sense if you understand how recruiting works a recruiter is given numbers to hit they're told hey i want you to hire this many people in this quarter it could be 10 people 20 people here's the seats i want you to fill and every time someone is hired it's an achievement you know as an ngo you should features recruiters hire people so whenever someone's in the funnel and they think this person has a chance which is why they had them go through the resume screen they're not just rooting for them they want to help them now the way you can take advantage of this is ask the recruiter for advice for support for insights you can be honest with them on where you think you need help and you can ask them for preparation resources you can ask them for advice on where do people usually struggle in the process have you seen areas where you think it might make sense to focus on areas where the company is a bit more tough you can ask them about the process the recruiter will tell you as much about the process as they know because it's in their interest for you to do well i know some recruiters who i worked with at uber who actually coached some of the candidates so they told them hey you should study this you should look into this they also quizzed them on a couple of questions preparing them for the phone screen because if you do well as a candidate it does make the recruiter look good this is a similar misconception as sometimes people think their managers might be out there to get them maybe they're giving them poor performance views because they don't like them as a manager if people do well on your team and people get promoted it makes you look really good same thing with big tech with the recruiter if you do well it makes your recruiter look good and they're going to be one of your biggest allies throughout the process i've been on debriefs where the panel was a bit of a maybe and the recruiter injected themselves and they started to advocate for this person i'm going to say that for 80 of the time the recruiter will be your biggest ally throughout the process the other 20 is when you connect with someone at the interview it could be the hiring manager it could be another interviewer who really feel this connection they feel you've done really well on that on that specific interview and they will fight for you but that happens a lot more rare than the recruiter sticking the neck out for you alright the next topic is how to prepare for the big tech interview and what kind of mindset should you go there with so first on preparation i mean these days i don't think there is any excuse for you to not prepare on what you should be expecting on the onsite blue for any big tech and it will be pretty similar it'll be coding you're going to be given exercises with data structures or algorithms i'm talking to journalists software engineers if you're interviewing for something specialist for like web or mobile there might be something a bit more domain specific but for the most part even at big tech even when we were hired for mobile or web at uber we would ask the journalists questions in the phone screen and to prepare you should probably get something like cracking the coding interview i've had multiple versions of this book it just gives you the foundation on everything from data structures basic algorithms again most big tech companies will not go too crazy into algorithms even though a lot of preparation focuses on that i would focus more on just coding data structure solving simpler problems it's always a question on how much should you look into i would recommend groking algorithms which is a pretty short book you can cover it pretty quickly it has very visual representations of all the main algorithms i don't think you're gonna need more than this at the majority of the interviews just for reference when i prepare for interviews at facebook and uber i actually went a bit further and i got these two massive books the algorithm bibles if you will and i started to make my way through them i i probably made it until the the third of it it's got a lot of maths in it it's got good content but i would not recommend this i have not used any of this advanced knowledge either on my job or on the interview so you know if you want to spend a bunch of money just get it but i recommend grocking algorithms over these two and also content-wise you'll be better off and if you're more senior should probably look into some things like system design the best book i can recommend is the systems design interview and insider's guide and there's a bunch of online resources and so on that you can look into obviously cover the main basics make sure that you're comfortable with the language of your choice at big tech you typically can choose whatever language you want to use so just make sure you know that language pretty well with the primitives what it supports and what it doesn't support just practice practice coding practice whiteboard designing interviews whiteboarding is slowly starting to get out of style but some places just do it just look up for a specific company the preparation advice and there are some articles that will complain about how much you need to prepare for these interviews i personally think you prepare once and that knowledge sticks for you for a long time and by the way you can start preparing early you don't need to wait until you are going to go to interview for one of these big companies the earlier you start the better obviously having an interview lined up is a great motivator but if you start inching away and knowing your your data structures your hash maps your hash tables your stacks cues some of the basic sorting algorithms etc you'll have less preparation to do when you decide to interview the next thing is mindset the mindset that i've seen work really well both for me and for candidates who i've interviewed is treat every interview as a learning opportunity and don't care about the outcome don't even focus about the outcome a lot of people go into interviews and they're focused on doing well and they're really focused on am i going to make it am i going to make it through this interview but if you turn this around and you go into this interview you kind of feel a bit like an underdog feeling like well i i have so much to learn and i have the opportunity to talk to these smart people who are working at this company and i'm gonna learn something i don't know what it is but i'm gonna go in there with an open mind and i'm just gonna learn first of all you're gonna get a lot more out of it because even if you get a rejection you never expect it to go through or at least you didn't really care about what the outcome was and you'll definitely take something away so even if you can't finish the interview or you get stuck instead of you know being stressed out you're gonna ask the interviewer like that's interesting so i think i'm stuck here but do you have any ideas on where i could go or do you have any ideas on what i might have missed so you're now turning a conversation into more of a curious one and also it just changes the dynamics you're going to ask a lot more questions from interviewers which as interviewers we love questions so what am i interviewing i love when people treat it as a collaborative exercise there's this preconception of people's head that you go there to interview they give you a question you need to spit out the perfect solution and you're done well that gives me as an interviewer to signal that you can solve the thing somehow maybe you just knew the question by the way but it doesn't give me anything on teamwork if i could choose between someone who just did this they stay quiet for i don't know five minutes and then spit out the perfect solution or someone who talks with me throughout the process they tell me what they're thinking they they ask me some questions they confirm that the assumption is correct i'm gonna get a lot more signal from that person and and i'll say well this person not only solved it but they did good teamwork good communication which is really important that big tech at big tech you're gonna work so much with people communication is starting to be one of the signals that is a key signal that people are collecting basically people who are not good at communication will have a harder time getting an offer even if they're good at coding so just take this mindset and don't just do it for the interview dude even before and after when you talk with a recruiter tell them that you're super excited to learn you're excited to get feedback you know there's things that you can get better at and you'll see where this goes but do it on the interview as well so when you introduce yourself you know you can just tell that you're excited to be here you're excited to learn something new and to solve problems together with the interviewer when you're doing the problems don't think about them being stuff think about this is an interesting problem that i didn't come across and this is so interesting i wish i knew how to solve it let me work with the interviewers to see what i can do when you finished and you got the solution don't just stop there and say like oh i'm done say hmm i wonder if there's any edge cases that i didn't cover when people ask you how you would productionize the code you tell them how you do it and then you turn around and say but how do you do it at your place what other things do you do do you have canary tests for example would you actually do that what is your rule of strategy how do you deploy code what does your day look like just be curious go there wanting to learn something and you're going to learn a bunch of stuff about how the company works how those engineers work and you're gonna make a lot better impression as a hiring manager and it's not just myself but most hiring managers we love curious people when you go into big tech you're not gonna know half the stuff because the internal systems are different you've never seen them unless you've worked at that company and even if you did a few years ago they've changed already you need to be curious and a fast learner and those are the type of people who are more likely to get offers as well so just go in with this mindset focus on learning and not the outcome in the worst case you go to a couple of interviews you learn a bunch of stuff yes you get rejections but you learn a bunch of stuff and then you get an offer at a place where you just knew everything by that time you've just learned it on the way with interviews the next advice is pay attention and be fully present there's a lot of advice videos from people who have cleared interviews at amazon google facebook all these places and they're gonna tell you how to beat the behavioral interview with the hiring manager that's me i'm the hiring manager so let's play this out hey i'm gary guy i'm a hiring manager at this company i'll talk a little bit myself about my background and i've read your cv i see your experience would you mind just briefly summarizing your experience and talk about what motivates you looking ahead now at this point a lot of people just flip and they realize okay intro time and they and their intro the stuff that they often have practiced they didn't pay attention that i asked them to talk briefly about their background and talk about their motivation what they're excited about what they're motivated about and this happens a lot of the time not just with this specific question but i might ask them to tell me a situation where they disagreed with someone who was more senior some people just start to reach into those examples that they have written down in their head and they start to recite an example that is closest to that now the people that i really get along really well and i pay attention to and i think these are the people i'd like to work with or the people who are focused on me they're not focused on trying to understand that question perfectly with the star method having the situation the actions the outcome they're actually listening to what i'm asking them and they're having a conversation and we will often go back and forth and reflect back on on previous things so i do this all the time where i'm focused on what that person is saying and i reflect on what they're saying or what they said before for example in their introduction they might have mentioned that they had this project where they stepped up to add tests to the project where there was none and a lot later in the interview i might refer back to that saying oh so you mentioned that you had a test at that point can we talk a bit more about that especially in the context of let's say mentorship did you mentor anyone to to add some more tests or how would it impact your team and that's the same thing that i kind of expect from people but i rarely get is someone having a focused conversation this is especially true with the hiring manager or behavioral interview being present understanding the question clarifying it if it's not clear i see this all too common i ask a question and people misunderstand it or they don't know exactly what i'm asking and they start to answer something they just take one of their template answers and it's completely clear this gives me a signal that you're not a good communicator it's more important for you to not to lose face than to clarify something a good example of this can be a question that i often ask is i ask people if they have a mentor or if they're mentoring other people and mentoring means different things for different people now some people the people who pay attention they will often clarify with me saying what do you mean under mentoring and then we have a conversation about mentorship and then they're going to tell me what they did or what they didn't do some people just straight up jump in and they talk about some other thing for example might have asked about if they mentor someone but they misunderstood or they don't know and they're answering about how they had a mentor or the other way around these are awkward things but it shows that you're either not present or you don't understand what i'm saying or you're hesitant to ask and most importantly you're not someone who is really having a conversation so next time you're gonna have a hiring manager interview a behavioral interview and even the normal interview make sure to want to have this conversation and the mindset of being curious and wanting to learn really really helps if you go into the mindset of i want to do well and i want to impress you're going to be afraid to clarify going with the mindset what i want to learn well you should probably clarify to make sure we're talking about the same thing and also you're going to ask questions the thing that i see very rarely and every time it's a huge bonus on the hiring manager interview is people asking questions of me not just at the end but during the interview so for example i might ask the person about all right well tell me how do you testing at your current company do you have automated tests unit tests integration tests end-to-end tests what is your thoughts on testing and then they'll answer we'll talk through and then they turn around and ask me so by the way can you tell me how do you do testing what is your take on testing me as a hiring manager rarely anyone does it and the people who do it shows they're curious and they're unafraid to have a conversation in any setting it's not just unafraid they're actually curious to do it so just do this be fully present worry less about how you'll be perceived and have the conversation with the interviewer the hiring manager the design interviewer the coding interviewer etc the next insight is interviews are a two-way street you're probably feeling that you're being interviewed but you should also interview the company so you should not be afraid at the end of every interview you should ask questions you should imagine what if you're getting an offer do you want to work here and there's no better place to talk than with the engineers or with the hiring manager and i think you should ask honestly questions that you care about for example when i worked at uber in 2017 and we have this terrible press some of the best candidates they ask straight on they ask is the culture as rotten as it seems and what do you think why are you still here if the culture is like this and i thought that was fair questions it was honest they asked what they wanted to know and you know would you want to work at a place where you're unsure about certain things so you can't ask hard questions obviously you do it with good language and some of the professional skills but you should ask about the things that are important to you if diversity is important ask about that if work-life balance is important ask about that as well figure out what is important for you learning having budgets to go to conferences people sharing knowledge et cetera figure out what is important for you you know get your dream list of what company you love to work at and reverse interview the company at the end of each interview now one of the last points is these interviews will feel really exhausting especially if it's in a setting where you are do actually go on site right now it's coveted so it's probably going to virtual interviews and there they likely will not be one after the other you know these interviews don't fully represent what it's like working at these companies but they kind of represent some of the more crunch times so there will be days especially if you're in a more senior position where you will have even two of these interviews a day multiple meetings you'll have to get your code in there you're on call there's now now on alert so i remember that my both my uber and facebook interviews were really exhausting and so my some of my uber days later were also similarly exhausting to what i felt at the interviews not all of them not the majority of them but some of them so just know that big tech often has a higher pace especially when you are on call which is pretty common at these places also when you have deadlines it's not true anywhere so when i talked about this topic with other hiring managers and people working at companies some people are saying they don't think the stress of the interview represents the stress of the day-to-day especially people from google said this i've heard some people from certain amazon teams say the same thing so maybe it's not true but i would prepare that big tech pays well and is exciting and you're working on big things but it can be stressful sometimes it's more often stressful sometimes it's just every now and then spikes and finally as for my last insight some people think after they get a rejection oh i just wasted a bunch of time with this interview i prepared so much i went to the song side i it's just time wasted it's not time wasted you always gain experience i've had some failed interviews that i'll i'll talk about on this channel if there's interest where i didn't get an offer and i got the expertise that i needed to get that offer for the next job uber is a great example i would have not gotten into uber if i would have not interviewed at so many places before and i got experience every single time even when i got an offer and also when i didn't get an offer i would think of every interview as an opportunity to get experience it's a great experience to have you talk with smart people now if you don't get any interviews the option is for you to pay for mock interviews which will be not the same thing you're not going to get real feedback people will try but they'll do the best and it costs a bunch of money i think it costs 150 to 300 dollars per interview something like that so just think about that whenever you're going to an interview you could be paying to do a mock interview if you didn't get this specific interview just going with this mindset you're going to learn a lot more you're going to see how the interviews work and best of luck if you have questions about big tech interviews just feel free to pop them in the comments i'll either try to answer what i can or i might make some videos on these if you enjoy this content please hit the like button and subscribe to the channel i'm posting on software engineering and injury management topics please follow along if you enjoy this thanks
Info
Channel: Pragmatic Engineer
Views: 328,961
Rating: 4.9498987 out of 5
Keywords: software engineering, behavioral interview questions and answers, hiring manager interview questions, hiring manager interview tips, hiring manager interview, software developer interview
Id: vFOw_m5zNCs
Channel Id: undefined
Length: 20min 16sec (1216 seconds)
Published: Wed Dec 30 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.