My initial phone screen involved two people and three questions. It was a very positive experience, and I hoped that short, intelligent algorithms would be the way to test coding skills rather than a twisted integer permutation algorithm.
I was invited onsite and spoke with six interviewers, including two algorithm rounds. I performed well in technical communication, system design, culture fit, and team interaction rounds. The algorithm rounds, however, were confusing.
In one round, an interviewer asked how to find the square root of a given number. I proposed a couple of O(log n) solutions, selected the correct one, and coded it. The interviewer corrected a few buggy lines, and I believe I made a positive impression. I was satisfied with this interviewer.
My second algorithm interview was quite strange. The question was incomplete. We kept changing the inputs as the interviewer realized he'd missed covering a case. I was very confused until, by the end, he filled in the blanks of his own question, finally making the desired output clear. The solution involved a loop of twisted integer permutations.
As I discussed my thoughts on the solution, the interviewer steered me toward creating N trees with integer permutations, which he described as a load balancer algorithm. I did my best to write pseudocode for this, as there wasn't enough time to code it. I essentially wrote the string permutations algorithm and tried to adapt it for this solution. I'm unsure how he assessed my skills based on this. He has only a couple of years of experience, so I might not have made the cut if he made an academic-level assessment of my solution.
I'm still awaiting feedback from the team but am now worried about that final algorithm round. Otherwise, it was an excellent interview process.
Calculate the square root of a number to the nearest integer.
Given an array, break it down into k subsets where each subset's sum equals a constant M. For example, given [4, 2, 1, 3, 2, 3, 5] and k=4, you should return true because the whole array can be broken down into {4, 1}, {2, 3}, {2, 3}, {5}, which each sum to 5.
Imagine how confused you would be if you were thinking about a solution and forgot the last integer, 5, in that array for about 10 minutes.
The following metrics were computed from 22 interview experiences for the LinkedIn Senior Software Engineer role in Sunnyvale, California.
LinkedIn's interview process for their Senior Software Engineer roles in Sunnyvale, California is extremely selective, failing the vast majority of engineers.
Candidates reported having mixed feelings for LinkedIn's Senior Software Engineer interview process in Sunnyvale, California.