Guideline for FAANG

Nazmus Sakib
3 min readDec 12, 2021

Algorithm and Data structure (Leetcode and Algoexpert):

Starting from scratch:

  1. If you don’t have issues in investing then buy Technical Interview Bundle from https://www.algoexpert.io/purchase. It’s a very good platform to start from the fresh.

Have some prior experience in Algorithm and data structure:

  1. 14 Pattern that is good enough for attending FAANG interviews: https://hackernoon.com/14-patterns-to-ace-any-coding-interview-question-c5bb3357f6ed
  2. 75 common questions to begin with: https://leetcode.com/list/xi4ci4ig/
  3. https://leetcode.com/discuss/general-discussion/460599/blind-75-leetcode-questions

Very good youtube channels:

  1. https://www.youtube.com/c/BackToBackSWE
  2. https://www.youtube.com/c/TECHDOSE4u
  3. https://www.youtube.com/c/ByteByByte
  4. https://www.youtube.com/user/tusharroy2525

Tips:

  1. Don’t spend more than 10 minutes for EASY, 30 minutes for MEDIUM and 1 hour for HARD. After that see the discuss or solution (If you have premium) section in leetcode. And then again try solving the problem. After solving a problem print out the solution with the question and write down with pen or pencil that how you came up with the solution, time complexity and space complexity like:

Make sure to keep some white space at the right to write down your thought process.

  1. If you can buy a premium account in Leetcode. After doing the first 75 questions you can start solving the questions by the company last 1 year. Also, always sort the questions by frequency in descending order so that you know which problems are asked the most.
  2. Whenever you solve a problem, make sure to check the Similar Problems section so that you can cover a lot of similar problems.
  3. Print on both sides of the paper so you are cost effective. Also, revise the problem you printed in the paper weekly or bi-weekly so that before the interview date you already know how to tackle the problems you solved so far. Also, you should be able to revise 200–300 problems very quickly before the actual interview which will give you a lot of confidence.
  4. In the interview, please first share your thought process with the interviewer before jumping into the code.
  5. Don’t start with the super efficient solution if you aren’t told to. But remember you have very limited time (45 minutes for 2 medium or 1 medium and one hard). So, quickly share your approach and if the interviewer wants you to be more efficient then start bringing up a more efficient solution you know. But if you have no clue how to solve the question more efficiently, then ask questions. Come to decisions very quickly. If you think there is no way you can solve it in a more efficient way, then call it out and finish the problem with brute force. If you can solve the second question in the most efficient way, then there are still possibilities that you can pass the interview even if you are not able to solve the first problem in the best efficient way.

System Design:

Very Good youtube channels:

For general System Design Concepts:

  1. https://www.youtube.com/c/GauravSensei

Advance:

  1. https://www.youtube.com/c/codeKarle (One of the best)
  2. https://www.youtube.com/c/ThinkSoftware
  3. https://www.youtube.com/channel/UC_n-A84J0UcU5uq4sEh2CnQ
  4. https://www.youtube.com/c/TechDummiesNarendraL (Very good as well)

Very good readings:

  1. https://www.educative.io/courses/grokking-the-system-design-interview (One of the best)
  2. https://github.com/Jeevan-kumar-Raj/Grokking-System-Design

Some Distributed System Talks:

https://www.youtube.com/c/DistributedSystemsCourse

--

--