Round 1: Online Test, it was the first round with 4 sections.
Code Debugging test
2 coding questions(70 min)
Something which I observed and pointed out in round one was, the solution must be most optimized in the coding round and as questions were not with a higher difficulty level, thus must have been solved in lesser time. In my case, I finished the test half an hour before the allotted time.
Round 2 (Technical Interview 60 min): First, the interviewer asked to introduce myself. Then he asked about the projects I did. After an introductory discussion on projects, he gave me 2 coding questions on their personal live code environment.
He asked me to explain the approach first and then code it down. I had to explain the time complexity of each solution and optimal code if possible with lesser time complexity.
- Given an array, make in-place replacement such that every element is replaced by its greatest element in right.
- An array with multiple characters(may have more than one occurrences) given with a value K. Makes the minimum number of replacements in the array such that in the resultant array we have only K distinct characters(This question was asked as a word problem with some given conditions.)
Round 3 (Technical Interview 120 min): Similar to the first round there was a brief introduction from both sides. This round was coding plus the kind of HR. After 2 coding questions, I was asked to describe a tough situation which I faced while completing any project of mine, what was my target, what I did to overcome it, and what was the end result.
- A sequence is given as [ T T T T B B B B B B B B B B B T T ] where T denoted the number of TVs bikes and B denoted Bajaj bikes. Write code to count the number of Bajaj bikes in the garage in the most optimal way.
I solved it in O(log n) using binary search.
The second question was typical to understand. And I initially thought that I won’t be able to solve it. But the interviewer was very friendly and cooperative. And he made me reach towards the answer with an optimized solution. I was asked to write a complete working function for this one.
- You are given a bulk of data of 10Mbs and you have a 1Mb RAM available with you. How would you sort the complete 10 Mb of data using this RAM?
The first approach I explained it using merge sort. But it was not that optimized. I was also asked to explain the complexity of each function of the merge sort in every pass. This was something like merging N arrays.
At last, I gave a solution using heap with lesser time complexity, and the interviewer was satisfied by it in last.
15 students were selected among 38 in the interview rounds and I was one of them.