Nutanix | MTS-4 | Bangalore | 2020 [Offer]
Anonymous User
5832

YOE - 6
I applied through linkedin post shared by one of the connections who was looking to hire for his platform team. I had a total 6 rounds (5 Technical + 1 behavioral). All the coding rounds were on hackerrank platform and video calls on Zoom.

Round - 1
Q1 - I was asked a question of arrays mixed with sliding window. I discussed the approach and coded the solution. It followed by one quick question that if negative numbers were allowed, will the solution work or not.
Q2 - Serialize and deserialize a binary tree. We discussed various approaches before coding and coded the most optimal one (Both from Time and space perspective).

Round - 2
It started with discussions on operating systems, coding, how an operating system is loaded in a new machine and how it works internally from memory perspective. I guess, these questions were team specific and they wanted to check the knowledge in the field of what the team does.
It was followed by one coding problem where I had to make a data structure with read, write and delete in O(1) time complexity. Once the coding part of this problem was done, it was further extended to modify the data structure as to get the number of elements less than the current element in constant time. I was asked to code that as well.

Round - 3
I was asked two coding problems. Both of them were related to binary trees.
Q1 - I don't remember the question exactly but it was like, given a binary tree we need to modify the tree where each node has the value of sum of this children and parent node. If it's NULL, consider them as of value 0. I discussed various approaches and finally coded the problem.
Q2 - This was an interesting question and new to me. There is a binary tree which can be considered as a forest. One of the nodes catches fire and now at every timestamp, the fire is spreading to this neighbours (parent and children). How long will it take for the whole tree to burn? Some discussions were done on how the time complexity will be computed in various scenarios (skewed tree, complete binary tree). Later I was asked to code the problem assuming we don't have a direct pointer from children to the parent node.

Round - 4
Q1 - This was taken by a senior person who first had a quick discussion with me on the current tools, platform, linux commands we use in my current job. How we debug memory corruption issue, various gdb commands, narrowing down the issue from big GBs of logs, putting diagnostics and around that.
Q2 - Followed by that, I was asked a coding problem, where we have plants' health in the form of array. At some point, one of the plants gets infected and now it will spread the infection to its immediate left and right plant at every time stamp. If your current plant's heath is greater than infected plan, its health will be reduced by infected plant's health. After a certain point of time, the whole array will become stable when all the plants will die or are far enough to not infect each other. We had to compute how much time it will take to reach that stable state. We discussed the approach and coded the problem.

For example given input -
int plants[1,3,8,6,7,4]
Let's say the plant with height 6 gets infected at T0.
Then at T1 we will have something like [1,3,2,0,1,4]. plants[3] will die and the infection reduce the health of neighbours by 6. Now the infection will spread to plants[2] and plants[4]
At T2, plants[2] and plants[4] will die and the array will look something like [1,1,0,0,0,3] i.e (3-2 and 4-1). Now plants[1] and plants[5] are infected.
Now there are no more plants which are neighbours of infected plants whose health is greater than infected health, so we stop and return 2.

Round - 5 (Hiring manager Round)
It was a system design round where we had a good 40 minutes discussion on designing a UPI based payment app. Various aspects of the design including the microservices, APIs, load balancers, user and transaction databases, encryption, security and caching were discussed.
It was followed by one medium level programming question which I don't remember clearly but it was very doable.
It was followed by him explaining in detail about what kind of work their team is doing and where it lies in the whole nutanix architecture.

Round - 6 (Behavioral Round)
After 5 rounds, an internal review was done and my technical rounds were cleared. It was followed by behavioral round with a senior person (Director level) who asked various scenario based questions which you might already know if you have prepared or faced Amazon behavioral questions.

After salary negotiations and everything, I accepted the offer one week post that.
Salary details - https://leetcode.com/discuss/compensation/900326/Nutanix-or-MTS-4-or-Bangalore

Comments (4)