Tip 1 : There was very less time gap between interview call and interviews, so be prepared.
Tip 2 : Try to solve problems without applying topic tags, this will help us to solve new problems.
Tip 3 : Try developing projects using various design patterns and SOLID principles.
Tip 1 : Need two development projects
Tip 2 : Product based companies
It happened in morning





1. String ‘s’, ‘t’ and ‘str’ consist of only lowercase English letters from ‘a’ – ‘z’.
2. String ‘s’ and ‘t’ are of same length.
Let s = “abc” , t = “xyz” and str = “xbc” then all strings that we can generate are “abc”, “abz”, “ayc”,”ayz”, “xbc”, “xbz”, “xyc”, “xyz” and smallest of all these is “abc”.
The interview started with self introduction followed by work and project which I'm doing in current company. Tech stack which I use in current project has been asked.
Two Coding questions, we have to write a production ready code which cover all the edge cases. This was also conducted on Codility.



Solved the question using various approaches in the decreasing order of time complexities and finally coded the optimized version using binary search. (Easy-Medium)
A story based question which was asked in terms of threads and tasks.
Never solved this type of question earlier hence took some time to analyze and come up with a solution. Interviewer was helpful, answered all of my doubts. Finally solved the question using BFS + degrees concept. Interviewer asked me to think about edge cases. Missed one of the edge cases, got to know regarding it from the Interviewer, made code modifications to handle it. (Med-Hard)
Taken by Software Engineer with 5+ years of experience.
Detailed discussion about current work and tech stack.



Input:
'num1' : 1 -> 2 -> 3 -> NULL
'num2' : 4 -> 5 -> 6 -> NULL
Output: 5 -> 7 -> 9 -> NULL
Explanation: 'num1' represents the number 321 and 'num2' represents 654. Their sum is 975.



The same letter cell should not be used more than once.
For a given word “design” and the given 2D board
[[q’, ‘v’, ‘m’, ‘h’],
[‘d’, ‘e’, ‘s’, ‘i’],
[‘d’, ‘g’, ‘f’, ‘g’],
[‘e’, ‘c’, ‘p’, ‘n’]]
The word design can be formed by sequentially adjacent cells as shown by the highlighted color in the 2nd row and last column.

Trie based approach. Only asked for approach, did not ask to code
Discussion on Multi-Threading, Mutual Exclusion, Design Patterns in Java, Inheritance vs Interfaces, Synchronization, Producer-Consumer problem
This round also started off with introduction followed by prior experience. Then Interviewer asked me an LLD question where I needed to design and code one of the Microsoft Product's features. Used SOLID principles and factory pattern in designing which impressed the interviewer. (Thanks to my current company's project where I learnt and used SOLID principles + various design patterns in production). Then I wrote code for my design. Interviewer told me that it is correct solution but can still be improvised with additional design patterns. Then I was asked two programming questions.



This was the last round. Interviewer was one of the senior most persons with 15+ years of experience in Microsoft. Again I gave my intro, clearly explained the work which I currenlty do with architecture diagrams. The result of previous round was very good, hence didn't get any technical questions further. Was asked generic questions like reason to join Microsoft, how my life went till now etc.
Why do you want to join Microsoft?
How was your previous work experience?



'S' = "{}()".
There is always an opening brace before a closing brace i.e. '{' before '}', '(' before ').
So the 'S' is Balanced.

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?