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
BharatPe Interview Experience (SDE-1)
Summary
I recently interviewed for a Backend Developer role at BharatPe, which included rounds on Data Structures & Algorithms, System Design, Java & Spring Boot concepts, and a Low-Level Design task. My key takeaways emphasized understanding problems, clear communication, clarifying requirements, evaluating trade-offs, and testing designs.
Full Experience
๐ BharatPe Interview Experience โ Backend Developer (1.5 - 2 Years Experience) I recently interviewed for a Backend Developer role at BharatPe. Here's a breakdown of the process and my key takeaways:โ
๐ง Round 1: Data Structures & Algorithms
-
Sliding Window Maximum Problem: Given an array of integers nums, implement a sliding window of size k moving from left to right, returning the maximum in each window. Approach: Utilized a deque to efficiently track the maximums in O(n) time.โ
-
Minimum Insertions and Deletions Problem: Given strings A and B, find the minimum number of insertions and deletions to convert A to B. Approach: Applied dynamic programming, similar to the Edit Distance problem, to determine the optimal operations.โ
๐ ๏ธ Round 2: System Design, Java & Spring Boot Concepts
a. API Design Considerations Discussed pagination and filtering to enhance API performance. Explored testing and monitoring tools, focusing on Grafana and NewRelic, and how to set up alerts and monitor API performance.โ
b. GoLang Insights Explained GoRoutines and their Java equivalents using threads and executors. Discussed integrating metrics in GoLang services using Prometheus and its role in monitoring.โ
c. SQL vs. NoSQL
Compared scaling strategies and data structures. Delved into vertical vs. horizontal scaling and their implications.โ
d. Messaging Queues
Explored Kafka's functionalities, including replicas across brokers and strategies for fault tolerance using parent and child replicas.โ
e. Spring Boot Fundamentals
Discussed dependency injection, key features, and the Inversion of Control (IoC) container. Highlighted advantages of Spring Boot over the traditional Spring framework.โ
f. Low-Level Design (LLD): Notification Service
Task: Design a Notification Service capable of sending emails, SMS, and push notifications, respecting user preferences and ensuring scalability.โ Key Requirements: Support multiple notification channels (Email, SMS, Push). Implement user preferences for notification types and channels. Design APIs for sending notifications and managing user preferences. Utilize appropriate design patterns (e.g., Factory and Observer) to ensure modularity and scalability.โ
๐ฏ Key takeaways from the interview. ๐ง Understand the Problem Before Jumping to Code It's crucial to fully comprehend the problem statement and constraints before diving into coding.
๐ Communicate Your Thought Process Clearly Articulate your approach and reasoning behind design decisions.
๐ ๏ธ Clarify Requirements Before Designing Clarifying functional and non-functional requirements ensures that your design aligns with the interviewer's expectations.
โ๏ธ Evaluate Trade-offs and Alternatives Present different design options, discuss their pros and cons, and justify your choices.
๐งช Test Your Design with Realistic Scenarios Evaluate your design against potential edge cases and real-world scenarios
Interview Questions (3)
Given an array of integers nums, implement a sliding window of size k moving from left to right, returning the maximum in each window.
Given strings A and B, find the minimum number of insertions and deletions to convert A to B.
Design a Notification Service capable of sending emails, SMS, and push notifications, respecting user preferences and ensuring scalability. Key Requirements: Support multiple notification channels (Email, SMS, Push). Implement user preferences for notification types and channels. Design APIs for sending notifications and managing user preferences.