Follow on G+

Review of Grokking the Coding Interview Course

 

Review of Grokking the Coding Interview Course

Grokking the Coding Interview: Patterns for Coding Questions is an online course developed by Study it. According to its authors, this course has helped thousands of people to prepare for their Coding Interviews. Study it  are also famous for their system design course Grokking the System Design Interview; I’ve reviewed that course too.

           

Review of Grokking the Coding Interview Course
Review of Grokking the Coding Interview Course

In this post, I will present a candid review of one of the most famous resources that many people use to prepare for their coding interview: Grokking the Coding Interview.

Who are the authors of this course?

This course was developed by Study IT, a group of senior engineers and hiring managers who’ve been working at FacebookGoogleAmazon, and Microsoft. The authors of this course have a lot of experience in conducting coding and system design interviews and know exactly what is being asked in these interviews. Other courses developed by the same team can be found on their website.

Let’s evaluate different aspects of this course.

Who should take this course?

This course is useful for anyone interested in preparing for coding interviews or wanting to improve their algorithms and problem-solving skills.

Is there any pre-requisite for the course?

You need to have a basic understanding of common data-structures like Array, LinkedList, HashMap, Stack, Queue, Heap, and Graph. You should also be familiar with Recursion and Big-O.

What languages are used to solve the coding questions?

Every problem presented in this course has been solved in JavaPythonC++, and JavaScript.

How to handle the unstructured nature of LeetCode?

If you are seeking a new job or preparing for a coding interview, you will definitely know LeetCode. It is probably the largest online repository of coding interview questions and also contains a vibrant community to discuss algorithms with other fellow engineers. One of the biggest challenges with LeetCode is that it lacks organization; it has a huge set of coding problems, and one feels lost on where to begin or what to focus on.

To make the coding interview preparation process organized, this course breaks coding questions into problem-solving patterns like Sliding WindowFast & Slow PointersTwo HeapsTopological Sort, etc. Following this patterns-based approach helps people to map a new problem to an already known problem. The idea behind these patterns is that once you’re familiar with a pattern, you’ll be able to solve dozens of problems with it.


Also Read

English Conversation for Teachers

100 English Conversation for kid's

Daily class room sentence for Teachers and students

Course Layout

This course presents 16 problem-solving patterns, and each pattern covers a number of coding problems and their solutions.

Each pattern begins with a brief introduction before moving on to the problems. Under each pattern, the first problem explains the underlying pattern in detail to build concepts that can be applied to subsequent problems. The later problems focus on the different constraints each problem presents and how the algorithm should be changed in order to accommodate them.

Here is a complete list of patterns covered in this course:

1. Sliding Window

2. Two Pointers

3. Fast & Slow Pointers

4. Merge Intervals

5. Cyclic Sort

6. In-place Reversal of a LinkedList

7. Tree Breadth-First Search

8. Tree Depth First Search

9. Two Heaps

10. Subsets

11. Modified Binary Search

12. Bitwise XOR

13. Top ‘K’ Elements

14. K-way Merge

15. 0/1 Knapsack

16. Topological Sort

The authors have done a good job in presenting a wide range of solution patterns and covering each pattern with a set of challenging coding problems.

Breadth of Problem-Solving Patterns

With 16 patterns, this course did a great job. The same authors have another course specifically for Dynamic Programming problem patterns Grokking Dynamic Programming Patterns for Coding Interviews; covering five DP patterns with 35 coding problems. Overall, these two courses have 21 problem patterns and cover more than 250 coding problems.

The following post by one of the authors of this course mentions a few extra patterns: Grokking LeetCode; I believe they will be introducing new patterns in the course.

Conclusion: Is Grokking the Coding Interview Worth it?

If you are preparing for Coding Interviews, this course is worth your time, especially if you feel overwhelmed by huge sets of coding problems. The main purpose of this course is to enhance problem-solving skills by focusing on the underlying problem patterns.

Post a Comment

0 Comments