Master the Coding Interview: Big Tech (FAANG) Interviews
Get hired by Google, Amazon, Facebook, Microsoft, Apple, Netflix by acing their coding interview. The step-by-step guide and framework for solving their toughest questions!
What you'll learn
- ✓ Ace the coding interview at top tech companies (Google, Amazon, Facebook, Apple, Microsoft, Netflix + others)
- ✓ Step-by-step guide to solving common questions and how to best present them during the tech interview
- ✓ The ultimate resource to prepare for coding interviews, tech interviews and programming interviews
- ✓ Insider tips & tricks from instructors who have worked for big tech companies and actually gone through and aced the interview process
- ✓ A mental framework on how to approach solving coding problems so that you can become a better problem solver and answer ANY question companies throw at you
- ✓ Use the right Data Structures and Algorithms to pass coding interview questions that have the optimal solution
- ✓ Become a better developer by mastering Computer Science fundamentals
- ✓ Learn exactly what you need to answer the most difficult questions
Meet your instructors

Hi! I'm Andrei.
Senior Software Developer turned Instructor, Founder of ZTM
Andrei is the instructor of some of the highest rated programming courses on the web. Some of his students (400,000+ in the past few years) now work for some of the biggest tech companies around the world like Apple, Google, Amazon, Tesla, IBM, Shopify and many more.
He has worked as a Senior Software Developer in Silicon Valley and Toronto for many years and is now taking all that he has learned to teach programming skills and to help you discover the amazing career opportunities that being a developer allows in life.

Hi! I'm Yihua.
Senior Software Developer and Instructor
Yihua is a self-taught Web Developer who has over a decade of experience teaching in different industries. He is dedicated to helping his students gain the fundamental skills required to go from zero knowledge to getting hired, and contributing meaningfully as soon as possible.
Yihua's courses will guide you to build beautifully written and richly featured applications, while ensuring you deeply understand all the ins and outs of the complex concepts you encounter along the way. Let’s do this!
Why Zero To Mastery is right for you
With so many online resources available, it can be paralyzing not only figuring out where to start but more importantly which courses will actually teach you the skills you need to get hired.
That’s why the Zero To Mastery Academy exists, to provide industry-leading courses and content to teach you the relevant skills you need to advance your career and get you hired at some of the top companies in the world.
Join now to get complete access to this course and all others for only $23/month.
Course Curriculum
We want you to make sure this course is a good fit for you. So start learning for free right now by clicking the PREVIEW links below.
Example Curriculum
- Interview Question #1 Two Sum (7:14)
- How To Approach Our Problem (11:45)
- Writing Our Brute Force Solution (6:40)
- Testing Our Solution With Our Test Cases (9:23)
- Submitting To Leetcode (1:49)
- Analyzing Space and Time Complexity (10:37)
- Optimizing Our Solution (8:06)
- Coding Our Optimal Solution (5:21)
- Testing Our Optimal Solution With Our Test Cases (8:02)
- Checking Performance On LeetCode (3:24)
- Solution In Other Languages
- Interview Question #2 - Container With Most Water (4:46)
- Coming Up With Test Cases (4:19)
- Thinking Through A Logical Brute Force Solution (12:49)
- Coding Out Our Brute Force Solution (7:20)
- Stepping Through Our Code (4:44)
- Thinking About Our Optimal Solution (13:52)
- Coding Our Optimal Solution And Testing On LeetCode (9:50)
- Interview Question #5 - Longest Substring Without Repeating Characters (6:39)
- Coming Up With A Brute Force Approach (6:34)
- Coding Our Brute Force Solution (9:57)
- Space And Time Complexity (3:16)
- Sliding Window Technique (5:18)
- Hints For Optimizing Our Solution (2:15)
- Thinking About Optimal Solution (9:09)
- Coding Our Optimal Solution (8:30)
- Note: Correction for explanation of +1
- Optimal Code And Testing On LeetCode (3:18)
- Introducing Recursion (3:07)
- Optional: Tail Recursion (19:54)
- Sorting (2:23)
- Interview Question #13 - Kth Largest Element (6:50)
- Insights From Quick Sort (12:36)
- Understanding Divide And Conquer (8:17)
- Coding Quicksort Into Our Solution (14:53)
- Understanding Hoare's Quickselect Algorithm (6:55)
- Coding Our Solution With Quickselect (11:47)
- Correction About Time Complexity!
- Question #17 - Right Side View of Tree (6:43)
- Understanding The Breadth First Search Approach (8:26)
- Understanding The Depth First Search Approach (9:22)
- Thinking About Pre-Order, In-Order, and Post-Order Traversals For Our Solution (12:23)
- Completing Our DFS Solution (7:41)
- Coding Our Final DFS Solution (11:55)
- A General Approach To Thinking About Most Graph Questions (9:09)
- Question #20 Number Of Islands (7:50)
- Approaching Our Problem - Thinking Deeply About The Values (16:11)
- Approaching Our Problem - Thinking About Traversals (8:55)
- Coding Our Solution (19:08)
- Thinking About Space And Time Complexity (14:38)
- Question #25 - Network Time Delay (12:39)
- Thinking About How To Approach The Problem (8:37)
- Greedy Method & What Is Dijkstra's Algorithm? (15:30)
- Thinking About A Solution With Dijkstra's Algorithm (8:55)
- Coding Our Solution With Dijkstra (17:32)
- Time And Space Complexity Of Our Solution (13:08)
- Thinking About Negative Weights (7:41)
- What is The Bellman-Ford Algorithm? - Conceptualizing Dynamic Programming (16:22)
- What is The Bellman-Ford Algorithm? - The Algorithm Itself (16:17)
- Coding Our Solution With Bellman-Ford (9:19)
- Question #26 - Minimum Cost Of Climbing Stairs & How To Approach DP (9:38)
- Understanding & Identifying Recurrence Relation (15:48)
- First Step - Recursive Solution From Recurrence Relation (5:34)
- Second Step - Memoizing Our Redundant Recursive Calls (7:49)
- Coding Our Memoization Optimization (7:50)
- Understanding The Bottom Up Approach (Tabulation) (6:29)
- Third Step - Bottom Up Tabulation (5:24)
- Fourth Step - Bottom Up Optimization (6:52)
- Question #27 - Knight Probability In Chessboard (10:09)
- Thinking About Test Cases To Help Us (3:51)
- Identifying The Recurrence Relation (15:29)
- First Step - Recursive Solution From Recurrence Relation (5:10)
- Second Step - Memoizing Our Redundant Recursive Calls (14:13)
- Figuring Out The Logic For Our Bottom Up Solution (13:59)
- Third Step - Bottom Up Tabulation (8:31)
- Fourth Step - Bottom Up Optimization (6:55)
- Dynamic Programming Question List
- Understanding The Basics Of Backtracking (7:06)
- Question #28 - Sudoku Solver (4:19)
- Learning The Backtracking Template (11:18)
- Applying Our Backtracking Template To Sudoku Solver Logic (6:42)
- Coding How To Get Box ID (7:49)
- Setting Up Our Solution Code (7:05)
- Coding The Recursive Backtracking Portion Of Our Solution (19:18)
- Thinking About The Space And Time Complexity (6:58)
- Note About Appendix Videos
- Section Overview (2:24)
- What Is Good Code? (6:57)
- Big O and Scalability (11:08)
- O(n) (5:39)
- O(1) (6:10)
- Exercise: Big O Calculation
- Solution: Big O Calculation (5:54)
- Exercise: Big O Calculation 2
- Solution: Big O Calculation 2 (2:29)
- Simplifying Big O (1:50)
- Big O Rule 1 (4:28)
- Big O Rule 2 (6:36)
- Big O Rule 3 (3:13)
- O(n^2) (7:13)
- Big O Rule 4 (6:47)
- Big O Cheat Sheet (3:18)
- What Does This All Mean? (5:32)
- O(n!) (1:18)
- 3 Pillars Of Programming (3:32)
- Space Complexity (2:22)
- Exercise: Space Complexity (6:24)
- Exercise: Twitter (7:13)
- Section Summary (4:43)
- Sorting Introduction (7:01)
- The Issue With sort() (6:51)
- Sorting Algorithms (3:37)
- Bubble Sort (3:45)
- Exercise: Bubble Sort
- Solution: Bubble Sort (5:06)
- Selection Sort (2:39)
- Exercise: Selection Sort
- Solution: Selection Sort (2:23)
- Dancing Algorithms (1:36)
- Exercise: Insertion Sort
- Insertion Sort (2:38)
- Solution: Insertion Sort (2:06)
- Merge Sort and O(n log n) (8:59)
- Exercise: Merge Sort
- Solution: Merge Sort (4:44)
- Quick Sort (7:40)
Course Details
We guarantee you that this is the best FAANG interview prep course that you can find if you are serious about getting hired as a software engineer at the top tech companies in the world and making $150,000+.
Graduates of Zero To Mastery courses are now working at Google, Tesla, Amazon, Apple, IBM, JP Morgan, Facebook + other top tech companies. This could be you.
By enrolling today, you’ll get to join our exclusive live online community classroom to learn alongside thousands of students, alumni, mentors, TAs and Instructors. Most importantly, you will have a step-by-step guide and framework to ace big tech coding interviews from industry experts that have actual real-world experience working for these companies (and aced their interviews) in both Silicon Valley and Toronto.
Want to land a job at a top tech company like Google, Microsoft, Facebook, Netflix, Amazon, Apple but you are intimidated by the interview process and the coding questions? Do you find yourself feeling like you get "stuck" every time you get asked a coding question? This course is your answer.
Using the strategies, lessons, and exercises in this course, you will learn how to master the coding interview and land an offer from the company of your dreams. This is the ultimate resource to prepare you for coding interviews. Everything you need in one place!
Unlike many courses, we aren’t going to tell you: "Do these 100+ interview questions, memorize the answers and hope your interviewer asks one of them in your interview." NO! Throughout this course, you will learn a problem solving framework so that you can answer ANY interview question that these companies may throw at you. You will then practice using this framework to answer common interview questions from these big tech companies.
Instead of trying to memorize common questions, we teach you the principles and fundamentals that you can use to notice certain common patterns in questions so that any question that you get, you have a framework to answer and be confident in your programming interview.
Here is what you will learn to use in this course while answering coding interview questions step-by-step with us:
- 0️⃣ Big O Notation
- 1️⃣ Data Structures Used:
- Arrays
- Hash Tables
- Singly linked lists
- Doubly linked lists
- Stacks
- Queues
- Binary Trees
- Binary Search Trees
- Tries
- N-ary Trees
- Min/Max Heaps
- Priority Queues
- 2-D Arrays/ Matrices
- Graphs
- Adjacency List
- Adjacency Matrix
- Interface Design
- 2️⃣ Algorithmic Paradigms Used:
- Recursion
- Sorting
- Searching
- Tree Traversals
- Graph Traversals
- Breadth First Search
- Depth First Search
- Divide and Conquer
- Greedy Method
- Dynamic Programming
- Backtracking
- 3️⃣ Specific Algorithms Used:
- Hoare's Quickselect Algorithm
- Floyd's Tortoise and Hare Cycle Detection Algorithm
- Bellman-Ford Algorithm
- Dijkstra's Algorithm
- Topological Sort
We (Yihua and Andrei) are Senior Engineers and Programmers who have worked and managed teams of engineers and have been in these interviews both as an interviewee as well as the interviewer. Our job as instructors will be successful if we are able to help you get your dream job that you never thought was possible.
This course isn’t just about helping you master the coding interview (which you will!). You will also become a better problem solver which will help you throughout your entire career, making you a better programmer and helping you level-up in your career faster.
Mastering the FAANG coding interview can really change the course of your career and life. We’re excited to help you make that happen.
Click Start Learning Now and we'll see you inside the course!
Answers to (at least some of) your questions
Are there any prerequisites for this course?
- No previous Computer Science knowledge necessary
- Basic understanding of one programming language
- If you have the ambition to learn and put in the effort required to get hired by one of these companies, we will make it achievable for you! (see some of our student success stories)
Who is this course for?
- You want to work at Google, Amazon, Facebook, Microsoft, Apple, Netflix or other top tech companies earning $200K+
- Any engineer, developer, or programmer who wants to improve their interviewing skills and ace the technical interviews at big tech companies
- Anyone interested in improving their whiteboard coding skills
- Anyone who wants to become a better developer
- Anyone who wants to improve their problem solving skills
- Self-taught programmers without a computer science degree
Do you provide a certificate of completion?
We definitely do.
Can I download the videos?
Definitely. You can download any and all lessons for personal use. We do everything we can to make learning easy, fun, and accessible whether that’s on your commute, on a flight, or you just have limited access to good wifi.
Still have more questions specific to the Academy membership? No problem, head to the bottom of this page.
Live the life you want, starting now
Learning to code and becoming a developer provides endless opportunities to live the life you want. Whether that’s a high paying job with a world-class tech company, working remotely or building your own apps, the ZTM Academy will equip you with the skills and knowledge to achieve your dreams.
Our courses walk you through the entire journey of starting to learn to code to having a successful career as a developer. Along the way, you’ll not only be supported by Andrei, Yihua and course TAs but also your peers in the exclusive Zero To Mastery community.
Join now to take the first step to change your life.