Current Experience
Years : 11
Organisation : FAANG
College : Tier-1
Interview Experience
Overall interview was hard in terms of design and OS fundamentals details. Didnt expect Java threading in detail being discussed at Microsoft.
Round 1 (Coding)[1 hour]
Q.1 Maximum Path Sum in a binary tree.
Followup : Negative numbers in the nodes.
Q.2. Find cycle in a graph.
Round 2 (Coding + Mult-threading)[1 hour]
Q.1. Dont remember the exact question but it was a medium LC on heap. Gave the answer quickly, was asked to write the code for heapify as well.
Q.2. Extensive discussion on multi threading in java :
Very detailed discussion in multi threading. Interviewer wanted to see knowledge upto registers, cpu cache.
Round 3 (Coding + Design)[1.5 hours]
Q.1. There are lots of tcp packets coming in. Each packet has an offset, and the length of the content and a flag : isEnd. Last packet will have isEnd = true. Packets are coming in random order in a stream. Packets can have overlapping data Find out if its possible to contruct entire data with the packets.
Q.2 Design a memory manager in an OS.
Interviewer was a principal engineer at Azure and this was a very tough and lengthy round.
Round 4 (Coding + Project + design) [Bar raiser round with a director][1.5 hours]
Q.1 Detailed dicussion around current project. Lots of questions were asked around the design.
Q.2. Discussion around micro-services design, stateless vs stateful services, domain driven design.
Q.3. Design a service in cloud which schedules jobs. For example, user should be able to schedule a job at any point in future which can be recurring or one time job.
Q.4. Implement metrics and alarming in the job schedular service.
A day later i was informed that I had made it and was asked to share documents for further processing. Accepted the offer as profile being offered was good.