Round 1 (DSA round - 1 hour):
Q1. Given an equation string, calculate the output of the equation. For example: (add(1,sub(5,add(1,2)))) gives output as 3. Brackets will always be balanced and operands can be add, sub, mul, div.
Q2. Top K frequent elements (from Leetcode).
Needed to code both solutions.
Round 2 (Machine Coding - 1 hour):
There is a deployment package version management system. A package version can be compatible with the previous version if there is no data migration required for the deployment. Implement following two methods:
Write well structured and modular code.
Round 3 (Hiring Manager - 1 hour):
Standard behavioral questions around team, conflicts and expectations.
Round 4 (Bar raiser Design round - 1 hour):
I was asked to draw a high level design of one of my projects, discussed the architecture and asked to justify the use of the technology stack. This took around 25 minutes. Then, I was asked to design (high level design) a chat application to send messages from one user to another. No group messages and call feature has to be implemented.