To prepare for technical interviews and OAs there is one thing that comes to mind: coding exercises. And while this certainly is the most important aspect of technical interviews, how we approach them is even more important.

#V1RGINS FOR LIFE.

#V1RGINS FOR LIFE.

We will be using leetcode.com as out chosen platform of choice. Of course there are other platforms that you can use, but leetcode tends to have the best selection of problems.

How to grind Leetcode.

1. What is the UMPIRE Method?

To start off with please read this article before.

UMPIRE Interview Strategy | CodePath Cliffnotes

UMPIRE stands for:

  1. Understand what the interviewer is asking for by using test cases and questions about the problem.
  2. Match what this problem looks like to known categories of problems, e.g. Linked List or Dynamic Programming and strategies or patterns in those categories.
  3. Plan the solution with appropriate visualizations and pseudocode.
  4. Implement the code to solve the algorithm.
  5. Review the code by running specific example(s) and recording values (watchlist) of your code's variables along the way.
  6. Evaluate the performance of your algorithm and state any strong/weak or future potential work.

Why is this important?

It is important to train your brain to think in the UMPIRE method because it is exactly what interviewers are looking for. Going through each step of UMPIRE showcases that you have a structured thinking process and allows you to answer questions with a more nuanced approach. Every single leetcode you solve should be solved in this structure.

2. What problems do I solve?

Right off the bat, you do not need to do 200 leetcode questions to get a job. You probably should be fine with 30-50 problems for the upcoming recruiting season if you do them properly.

I would recommend going through Neetcode 150 and doing around 2-3 problems in each category (at least 2 mediums in each) at the bare minimum. This will give you a good breadth of problems. When working on categories do one section at a time

A good strategy for if you cannot solve a problem in 30 minutes is to watch or read the solution, make sure you understand the solution thoroughly, and then just redo the problem by yourself using UMPIRE.

This is the link for Neetcode 150. Each node is a category.

This is the link for Neetcode 150. Each node is a category.