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
Atlassian P40 SDE Interview Experience | Bombed DSA round :(
Summary
I interviewed for an SDE P40 position at Atlassian. The interview included a Karat Round, a Code Design round, and a Data Structures round. I performed well in the Code Design round but struggled with the Data Structures problem.
Full Experience
May 2025
Experience: 3+ Years Education: BTech Tier 3 Prior Experience: similar level at FAANG
Karat Round: 5 Design Rapid fire questions. 2 Coding questions. You are expected to solve min 4/5 design questions and 1.5 coding question fully working code for first and partial second with correct approach.
Round 1: Code Design Imagine we have a customer support ticketing system. The system allows customers to rate the support agent out of 5.
To start with, write a function which accepts a rating, and another function which will get all of the agents and the average rating each one has received, ordered highest to lowest.
Follow up question: Currently your solution does not account for what happens if two agents have the same average rating [adjust wording here if they have handled it in some way]. What options are there for handling ties and how can we implement that in code?
Round 2: Data Structures
Implement a function that given a list of tennis court bookings with start and finish times, returns a plan assigning each booking to a specific court, ensuring each court is used by only one booking at a time and using the minimum amount of courts with unlimited number of courts available.
An example of the booking record might look like:
class BookingRecord:
id: int // ID of the booking.
start_time: int
finish_time: int
and our function is going to look like:
List<Court> assignCourts(List<BookingRecord> bookingRecords)
Coding Design round went well. Bombed DSA round :( Although I have solved similar interval questions in past, mind froze when thinking about assigning courts to bookings. Interviewer was giving sufficient hints, but not my day probably. Feel free to post solutions.
Interview Questions (2)
Imagine we have a customer support ticketing system. The system allows customers to rate the support agent out of 5. To start with, write a function which accepts a rating, and another function which will get all of the agents and the average rating each one has received, ordered highest to lowest. Follow up question: Currently your solution does not account for what happens if two agents have the same average rating [adjust wording here if they have handled it in some way]. What options are there for handling ties and how can we implement that in code?
Implement a function that given a list of tennis court bookings with start and finish times, returns a plan assigning each booking to a specific court, ensuring each court is used by only one booking at a time and using the minimum amount of courts with unlimited number of courts available. An example of the booking record might look like:
class BookingRecord:
id: int // ID of the booking.
start_time: int
finish_time: int
and our function is going to look like:
List<Court> assignCourts(List<BookingRecord> bookingRecords)