There are already so many articles and Quora/Reddit/Blind posts out there on how to interview prep to get into big companies.
So instead of covering that in detail, I want to focus more on the angle of common misconceptions.
Common Misconceptions
Can't get in because of \(X\)
Don't feel like you're not capable of getting into these companies because of your educational background, work experience, or limited time to study/schedule for interviews.
Educational background doesn't matter since the interview questions will assess your qualifications. Typically, the educational background can be a filter for selecting candidates into interviews. A STEM degree should be adequate for getting your foot in the door for interviews. If you don't have a degree, create a lot of projects to include in the resume or go to a coding boot camp. I really can't stress this point enough - awesome projects on your portfolio would have much more weight than your quality of education. Try to get referrals and speak with recruiters directly, if possible.
Work experience is not an issue since these companies typically offer roles for all kinds of levels. If you already have work experience in coding, then educational background should be less of a priority.
Studying for interviews isn't actually all about time. Grinding away algorithm problems is one way to do it, but there are other ways to get the most out of these problems with less time spent. There are numerous resources online that provide you with tips on how to do this.
Too much to study
The overwhelming amount of material for interview prepping may demotivate you. In reality though, there are only a handful of algorithms per category worth studying. Core concepts will always trump niche knowledge such as Math tricks with pow/modulo or searching substrings using Rabin-Karp. Things like bitwise operators and multi-threading can also fall into the niche category and will usually depend on the role you apply for. Focusing on computer science fundamentals and having a good understanding of basic data structures and techniques are far more important than anything else.
Studying is not helping
Often times, studying by your lonesome and going through a live interview are two different things, completely. You should practice both. There are lots of services on the web you can use to do mock interviews. Practice learning how to set up problems, talking, explaining, drawing, and illustrating ideas. This will serve as a fundamental backbone, regardless of how good your algorithm game is.
Sometimes, you should also re-assess how your studying is going. For example, you might be grinding 20+ Leetcode problems a day, but are you actually learning anything? You might have to re-visit the way you study.
No offers
Not getting an offer doesn't mean anything. It is best to set your expectations accordingly here in the realm of interviews and offers. Anticipating an offer can lead to a lot of stress and unnecessary baggage. Instead, you should move fast (or similar to the software engineering world - fail fast). In other words, keep interviewing even after you finished a round of interviews. Don't spend too much time focusing on hearing back or dwelling on past interviews. If there are things you have learned from previous interviews (such as corrections for mistakes), then that already is a win in your playbook.
Passing the interviews at any company (including FAANG) is normally a mixed combination of preparation and luck. You may not get an offer due to either of these things. With that said however, luck can end up becoming a big factor because of the interviewers you've been paired up with, or maybe the types of questions you were asked caught you off guard. We're all humans here and we're not expected to master/memorize 1000+ algorithms off Leetcode by heart. In some cases, you can even be 100% prepared for an interview, but you might not get an offer because someone had performed a bit better out of the batch of interviewees, or someone may have vetoed you for the hiring decision, etc. Again, it is best to just resume studying and keep moving forward.
FAANG is the best place to work for
Some people put FAANG companies (and unicorn startups) up the pedestal too high. First of all, these are just like your everyday companies. The good stuff AND bad stuff you hear about these companies WILL VARY. Reason being, there are just too many different teams and orgs to make that kind of generalization. Yes, that includes total compensation, work life balance, and the quality of your work experience. Just because its FAANG doesn't mean its the best place to work.