Microsoft SDE Intern Interview Experience
💼 LTIMindtree Interview Experience (On-Campus) | Fresher | 2026
Salesforce SMTS | Interview Experience | Rejected
JPMC | SDE2 (Associate) - Java Backend - Interview Experience + Compensation
Microsoft - SDE2 - Coding Round
Wayfair | Senior Software Engineer | L4 | Bangalore | Rejected
Summary
I recently interviewed at Wayfair for a Senior Software Engineer, L4 role in Bangalore. The process included a phone interview with a detailed coding problem and multiple system design questions, but I was ultimately rejected for the onsite round.
Full Experience
I applied for a Senior Software Engineer, L4 role at Wayfair through Instahyre and was contacted by a recruiter. After an initial Google Meet screening to discuss my current role and responsibilities, the recruiter confirmed that I was suitable for the L4 role, and no online assessment was required due to the seniority of the position.
The phone interview round lasted about 45 minutes. It began with a 5-minute introduction, followed by a 20-minute coding/problem-solving session. This led into a 15-minute system design discussion, and the interview concluded with 5 minutes for me to ask questions to the interviewer.
Unfortunately, the final verdict was 'No Hire,' and I wasn't able to move forward to the onsite rounds. A cooling period of 6 months has been applied.
Interview Questions (5)
We are working on a security system for a badged-access room in our company's building.
Given an ordered list of employees who used their badge to enter or exit the room, write a function that returns two collections:
- All employees who didn't use their badge while exiting the room - they recorded an enter without a matching exit. (All employees are required to leave the room before the log ends.)
- All employees who didn't use their badge while entering the room - they recorded an exit without a matching enter. (The room is empty when the log begins.)
Each collection should contain no duplicates, regardless of how many times a given employee matches the criteria for belonging to it.
records1 = [
["Paul", "enter"],
["Pauline", "exit"],
["Paul", "enter"],
["Paul", "exit"],
["Martha", "exit"],
["Joe", "enter"],
["Martha", "enter"],
["Steve", "enter"],
["Martha", "exit"],
["Jennifer", "enter"],
["Joe", "enter"],
["Curtis", "exit"],
["Curtis", "enter"],
["Joe", "exit"],
["Martha", "enter"],
["Martha", "exit"],
["Jennifer", "exit"],
["Joe", "enter"],
["Joe", "enter"],
["Martha", "exit"],
["Joe", "exit"],
["Joe", "exit"]
]ENTER W/O EXIT EXIT W/O ENTER
Expected output: ["Steve", "Curtis", "Paul", "Joe"], ["Martha", "Pauline", "Curtis", "Joe"]
Other test cases:
records2 = [
["Paul", "enter"],
["Paul", "exit"],
]Expected output: [], []
records3 = [
["Paul", "enter"],
["Paul", "enter"],
["Paul", "exit"],
["Paul", "exit"],
]Expected output: ["Paul"], ["Paul"]
records4 = [
["Raj", "enter"],
["Paul", "enter"],
["Paul", "exit"],
["Paul", "exit"],
["Paul", "enter"],
["Raj", "enter"],
]Expected output: ["Raj", "Paul"], ["Paul"]
All Test Cases:
mismatches(records1) => ["Steve", "Curtis", "Paul", "Joe"], ["Martha", "Pauline", "Curtis", "Joe"]
mismatches(records2) => [], []
mismatches(records3) => ["Paul"], ["Paul"]
mismatches(records4) => ["Raj", "Paul"], ["Paul"]
n: length of the badge records array
We are building a real time group chat app that consists of a backend server and a frontend web app. Our MVP needs to support multiple users joining a group. When a user is part of a group, that user should be able to send a message to all other users in the group and read all messages posted in the group.
How would you design this group chat application, specifically what protocol(s) could be used to communicate between our server and client web app?
We are working on a clone of Facebook. We want to add a numeric count to every post showing how many friends the post's author has at the time of viewing the post, like this:
Marie McWilliams (105 friends)
I had a great day today, feeling good!
Our database has two tables:
USER
'user_id' (primary key)
'name'
'created_date'
USER_RELATIONSHIP
'friendship_id' (primary key, unique to each relationship)
'user1_id' (indexed)
'user2_id' (indexed)
'start_date'
Focusing on the database, how would you implement the friend-count feature? Note we will soon be more popular than Facebook, so the solution needs to scale.
We are working on a clone of Google Docs that allows users to collaborate on documents. Many users can work on the same document at the same time. We have 100 instances of our service running on 100 different machines. Each document needs to be managed exclusively by one instance while it is in use, but one instance can handle multiple documents at once. We have a simple load-balancing system. Because each document has a random numeric ID found in the URL, we use the value of (id % num_instances) to route traffic. For example, with 100 jobs, traffic for document # 314814196 is routed to the instance with index 96. How will this system perform as the usage grows?
Which consistency model is more appropriate for each of these applications: strong consistency, or eventual consistency? Why? (Select the best answer that applies for each question).
An API call that needs to respond within 20 milliseconds, used by a web service to retrieve metadata about a piece of streaming media.
A web analytics platform recording every single click on a web page.
A banking system that makes deposits and payments to checking accounts.