
Synthesized from 25 candidate submissions for ALL.
InMobi maintains a highly structured, technically rigorous hiring process that emphasizes core data structures, algorithms, and system design proficiency. Candidates typically undergo an initial online assessment followed by multiple technical rounds and a final managerial or behavioral interview, with interview difficulty scaling significantly based on seniority.
The candidate went through three technical rounds at Inmobi, covering data structures, algorithms, probability, and multithreading. The difficulty was moderate to high, and the candidate provided detailed solutions for each problem.
Discussion about projects and solving problems related to BST and arrays.
Find two elements in BST such that their sum is k
Given an array, find minimum positive integer missing in O(n) time
Focused on programming and problem-solving, including binary search, memory overflow issues, and array manipulation.
Write a program for binary search. Discussed if any memory overflow problems occurs and how to resolve them.
Left shift an unordered array by k times in O(n) time.
Solved probability-based problem involving robot movement on a 2D grid and a multithreading problem to track subroutine calls without using synchronized keyword.
Given an island represented in a 2D array of size mxn, a robot position (x, y), and k steps, what is the probability of the robot surviving after making k steps?
Given a subroutine in a multithreaded web application, track the number of times it is called without using the synchronized keyword.
The interview process was considered to be of average difficulty. The technical rounds focused on dynamic programming problems similar to those found on LeetCode.
The online assessment was considered relatively difficult.
The first round focused on dynamic programming problems of medium difficulty.
Dynamic programming problem (medium)
The second round focused on dynamic programming problems of hard difficulty.
Dynamic programming problem (hard)