Tip 1 : Prepare LLD and Solid principles, there are ample of videos/blogs available online
Tip 2 : For DSA, prepare standard questions really well and prepare using company tag questions.
Tip 3 : Prepare for Machine coding rounds too, not asked in Microsoft but some companies ask for it
Tip 1 : Don't clutter it and mention only things that you really know.
Tip 2 : Prepare a speech/writeup for the projects that you did
2 DSA questions, 1 question to fix syntax error
Given a C++ program, it is not doing what it is supposed to do, fix it without changing more than 1 line
just ran the code, saw the output and then saw what was expected, based on that debugged the program line by line




Let’s say you have a grid [[1,0],[1,1]]. We can say the computer ‘ARR[0][0]’ is a connected computer because there is a computer in its column other than itself. We can say the computer ‘arr[1][0]’ is a connected computer because there is a computer in its row and column other than itself. We can say the computer ‘arr[1][1]’ is a connected computer because there is a computer in its row other than itself. Therefore the number of connected computers is 3.
This is a standard problem and we can solve it using bfs or dfs
1 DSA question was asked



I found the LCA of tree (a standard problem) and then we have to add up distance from LCA to first node and distance from LCA to second node.
PS : This is a standard problem and is available online easily
1 DSA question was asked



first i found all the connected components using bfs and decided who is the root of each component. A node is root of a component if there is no other node pointing towards it. After this I created a hashmap of node to list of nodes.
key - list of all other nodes of a connected component
value - root of component.
Now if i am given a node, i can see if it is part of the key of hashmap and then can find the root using the value of it.
An LLD question was asked
Given n servers, we need to store blobs in those servers and we should make K replicas of each blob. I was supposed to discuss HLD of this, make LLD and also write some code for APIs (i wasn't asked to run the code though)
Tip 1: You will be given a vague problem statement, you'll have to discuss with interviewer to make it more clear
Tip 2: In each LLD/HLD question, there would be some part of it in which you will be more confident, try to focus on that and tell the interviewer your different approaches to build that particular component.
Tip 3: There is not right answer to these type of questions, whatever choices you make, you should be able to justify and you should be fine
This was mostly a manager round and we discussed about projects and few OS concepts.
This was mostly discussion with manager, we discussed about my projects that i had mentioned in resume, after that manager asked very basic OS questions like -
1. what is a system call
2. what is kernel mode
Tip 1 : Don't lie in your resume
Tip 2 : You should be prepared about the projects that you have mentioned in your resume, they will ask technical questions about it
Tip 3 : prepare basic OS.

Here's your problem of the day
Solving this problem will increase your chance to get selected in this company
How do you remove whitespace from the start of a string?