Taro Logo

Engineer Interview Experience

August 27, 2026
Neutral ExperienceGot Offer

Process

The interview lasted around 60 minutes in total.

It started with a 5-minute introduction and background discussion, followed by approximately 20 minutes of debugging exercises where I was asked to identify and fix issues in the code.

The remaining 35-40 minutes focused on a long, scenario-based coding problem that required implementing a solution while discussing the approach and trade-offs.

The session was highly interactive, with continuous questions, hints, and discussions throughout the coding process.

Questions

  • This event disconnects the same users: ["DISCONNECT", "Bob", "Alice"] (order of users does not matter)

We want to separate users based on their popularity (number of connections). To do this, write a function that takes in the event log and a number N and returns two collections:

  • [Users with fewer than N connections]
  • [Users with N or more connections]

Example: events = [ ["CONNECT","Alice","Bob"], ["DISCONNECT","Bob","Alice"], ["CONNECT","Alice","Charlie"], ["CONNECT","Dennis","Bob"], ["CONNECT","Pam","Dennis"], ["DISCONNECT","Pam","Dennis"], ["CONNECT","Pam","Dennis"], ["CONNECT","Edward","Bob"], ["CONNECT","Dennis","Charlie"], ["CONNECT","Alice","Nicole"], ["CONNECT","Pam","Edward"], ["DISCONNECT","Dennis","Charlie"], ["CONNECT","Dennis","Edward"], ["CONNECT","Charlie","Bob"] ]

Using a target of 3 connections, the expected results are:

  • Users with less than 3 connections: ["Alice", "Charlie", "Pam", "Nicole"]
  • Users with 3 or more connections: ["Dennis", "Bob", "Edward"]

All test cases:

  • grouping(events, 3) => [["Alice", "Charlie", "Pam", "Nicole"], ["Dennis", "Bob", "Edward"]]
  • grouping(events, 1) => [[], ["Alice", "Charlie", "Dennis", "Bob", "Pam", "Edward", "Nicole"]]
  • grouping(events, 10) => [["Alice", "Charlie", "Dennis", "Bob", "Pam", "Edward", "Nicole"], []]

Complexity Variable: E = number of events

Was this helpful?

Interview Statistics

The following metrics were computed from 7 interview experiences for the Karat Engineer role.

Success Rate

43%
Pass Rate

Karat's interview process for their Engineer roles is fairly selective, failing a large portion of engineers who go through it.

Experience Rating

Positive29%
Neutral29%
Negative43%

Candidates reported having negative feelings for Karat's Engineer interview process.

Karat Work Experiences