Press enter or click to view image in full size
There was a point in my career where I really wanted to get a data engineer or a data scientist job at FAANG, but I found no definitive way to do so. I had experience working as a data scientist in healthcare and as a business intelligence developer in finance, but I felt that my experiences did not open any FAANG doors easily. Getting interview calls seemed like a never-ending battle, I exhausted all the usual routes of applying on company websites, reaching out to recruiters on LinkedIn, and asking my connections at FAANG for referrals, with little luck. I finally got an interview call from Facebook, prepared well, and cleared all the initial rounds only to perform abysmally in the on-site round and get rejected. After recovering from the miserable feeling of ‘so close yet so far’, I started again from scratch. Getting the interview calls was slightly easier this time, as I knew what avenues worked and what did not. After getting another interview call from Facebook for a different role in a different team, I prepared like hell, cleared all the rounds, and landed my first FAANG job.
At Facebook, I saw people with very diverse backgrounds, most had predictable career journey where they went to Ivy league schools, or worked in other tech companies/high growth startups, or had advanced degrees. But a significant minority of people had very interesting career paths where they went to coding bootcamps, or had successful side projects, or contributed to open-source projects. I spoke to various people at Facebook and other FAANG companies, and discussed their career journeys, I also found myself helping others get FAANG jobs. This article is a brief summary based on my experiences. Broadly there are three equally important steps of the entire process,
- Getting the interview
- Preparing for the interview
- Negotiating the offer
1. Getting the interview:
This by far the trickiest step. Depending on your background and experience, this can range from very easy to very difficult. If you have computer science or related degree from a top tier university or have prior experience of working in tech, getting FAANG interview will be very easy for you, recruiters might be already flooding your LinkedIn inbox. But if you neither have a degree from a top tier university nor have experience of working in tech, getting your foot in the door might be your biggest challenge. Following are the strategies in order of decreasing effectiveness
Employee Referrals:
The best way to get an interview call is through employee referrals. FAANG companies take candidates referred by their own employees very seriously. As long as you have the minimum qualifications for the referred position, you will definitely receive an introductory call with the recruiter. Employees generally get referral bonus if the referred candidate accepts the offer, so they are more than happy to refer. Your best bet is to ask your ex-colleagues, classmates, social connections who work at FAANG for referrals.But if in case you don’t personally know anyone who works at FAANG, you can go cold-calling route, you can find the people with job profiles similar to what you are interested in on LinkedIn, reach out to them for networking and referrals. At first this might feel too spammy, but if done correctly with respect and genuineness it is very effective. Personally, I have referred and have seen others refer strangers with impressive qualifications. Referrals from strangers are less effective than referrals from people you have worked/studied with, but they are still more effective than next two strategies.
Reaching out on LinkedIn:
If you can’t or don’t want to get employee referrals, the next best strategy is to reach out to hiring managers and recruiters on LinkedIn. Many recruiters and hiring managers post on LinkedIn when they are actively hiring, always keep an eye out on such posts, and reach out to them. You can also proactively reach out to recruiters and managers to see if they are hiring. If you are reaching out to potential managers, make sure to elaborate on the overlap between their team’s work and your relevant experience. Reaching out to people on LinkedIn can be exhausting and might seem like a long shot, but in my experience this is still a better strategy than the next one.
Applying on company website:
In my experience, strategy with the least probability of success is applying on company website. FAANG companies get thousands of applications for every job posting, and most of those applicants don’t even receive a response. Unless you have extremely rare qualifications, don’t bother applying on company website.
2. Preparing for the interview:
After getting an interview, the most important step is to prepare well for the interview. If you haven’t interviewed with FAANG companies before, you are in for one of the most intense interviewing experience. The FAANG companies use similar types of interviewing process, it generally consists of following steps
Initial recruiter call:
Recruiter gives you an overview of the position and the team and expects you to ask questions about the role. Some recruiters ask very basic MCQs or True/False questions about SQL and coding concepts like OOP, loops, conditional logic, etc. to screen the candidates.
Technical phone screen:
The phone screen is generally 45 minutes to 1 hour long and is conducted by a senior engineer on the team you are interviewing for. It generally involves of 1–3 SQL questions and 1–3 coding questions.
Onsite interview:
Onsite interview will be the final step of interview process, pre-COVID this used to be an actual onsite interview, where the company would invite you to their campus for the interview, but after COVID, these interviews are conducted virtually. The final onsite interview typically involves 5–6 rounds focusing on
- Coding/Data structures & Algorithms
- SQL/Data Pipeline
- System Design/ Data Infra
- Product Analytics/ Stats
- Behavioral
For the initial recruiter call you don’t need any preparation as such, if you haven’t interviewed in a while, you might want to brush up on your resume and prepare 3–5 min answer to ‘Tell me about yourself’. Make sure to ask the recruiter about the next steps, specifically ask for the difficulty of questions asked in technical phone screen.
For the technical phone screen, you should to practice easy and medium difficulty coding problems on Leetcode and HackerRank. The most important thing for technical phone screen is speed, interviewers are looking for working solutions to the questions instead of the most optimized solutions. One thing to avoid in this round is to avoid spending too much time on ‘Tell me about yourself’ or on your resume. The evaluation criteria of this round is based on how many coding questions were you able to solve, questions around your experience are a formality.
In terms of preparation for the onsite interview, your best resource is your recruiter. FAANG recruiters typically share detailed information about all the different rounds and prep material for each round. You should take at least couple of weeks to prepare for the onsite interview. For coding round you should focus on medium and hard difficulty coding problems on Leetcode and HackerRank. If your interview involves a whiteboarding round, do practice coding problems on a whiteboard. Writing a code on whiteboard is very different from writing it on a text editor. For System Design/Data Infra round you can watch talks on YouTube about Data Infra at various tech companies. For product analytics, you can prepare by reading quarterly earnings of the company to familiarize yourself with the important metrics, you can also think of metrics for user-acquisition, engagement, growth and retention for the specific product areas. For the behavioral round, read up on company principles and think of examples from past experiences which line up with the company principles. You should also prepare answers for standard questions like, ‘How did you deal with a conflict at workplace?’, ‘Tell me a time when you had to influence a cross functional partner?’, ‘Tell me about a time when you faced failure’, ‘What’s your greatest professional achievement?’, etc. Having prepared answers for these questions will help you avoid on the spot thinking in the behavioral round.
In a nutshell, the best strategy for onsite interview prep is practice, practice, practice!
3. Negotiating the Offer:
After grueling rounds of interview, getting the offer seems like victory, but the work is not over yet, now it’s time to negotiate your offer. The best way to approach negotiation is to be prepared and have a clear idea of what you want before going into the conversation. I would also recommend doing some research on the average salaries for your position and location so that you have a good starting point for negotiation, levels.fyi , glassdoor.com, blind are some good resources for this. When it comes to negotiating your offer, you should always remember that FAANG companies have more leverage than you do. They are generally not very flexible on base salary and restricted stock units (RSUs), but you can generally negotiate on signing bonus and relocation expenses(if applicable). FAANG companies are most flexible at negotiation when you have another offer preferably from other FAANG company. So, in order to get maximum out of a FAANG offer, you should aim to get two or more offers at the same time.
In conclusion, getting a job at a FAANG company is no easy feat. It requires a lot of hard work and dedication. But if you are up for the challenge, it is definitely achievable. Just remember to prepare well for the interview and be ready to negotiate your offer. Good luck!