Open Chapter Overview

Forward

Asynchronous Technical Assessments

Next Module

Technical Screens: CodeSignal, HackerRank, Karat, others

Most companies will have some type of Pre-screen or Coding Assessment to weed out candidates with strong resumes who can’t actually code. The tests will be 2-4 Leetcode questions, and you’ll have 45-90 minutes to complete them. CodeSignal and HackerRank both have practice questions and tests that you can take, with problems that range from very easy to very hard.

When you take these assessments, pay extra attention to edge cases. Messing up even one edge case can lead to automatic rejection from a company. So while time is important and you should work as quickly as possible, take the extra few minutes to look over your code and think about edge cases before submitting.

Some assessments may record your screen or prevent you from looking at other tabs while you take the test. It's important not to cheat on these, even though it might be tempting. The company will almost certainly be able to tell, and you'll be automatically rejected.

KaratKarat is a service that offers third-party live technical interviews. Some companies use Karat so that their engineers don’t have to spend time on interviews themselves. These interviews are 60 minutes long and are very similar to a standard technical interview, except with someone who doesn’t actually work for the company you’re interviewing for. The interviewer will be scoring you based on a rubric specifically designed by the company, and a numeric score (likely based on a 5-point scale) will be sent to the company after your interview.

One unique benefit of Karat is that if you truly bomb the interview, you can request another interview within 24 hours. This second one will replace the first, and give you a great chance to make up for your previous mistakes.

If you’re taking one of these screens and can’t solve a problem, don’t panic. First, code a working version that is very space or time inefficient, and submit that (it should pass some of the test cases). From there, think about how to optimize your code to make it run faster or require less memory. The company will likely be able to see how often you run your code, as well as the progress you make throughout the test. So if you start from a mediocre solution and improve to a pretty good solution, that might be enough to convince them that you’ll be a good intern.

Take-Home Assessments

Some smaller companies will have candidates do a take home coding assessment. These are also popular for more specialized roles, such as Data Science or Front-end Development. If you get a take home assessment, you’ll receive some code or a problem to solve and have a few days to submit your work. Often, you’ll have to work through a challenge or implement a feature, and you can use all available resources (Stack Overflow, YouTube tutorials, etc.). The key things you’ll be assessed on are:

Functionality

Your solution accomplishes all of the stated goals

Code

Your code is clean, readable, and well-commented

Time

You submit the assessment within the time limit

There may be discussions online about the take-home assessment for each company. The company requires (and we recommend) that you don’t look up the answers. We believe that nothing good can come from passing the assessment fraudulently. Some other reasons not to cheat:

  • You may be asked to explain how the code works, and it will look very suspicious if you can’t explain the code you submitted
  • These assessments are good learning opportunities, which you’d be depriving yourself of by cheating
  • The company may monitor these forums and be able to see that you’ve been on the site (unlikely, but not impossible)