11 ms·
A Senior Engineer’s Guide to FAANG Interviews
- oofta-boofta 3y ago[dead]
- claudiulodro 3y agoTangentially related, is it worth it to do the leetcode grind and all the FAANG-interview preparations if I'm always planning on working remote? Are there remote companies with FAANG-level compensation that would warrant this sort of interview prep?
- thomaslangston 3y agoYes
- actualwill 3y agoI imagine a FAANG salary allowing fully remote would be a very competitive position.
- xyzelement 3y agoThere are a ton of remote roles at every FAANG too. If you are good and they want you, you can negotiate for those. Being able to interview and get good offers helps your story. Even if your story ends up using those offers as leverage elsewhere.
- ldjkfkdsjnv 3y agoIts the difference between making 400k+ a year and retiring early, versus grinding away on software
- deleted 3y ago[deleted]
- TrackerFF 3y agoHow many FAANG engineers do you know that have retired early, compared to the FAANG those that didn't / still work?
- VirusNewbie 3y agoNetflix still hires remote. I'm guessing for the right team and with the right resume you can get remote at Amazon, Google or Meta right now if you have enough seniority. Finally, I think most companies are using some LC type questions. Asking if you should practice leetcode is like someone asking if they should get in shape. Vehemently the answer is 'yes to some degree', and the rest just depends on your goals.
- weeznerps 3y ago100% yes. I did this 2.5 years ago, got a remote FAANG job, and more than 3x'd my comp. Remote FAANG-level comp is harder than to get than it was during COVID, but it is still possible.
- xyzelement 3y agoI skimmed this briefly but I can't reiterate enough the importance of practice that the author mentions. I am the same person when a FAANG hired me as I was 15 years prior when I first interviewed there (I also interviewed a bunch of times in between, for successively more senior roles and did better in the process each time.) When I was young, I had some fixed mindset - I am either good enough or not. They will either see that I am good or they won't. Nowadays, it's obvious to me that it's my responsibility to make it easy for them to see that I am good. That's what practice is - it's you working on your ability to articulate your fit for the role. That could be your ability to solve problems at the whiteboard, honing your career story, etc - the point is that if you ultimately don't have something to offer, no amount of practice will help - but if you have the potential but don't know how to let it show, you won't get the job either.
- codr7 3y agoAnd that hits the problem for me; the process often doesn't allow showing what you have to offer, it only allows you to show that you check all boxes in the process.
- xyzelement 3y agoI don't think that's true -- and I say that as someone who's spent plenty of time on both sides of the proverbial interview desk. Checking the boxes as you say sounds superficial, it's more like - there are some bars to the role you're interviewing for. A typical eng role probably has bars around programming ability, team work and communication ability, problem solving, etc. By "checking the boxes" you probably mean ability to demonstrate that you can do those things in the context of the interview - that takes practice. Now it comes to the other stuff beyond the bar that you want to show. There are some attributes about myself that I want to come up in the interviews whether I am asked about them or not. Making sure they get mentioned takes practice too.
- codr7 3y agoNo, it's not that general, at all. Either you say the specific words that are in their script, or highlight the stuff they're really into, or you fail. Replying here because of wacky thread depth limitations in HN: Often personal preferences. And there's no discussion, just failure because you didn't say the right thing. Especially if you have more experience than the interviewer. Arguing that someone shouldn't get hired because they didn't check whatever box is something you would never get fired for. My last example was using GET instead of POST for a login endpoint, which is a perfectly fine thing to do.
- codr7 3y agoI don't know, I've walked into these interviews with zero preparation and succeeded. And I've failed FAANG-ish interviews where no amount of leetcode grinding would have helped me. In my opinion, it's getting rather silly. They're scaring off and filtering out excellent candidates with these excessive processes. None of them even cared about my Github repository that's full of code I write for fun. Software developer hiring is definitely ripe for revolution/innovation.
- liuliu 3y agoWhen you are hiring in volume, you are hiring for additive value, not for transformative value (nor multiplicative value). For additive value, conformance is essential. Most of the semi-successful companies don't need to be "the innovation machine".
- snakewatching 3y agoI will agree with this. Leetcode style interviews identify the "rule-followers", "not-going to rock the boat" type of engineers. That's what FAANGs need, not innovators and leaders.
- lionkor 3y agoAll jobs I applied for that I interviewed for looked at my GitHub specifically, and my past projects, and that was their main topic of discussion in the interview, apart from usual coding questions and such. Im not victim blaming by saying you may just be applying to the wrong places, am I
- majormajor 3y agoI would love to talk about my github projects with an interviewer - hell, I'd also love to talk more about my past systems than their hypothetical ones - but like the parent post, I've found it pretty rare. Past projects maybe 15% of the time at medium-to-large companies (500+ person), and so far am batting 0.000 for "asked about personal projects", including at FAANG interviews.
- 0xbadcafebee 3y agoIf what you want is to be hired quickly and get a big paycheck, go with the higher chaos score. They may be easily impressed by simple interviewing tricks, and since the place is clearly disorganized, you can get away with not doing much work. I should feel bad for giving this advice, but fuck these bloated mega-rich companies if they refuse to get their shit together.
- Yujf 3y agoI don't think this is necessarily true. Big chaos score means that the hiring manager is basically free to hire whoever they want with no verification, but that does not mean that they do not keep their engineers in check. Google has low chaos score, but you can essentially get hired without a job that you should do so that could also indicate you may get away with doing not a lot of work
- michaelt 3y agoEh, to me the chaos score seemed pretty opinionated. After all, if the interview process is highly standardised the jobs must be highly standardised. That's fine if everything is a java web service and you only want to hire java web service folks. But if I'm an expert in machine vision for robotic applications, how are you going to validate the specialist skills that make me so expensive? And what do I care about the interviews being consistent? I only have to go through the process once. And it's not like I'm relying on getting hints or leaked questions to be able to pass.
- jondwillis 3y agoAll of the FAANGs are various levels of unethical, or a net negative for society in my estimation. No more interviewing there for me.
- ryangs 3y agoDefinitely agree with unethical, although net negative seems a lot harder to quantify. Amazon has a lot of bad practices I disagree with, but are they net negative? I find it difficult to assess. And even if they aren't net negative now, is the 10 year trajectory clearly downward? Soloing out Netflix, is there anything particularly wrong with them? I have significant gripes with all the others but no specifics about Netflix.
- JohnFen 3y ago> is the 10 year trajectory clearly downward? I think so, yes. It's been that way for a good while.
- jondwillis 3y agoNetflix: exploitative true crime docs and algorithmic recommendations with no way to opt out, auto-play, reality TV.
- deleted 3y ago[deleted]
- mike00632 3y agoThe writers who are currently striking have a lot of things to say about Netflix being negative.
- 0xbadcafebee 3y agoI would gladly take a $350K/yr paycheck for a decade, then retire and do social work for free.
- jondwillis 3y ago
- leeny 3y agoOP and founder of interviewing.io here. We spent hundreds of hours interviewing current & former FAANG interviewers to write this piece. We really wanted to peel back the curtain on what happens during these interviews, what actually matters to them, how these companies train their interviewers (if at all), make hiring decisions, and so on. I'll be around to answer questions, and I'll tag in Kevin, the author, as well (I just edited it).
- zug_zug 3y agoJust a heads up to anybody super starry-eyed about fang, I worked 10+ years non-fang, and tried fang, and it was absolutely miserable, one of my least favorite jobs of my career. Yes I made a lot, but I also worked and stressed proportionally more. YMMV.
- extr 3y agoYes, identical story here. I was over the moon when I got the job. Within 6 months was basically just waiting until I had been there long enough that leaving wouldn't look bad.
- taway234 3y ago>> Just a heads up to anybody super starry-eyed about fang, I worked 10+ years non-fang, and tried fang, and it was absolutely miserable, one of my least favorite jobs of my career. Most people I know say the same, but they stay. You can be at a non-FAANG and work for half the pay (and often be just as miserable) or you can work at FAANG, own a house, not worry about money, and often do not much work. Misery is part of the package.
- JohnFen 3y ago> Misery is part of the package. But isn't that a bug? It's not that hard to find a non-FAANG job that pays well, lets you own a house, and not worry about money without having every working day be a misery.
- PheonixPharts 3y ago> own a house, not worry about money While you absolutely take a huge pay cut to not work at a FAANG, it's not like making 200k+ is living in poverty. Typically non-FAANG also has other perks: many more fully remote options, typically much more chill about working hours, working with niche tech stacks or on new problem spaces, etc. You can enjoy work and still have a house and not have to worry about money at a non-FAANG, just not as aggressively much as you do at one.
- 3y ago
- snakewatching 3y agoSo the main factor for succeeding those so-called interviews is doing more of them? ie, it has nothing to do with your actual performance on the job. We should think hard as a society on what we want to spend our time on. At some point in my career I drank the koolaid that joining a FAANG was the most prestigious thing you could do. But now I start to see people working at FAANGs as bureaucratic rule-follower that put their 50 hours of leetcode-grinding (I suspect that they are implicitly filtering for those engineers that will follow tasks without asking too many questions)
- jasonpeacock 3y agoInterviewing is a skill that needs to be worked on. Unfortunately, your "portfolio" is not portable between companies and so these tedious interviews are necessary. Similarly for other technical roles like welding - they expect you to do an example weld to show you can really do the work, though there are also certification standards that help which we don't have in the software industry.
- snakewatching 3y agoSure, but for a welder there is a correlation between doing well at the test weld and how good you are at your job. With leetcode interviews there seem to be very little correlation.
- dennis_jeeves1 3y ago>I suspect that they are implicitly filtering for those engineers that will follow tasks without asking too many questions As a general rule most educational systems are that way, for example you need to be very conformist if you want to become an MD. Consequently you will not find many MDs who are no-conformist. In fact I would go so far as to say that even elementary and high school filters for conformist people who are going to be willing cogs for their government and corporate overlords in the future
- rel2thr 3y agoMy pro-tip if you want one of these jobs and are not great at leetcoding, try to get another role at the company and then transfer over. Apply as a data analyst, theres no leetcoding, you just need to demonstrate sql knowledge and experience working with the business. And faang data analysts are paid as much as many non-faang engineers. Once you are in, you will be working with engineers, just do a good job, and express interest in working on the software team. The bar will be much much lower than an external candidate. I would say 20-25% of engineers at these companies come from a non-traditional route like this.
- iLoveOncall 3y agoThis is absolutely wrong, at least for the FAANG where I work (Amazon). Not only are data analysis jobs given to business grads and are non-tech roles, they also do not work with software engineers at all and I guarantee you you will hate every second of your job in those positions because of how uninteresting it is. After that, if you do want to switch roles, you will either have to go through a full interview loop and held to the same standard as an external candidate, or you will have to go through an even more grueling job title change process which will take months, with no guarantee of being approved (and to be fair, if you're a data analyst doing a data analyst's job, has no chance of being approved).
- deleted 3y ago[deleted]
- a_and 3y agoIn my experience this is entirely incorrect. Being a strong outside candidate (assuming "strong"=="good at leetcode") is going to make you much more attractive then hoping you're noticed internally. You're likely to get more bang for your buck by spending your time grinding Leetcode, than learning how to be a data analyst and networking your way into a SWE position. Context: Was Sr+ at a FAANG, have had offers from 2 others.
- nfRfqX5n 3y agoNot sure if this would work at a big tech company, but I’ve def seen it at mid sized companies
- hebleb 3y agoMan, I've coded a fair amount in my free time, and have even created a couple of money making side-projects, but I just can't grind leetcode no matter how often I try. That plus the rejection after doing long on-sites drains me for days afterwards. I've come to the conclusion that even though I may be missing out on those top salaries, FAANG just probably isn't for me
- xyzelement 3y agoI think recognizing that "something isn't for me" (vs is bad) is a great and mature point of view, I deeply respect that. Some thoughts beyond that: By the time you frame something as "grinding" - it's going to suck. If I were you, I'd ask why does it feel that way? For example, is it because you don't have a good foundation in algorithms fundamentals -- if so, would it help your career to learn those, anyway? Is it because you don't enjoy problem solving or aren't a structured problem solver -- if so, is there something to learn there? Or is it because you framed something that could potentially be fun as an adversarial grind to begin? (BTW, I am not saying any of the above is true or likely - I am just suggesting one "next step" type thing since this question seems interesting to you) Similarly, being deeply impacted by rejection -- is that a thing that would serve you to evolve over time? As you become more senior and ambitious, you are likely going after harder opportunities and your rejection / fail rate will go up and that's normal and good. Is there room for reframing how you deal with fails?
- allarm 3y ago> Is there room for reframing how you deal with fails? What would be your advice? How do you personally deal with fails? It feels shitty every time it happens, regardless of the amount of reframing or whatever else I put into my mind.
- xyzelement 3y agoThe unsatisfying answer is - that you have to figure out why it cuts you so deeply to begin with to really make sense and fix it. But I can provide some hopefully actionable things in the process: - Recognize that interviews (and other things, like dating) is a high value endeavor but the failure raise of any given encounter is high. Go in wanting the job and doing your best, but recognize that the answer to any one of them is likely "no" for many reasons external to you as well as your actual match for the job. This is what they mean by "it's a numbers game." - Especially if you already have a job and are just interviewing looking to grow, treat it like an experiment. "What can I learn by preparing for and doing the interview? How can I make it more enjoyable for myself? Is there a way to think of it as an interesting challenge/puzzle rather than adversarial?" - Recognize that the feeling of failure is different than the reality of failure (eg: you are feeling like shit but in reality everything is fine, you're no worse off than if you hadn't tried, and in fact you're better off because you did try.) This is a thing in general - recognizing that our feelings are "louder" than reality allows us to tone down those feelings. Does that help?
- twayt 3y agoSounds like an FB shill
- atleastoptimal 3y agoNow I just need a guide on how to actually get a FAANG interview
- iLoveOncall 3y agoI'm not sure what to think of the whole guide when there is blatantly wrong information about the basics of the interview process for some companies (for example, Amazon does NOT have a team-dependent hiring process)...
- zht 3y agosorry this may be a dumb question but I am curious is FANG still hiring? or are they generally in hiring freeze?
- whoknew1122 3y agoThey buried the important info in the middle of the first page: "Moreover, this guide is written for experienced, back-end leaning engineers – interview processes are usually different for juniors, but we won’t be getting into those differences." There are multiple jobs out there are very technical positions pay 6 figures with no coding required. It's not interviewed for. It's not required at work. In fact, I can't give code to customers even if I wanted to. Companies operate on more than just code monkeys.
- 120bits 3y agoMy urge to work for FAANG company is faded away. Being in my late 30s I don;t want to grind leetcode anymore. I had interviews in Apple/Google/Facebook and I felt luck played a huge part of that. I got some live coding questions that prepared the day before and I aced them and in some cases I practiced so much and couldn;t even write more than 10 lines of code.
- brian-armstrong 3y agoIt is bewildering to me that there are companies where you don't interview with the team you will join. What if you don't click with them? These are the people you'll spend every day working with.
- shagie 3y agoWhat if you were at a company that had 100 teams with open spots to fill. They all need the same basic skill set and with some onboarding it will fill in gaps in the domain knowledge. Do you want to do 100 interviews? An interview with 100 people asking you questions? If you interview with the "wrong" team or someone else accepts a position with that team before you do, do you want to be dropped from consideration? That structure for interviewing is set up to try to find as many people who are {this good} as possible to hire. Once you get hired, then they'll try to figure out where you fit in. Trying to fit each person to their exactly right and best fit spot as part of the interview process makes it even more time consuming.
- fatnoah 3y ago> It is bewildering to me that there are companies where you don't interview with the team you will join. What if you don't click with them? These are the people you'll spend every day working with. There's a very important caveat here. At Facebook and Google (those are the ones I experienced) you have to pass a bar to get into the company. While those initial interviewers won't be the ones you work with you'll either (Google) go through team matching where you'll meet those team members or even better (Facebook) meet them AND work with them on a couple tasks to get to know them and their work BEFORE you join the team.
- yodsanklai 3y agoThere is always a lot of bitterness on the topic of FAANG interviews, and also a lot of bashing of engineers working there. It's difficult to hire large number of people globally without some level of standardization. What I like with FAANG is that the interview process is fair. The rules are explicit and they give a chance to quite a lot of people (including people with slightly unconventional profile). Another myth is that FAANG engineers are just leetcode grinders and are useless beyond that. What struck me is how diverse the people working there are. In term of educational background, origin, professional experience, age... I find it pretty remarkable. It's hard to make any general statement about this population considering how diverse it is.
- Sohcahtoa82 3y agoI interviewed at AWS for an application security engineer position years ago, and I was surprised about the questions I was asked. I did the recruiter call, then phone screen, then a series of 4 hour-long interviews. Since it was AppSec, not coding, I expected 3 interviews asking me technical questions about AppSec and a behavioral interview. Instead, all I got 3 hours of behavioral/leadership principles questions (With a lot of repeated questions between them), and 1 coding exercise. I got rejected while feeling like I never actually got a chance to show my technical ability to do the job. I know how much they value leadership principles, so I probably wasn't going to get the job anyways, but it still made me feel a bit disgruntled.
- jedberg 3y agoI've been an interviewer at Netflix and Amazon and both of these feel pretty spot on in the guide. Not sure if it's still this way, but at Netflix the hiring manager was the only decision-maker. They took in all the feedback from the other interviewers and usually went with the majority, but they had the ultimate choice. You could say they had the Freedom to hire anyone they want and the Responsibility to deal with the consequences of that. And yes, at Netflix we pretty much all just made up our interviews as we wanted to, although after I while I zeroed in on questions that would give me the best go/no go data and would repeat them often. And at Amazon, what they say here is very accurate -- the bar raiser is the key person to impress. They and the HM have ultimate say on the results.
- jasonpeacock 3y ago> the bar raiser is the key person to impress Not quite true. The Bar Raiser's job is to ensure the hiring decision is data-driven, bias-free, and is a good hire for Amazon - not just the team (this does create some tension between hiring manager and bar raiser). I've been on plenty of loops where the bar raiser had a bad experience with the candidate, but the rest of the loop had good data and the candidate was hired.
- deleted 3y ago[deleted]
- Ihateyouall2345 3y ago[dead]
- Nales 3y agoI saw a lot of articles about preparing for those interviews. I have yet to see articles about how to get an interview.
- papito 3y agoI've succeeded with interviews looking for three things: * Find a candidate who takes apart with ease a couple of rather rudimentary programming problems. NOTHING crazy. Something practical and easy to understand the purpose of. * Look for passion in technology and coding. Ask them what they would learn or do if they didn't have to work for a year. * Look for rapid upward trajectory (potential). Someone doing the same thing for 5 years, meh. Someone going from data entry to automating a gnarly task with Go in a year - give me a ticket on that rocket ship.