Round 1: Pen Paper based coding round
I was asked to solve 3 coding question where i was allowed to write pseudo code for the first two questions, while the 3rd question was supposed to be written in complete optimised working code .
- Print the maximum node value at each level of a binary tree.
- Find a pair with maximum sum which are at least k distance apart in the given array. Also Consider the Array to be circular. I gave a brute force solution and then optimised it to O(n)
- Write a full program in Java (or other preferred language) to print n prime numbers!
Round 2: Pen paper based coding + tech round
I was asked two coding questions and one SQL query question:
- Square root of number in optimised way. Also a variation of this question: Find if a number is perfect square or not.(Hint: Use Binary Search)
- Compress a given string with the following rules such that you produce smallest possible string:
If there are two or more consecutive characters which are same, then reduce it to zero character. If there is only one character then you cannot compress it. The order of compression of the characters would matter. For example, if given string is: aabba. You remove first “aa” resultant string would be “bba“. Then remove “bb“, the resultant string would be “a“. Then you cannot compress any further, so the answer would be “a”, which is of length 1. However, if you first remove “bb” from “aabba“, the resultant string would be “aaa“, and then the 3 A’s can be removed together. This would result in empty string of length “0”. So better answer is “” which is of length 0.
- I was asked to write a SQL query. In a hotel room booking table, for a given date range, check if a booking can be created, or there doesn’t exist a booking which overlaps with the given date range.
Round 3: Hiring Manager Round.
After having a brief introduction, we had discussion on:
- The project that I am working on in my present organisation.
- The Technology we work on.
- The HLD and architecture of my project and the functionality of each micro-services.
- Work of the team I would be joining and other discussions around it.
The he asked me a problem solving question: Maximum number of handshakes.
Round 4: Pen paper based coding + Tech round.
- Questions on the architecture of my project.
- Questions on NodeJS and process manager.
- Write a program to find the counts of 1 in sorted binary array in optimised way.
Round 5: Tech round.
- Questions on OOPS concepts and Interfaces.
I was given an offer in the end after couple of days.