Member-only story
Grokking the Coding Interview
Don’t Just LeetCode; Follow the Coding Patterns Instead
What if you don’t like to practice 100s of coding questions before the interview?

Coding Interviews are getting harder. To prepare for coding interviews, you will need weeks, if not months, of preparation.
No one likes spending that much time preparing for coding interviews. So, is there a smarter solution?
First, let’s look at the problem.
Anyone preparing for coding interviews knows LeetCode. It is probably the biggest online repository for coding interview questions. Let’s take a look at what problems people face when using LeetCode.
Problems with LeetCode
There are around 3k problems on LeetCode. The biggest challenge with LeetCode is its lack of organization; it has a huge set of coding problems, and you are not sure where to start or what to focus on.
One wonders if there is an adequate number of questions one should go through to consider oneself prepared for a coding interview.
I would love to see a streamlined process that guides me and teaches me enough algorithmic techniques to feel confident for the interview. As a lazy person myself, I wouldn’t want to go through even 500 questions, let alone 3k.
The Solution
One technique that people often follow is to solve questions related to the same data structure; for example, focusing on questions related to Arrays, then LinkedList, HashMap, Heap, Tree, Graph, or Trie, etc. Although this does provide some organization, it still lacks coherence. For example, many questions can be solved using HashMap but still require different algorithmic techniques.
I would love to see question sets that follow not only the same data structure but also similar algorithmic techniques.
The best thing I came across was the problem-solving coding patterns like Sliding Window, Fast and Slow Pointers, Two Pointers, Two Heaps, Topological Sort, etc. Following these patterns helped me nurture my ability to ‘map a new problem to an already known problem’. This not only made…