Online Bootcamp for Coding Interviews

Online Bootcamp for Coding Interviews

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 85h 46m | 17.8 GB

The Best Way to get Offer Letters from Top Tech Companies

Tired of looking at problems online? We focus on techniques. We call these Building Blocks for Technical Interviews

Learn these Blocks and practice our problems – you will find it much easier to crack interviews.

We cover all major topics in algorithms and system design

Our material is self-paced and curated for real interviews.

Algorithm Topics
We focus on techniques. For each technique, we explain practice problems and assign homework problems.

  • Arrays and Strings
  • Binary Search
  • Recursion
  • Backtracking
  • Linked List
  • Stack
  • Queue
  • Dynamic Programming
  • Binary Tree
  • Binary Search Tree
  • Hash Table
  • Hash Functions
  • Graph
  • Heap
  • Sorting Algorithms
  • Bit Manipulation
  • Selection Algorithm
  • Trie
  • Approaching Problems
  • Execution in Memory
  • Common Myths

System Design Topics
We provide a framework for system design questions. We cover several core system design components in great depth.

  • Approaching System Design
  • Anatomy of Scalable Backends
  • Distributed File System Design
  • Distributed Processing
  • Distributed Caching
  • Partitioning Functions
  • Dynamic Sharding
  • Consistent Hashing
  • CAP Theorem
  • Sorting Large Data
  • Database Indexing
  • MySQL vs NoSQL
  • Which Database to Use
  • Load Balancers
  • Key-Value Stores
  • Wide Column Stores
  • Nearest Neighbors Search
  • Designing Web Backends
  • Messaging Backend
  • E-Commerce Backend
  • Other Common Questions
Table of Contents

1 Welcome! Introduction to this Course
2 Hash Tables and Sorting for Beginners
3 Program Execution in Memory
4 Example of a great coding interview
5 Traversing Array in Reverse (Using ESTCV Approach)
6 Traverse from Both Ends ep1
7 Traverse from Both Ends ep2
8 Partitioning Array ep1
9 Partitioning Array ep2
10 Partitioning Array ep3
11 Partitioning Array ep4
12 Partitioning Array ep5
13 Kadane’s Algorithm Part 1: Intro to Subarrays
14 Kadane’s Algorithm Part 2: Problem Intro and Brute Force Solution
15 Kadane’s Algorithm Part 3: Kadane’s Algorithm
16 Kadane’s Algorithm Part 4: Kadane Implementation
17 Sliding Window using Two Pointers Part 1: Problem Intro and Clarifications
18 Sliding Window using Two Pointers Part 2: Solving it with the Sliding Window Technique
19 Sliding Window using Two Pointers Part 3: Implementation
20 Prefix Sums Part 1: Algorithm using Prefix Sums
21 Prefix Sums Part 2: Implementation
22 Anatomy of a Scalable Web Application ep1
23 Anatomy of a Scalable Web Application ep2
24 Approach for System Design Interviews
25 Approach for System Design Interviews + Uber/Lyft Design
26 Load Balancers and App Servers ep1
27 Load Balancers and App Servers ep2
28 Load Balancers and App Servers ep3
29 CAP Theorem for Beginners
30 Sharding – Using Partition Functions
31 Dynamic Sharding
32 Sharding – Consistent Hashing
33 Implementation ep1
34 Implementation ep2
35 Binary Search with Duplicates
36 Search for Closest – Record and Move On
37 Special Tricks ep1
38 Special Tricks ep2
39 Intro to Recursion and Memoization ep1
40 Intro to Recursion and Memoization ep2
41 Permutations/Combinations using Auxiliary Buffer Part 1: Intro to Permutations/Combinations using Aux Buffer
42 Permutations/Combinations using Auxiliary Buffer Part 2: Using Aux Buffer to solve a very common interview problem
43 Permutations/Combinations using Auxiliary Buffer Part 3: Print all Subsets of an Array
44 Permutations/Combinations using Auxiliary Buffer Part 4: Permutations
45 Backtracking Spaceship
46 Backtracking Spaceship Video 2: Implementing the Function
47 Backtracking Spaceship Video 3: Analyzing the Time and Space Complexity
48 Implementation ep1
49 Implementation ep2
50 Append Function ep1
51 Append Function ep2
52 Deleting Nodes ep1
53 Deleting Nodes ep2
54 Slow Pointer, Fast Pointer
55 Linked Hash Table
56 Reversing a Linked List
57 Stack – Intro
58 Stack as Restriction ep1
59 Stack as Restriction ep2
60 Stack with Max
61 Expression Evaluation 1. Postfix Expression
62 Expression Evaluation 2. Infix Expression
63 Expression Evaluation 3. Infix Expression Code
64 Expression Evaluation 4. Infix Expression with Parenthesis
65 Databases – Intro to Indexing and NoSQL ep1
66 Databases – Intro to Indexing and NoSQL ep2
67 Key-Value Stores incl. Object Stores, In Memory DBs 1.Introduction to Key Value Stores
68 Key-Value Stores incl. Object Stores, In Memory DBs 2.Special Types of Key Value Stores – Object Stores, In Memory DB, Distributed Cache
69 Wide Column Stores – e.g, HBase, Cassandra 1.Intro to Wide Column Stores
70 Wide Column Stores – e.g, HBase, Cassandra 2.An example of storing Google’s Web Crawling data in a Wide Column store.
71 Wide Column Stores – e.g, HBase, Cassandra 3.Below, we look at how to use Indexes in the Store to speed up certain queries
72 Transaction Processing ep1
73 Transaction Processing ep2
74 Queue – Intro ep1
75 Queue – Intro ep2
76 Queue – Sliding Window ep1
77 Queue – Sliding Window ep2
78 Queue with Max
79 Intro Part 1: Conditions where Dynamic Programming is Applicable
80 Intro Part 2: Two ways of Implementing DP Solutions – Tabulation and Memoization
81 Approaching Dynamic Programming Problems Part 1: Intro to Approaches
82 Approaching Dynamic Programming Problems Part 2: Bottom-Up Thinking
83 Approaching Dynamic Programming Problems Part 3: Top-Down Thinking
84 Approaching Dynamic Programming Problems Part 4
85 Max Diff
86 2D Arrays
87 Special Tricks
88 Add/Multiply without Operators Part 1: BigInteger Addition Algorithm
89 Add/Multiply without Operators Part 2: BigInteger Addition Implementation
90 Add/Multiply without Operators Part 3: BigInteger Multiplication Algorithm + Implementation
91 Hash Table – Implementation ep1
92 Hash Table – Implementation ep2
93 Hash Table – Hash Functions
94 Hash Table – String Search
95 Distributed File System Design ep1
96 Distributed File System Design ep2
97 Distributed File System Design ep3
98 Distributed Processing using MapReduce ep1
99 Distributed Processing using MapReduce ep2
100 Distributed Processing using MapReduce ep3
101 Distributed Processing using MapReduce ep4
102 Spatial Indexing – Nearest Neighbors Search ep1
103 Spatial Indexing – Nearest Neighbors Search ep2
104 Spatial Indexing – Nearest Neighbors Search ep3
105 Spatial Indexing – Nearest Neighbors Search ep4
106 Graphs I – Basics
107 Graphs I – DFS
108 Graphs I – BFS
109 Graphs I – Topological Sort
110 Heaps – Intro, Implementation ep1
111 Heaps – Intro, Implementation ep2
112 Line Sweep – Intro
113 Line Sweep – Skyline Problem
114 Selection Algorithm – Intro, Implementation ep1
115 Selection Algorithm – Intro, Implementation ep2
116 Selection Algorithm – Intro, Implementation ep3
117 Sorting Algorithms Intro
118 Merge Sort and Quick Sort ep1
119 Merge Sort and Quick Sort ep2
120 Merge Sort and Quick Sort ep3
121 Stability and Sorting Large Data ep1
122 Stability and Sorting Large Data ep2
123 Special Tricks
124 Graphs II – Detecting Cycles
125 Graphs II – Bipartite Graph
126 Graphs II – Connected Components
127 Bit Manipulation – Intro
128 Bit Manipulation – Flip Bits
129 Bit Manipulation – Get & Set Bits
130 Bit Manipulation – Swap Bits
131 Bit Manipulation – LSB
132 Bit Manipulation – Complement of Integer
133 Bit Manipulation – Duplicate XOR
134 Binary Tree – Intro, Traversing ep1
135 Binary Tree – Intro, Traversing ep2
136 Binary Tree – Intro, Traversing ep3
137 Binary Tree – Top to Bottom
138 Binary Tree – Bottom to Top ep1
139 Binary Tree – Bottom to Top ep2
140 Binary Tree – Lowest Common Ancestor
141 Binary Tree – Reconstruction
142 Binary Search Tree – Intro, Implementation ep1
143 Binary Search Tree – Intro, Implementation ep2
144 Binary Search Tree – Record and Move On
145 Binary Search Tree – Successor
146 Binary Search Tree – LCA
147 Binary Search Tree – Building Balanced BSTs
148 Trie – Intro
149 Trie – Implementation ep1
150 Trie – Implementation ep2
151 Majority Search – Half
152 Majority Search – 1/k
153 Examples of Sharding/Partitioning, Local/Global Indexing
154 Understanding ACID vs BASE, Database Transactions
155 Replication – Synchronous, Asynchronous
156 Capacity Estimation + Different Types of Caching
157 Facebook Manager Q&A
158 Behavioral Interviews – Tips and Discussions
159 Object Oriented Design Interviews (Design a Parking Lot)
160 Q&A with a Candidate who got multiple offers
161 System Design for Search Index (Amazon Elasticsearch, Apache Lucene)
162 Mock Phone Interview – Expression Calculator
163 Facebook News Feed Design (Recommendation System)
164 Messaging Application System Design (WhatsApp, Messenger)
165 Mock Interview – System Design (Facebook, Instagram)
166 Consistent Hashing Discussion – Horizontally Scaling Systems
167 2 Mock Phone Interviews – Algorithms
168 Scaling your Algorithms for Large Data
169 Improving Performance of Web Applications
170 Video Sharing Service (Youtube, Netflix)
171 Design a Job Scheduler
172 Q&A with a successful candidate + Uber/Lyft System Design
173 Design a Web Crawler
174 Q&A with an Amazon engineer
175 Q&A with a Google Tech Lead
176 Q&A with a Google Engineer
177 Security Considerations while Designing Web Applications
178 Design HackerRank (Coding Competition Application)
179 Q&A with an Amazon engineer )
180 Sharding with Examples
181 2 Good Mock System Design Interviews
182 Transaction Isolation Levels
183 2 Mock Interviews
184 Example of a Good Mock System Design Interview
185 Job Scheduler Design
186 Producer-Consumer Problem
187 Subarray Sum Problems ep1
188 Subarray Sum Problems ep2
189 Subarray Sum Problems ep3
190 Dutch National Flag
191 Backtracking Problems ep1
192 Backtracking Problems ep2