LinkedIn | On-site | Systems and Infra
Summary
I recently went through an on-site interview process with LinkedIn for a Systems and Infra role. The interview included multiple rounds covering coding, algorithms, system design, and behavioral aspects, across a phone screen and four on-site rounds.
Full Experience
My interview process began with a phone screen. The technical part involved a problem called RetainBestCache, where I was asked to make it thread-safe and identify potential race conditions for each locked section. Additionally, we discussed fundamental operating system concepts such as the differences between processes and threads, the roles of heap and stack memory, and methods for inter-process communication.
The first on-site round was dedicated to coding and algorithms. I was presented with two problems: Closest Binary Search Tree Value II and Paint House.
The second on-site round was with a hiring manager. This round focused on behavioral questions and an in-depth discussion about my past projects and experiences.
The third on-site was another coding round. Here, I had to solve Number of Islands and Binary Tree Upside Down.
Finally, the fourth on-site was a system design round. We started with approximately 10 minutes discussing my previous projects. Following that, the core problem involved designing a high-level system for scheduling cron jobs with fixed intervals.
Interview Questions (8)
I was asked to design a RetainBestCache and then make it thread-safe. A crucial part of the problem was to provide specific examples of race conditions for each section of the code where I applied a lock.
This part of the phone screen involved discussion-based questions covering foundational operating system concepts. We discussed the distinctions between processes and threads, the allocation and usage of heap versus stack memory, and various mechanisms for inter-process communication.
There are a row of n houses, each can be painted with one of three colors: red, blue or green. The cost of painting each house with a certain color is different. I needed to paint all the houses such that no two adjacent houses have the same color. I had to find the minimum cost to paint all houses.
This round primarily consisted of standard behavioral interview questions. Additionally, there was an in-depth discussion about my past projects, where I elaborated on my contributions, challenges faced, and lessons learned.
Given an m x n 2D binary grid which represents a map of '1's (land) and '0's (water), I needed to count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or vertically. I could assume all four edges of the grid are all surrounded by water.
The system design question focused on creating a High-Level Design (HLD) for a system capable of scheduling and executing cron jobs with fixed intervals.