Round 1: Exploratory call Time: 30mins Month: Oct 1st week 2021
Discussion revolves around the projects which you have been involed in currently. The other may dive deep in the projects and can get a feel if you really worked or not. So beware to speak carefuly.
Round 2: Coderpad round Time: 1hr Oct 1st week 2021
Asked 2 coding questions.
Find the first non repeating char from a String.
Can be solved in O(N) with extra space as hashmap. The interviewer was convinced. Was to write the code and run test cases.
Array of integers. Find the minimum size of subarray whose sum is atleast the target.
Based on sliding window concept.
Started with Brute force approach of O(N^2) but he then asked me to optimize it. Then after a while, came up with Sliding window technique. and was convinced. Asked to code and run test cases.
Round3, 4, 5: Superday
back to back 3 tech rounds.
Round 3 was again on algo/DS.
Q1. given a array of sorted numbers. Given a target k. Return an array with its first occuring index and last occuring index.
E.g. [1, 2, 3, 3, 3, 4, 5] k=3. then ans=[2,3] if k=1 then ans=[0,0] if k=7 then ans=[-1,-1]
Started with O(N) solution and then explained Binary Search techinue.
The interviewer was convinced and asked me to write the code ans run the test cases.
Q2. Based on Trie.
3 API were need to be written. void insertWord(String word), boolean searchWord(String word), boolean startsWith(String prefix).
SearchWord means search the whole word and return true/false.
startsWith(String prefix) means return true if prefix exists in the system.
E.g. insert words: hello, samsung, goldman
searchWord(hello) : return true, searchWord(hell): return false
startsWith(hell): return true.
explained the implementation and also written the code.
Then he added 1 more API - getTop5Words(prefix) in the question that if we have to return top k words for a particular prefix.
Solution: prepare heap at every node. you will have heapify all the heaps till root for every insertion.
Round 4: System Design
Q1> Design facebook friend suggestion
Not complete designing. but logic on how to find the suggestion list.
then he tweaked the question (don't remember this part) but involved techinques/cases of hot users,
cache, in memory calculations etc.
Round 5: Again Technical
disucssions were mainly around Design patterns such as Factory Design pattern, Singleton design pattern,
Then about some output confirmation related to call by value and call by reference in java
And lastly about API designing, REST APIs, (GET,PUT, DELETE), then fail over scenarios in system design.
Round 6: Hiring Manager in USA
Dsicussion mainly revolved around projects, people management, leadership skills
I had interests in Stock market. So he asked me some basic questions like What is a share?
Round 7: Hiring Manager in India
Discussion about my people management skills.
how to handle conflicts? Explain scenario where I had taken tough decisions.
how would you choose your decision making on a particular topic?
consensus based decision vs own decision.
what if 1 person in your team does not listen to you? or what if he interrupts you in every session in front of teams.
Round 8: Product Manager in Poland
lasted for 15-20 mins. Wanted to see if I had worked with product managers or not.
Finally, after 2 days I got to know that I got selected in GS.