Got the offerBackend Developer at BharatPe
- Difficulty
- Process took
- 1-2 Weeks
- Rounds
- 2
- Format
- Remote
- Applied via
- Referral
How it went
- First, fully understand the problem.
- Speak your thought process clearly.
- Clarify all requirements before designing.
What they would tell you
- First, fully understand the problem.
- Speak your thought process clearly.
- Clarify all requirements before designing.
How to prepare
- For backend interviews, focus on DSA topics like sliding window, dynamic programming (DP), and two pointers. I followed the Striver SDE sheet for DSA preparation.
- For system design, I prepared by reading editorials and watching free videos.
Round by round
- 1
DSA60 min
I solved a Sliding Window Maximum problem using a deque to keep track of maximums in O(n) time. For the Minimum Insertions and Deletions problem, I used a dynamic programming approach similar to Edit Distance to find the minimum operations.
- 2
System Design, Core Concepts60 min
I shared insights from my work around API design, focusing on how adding pagination and filtering helps improve performance and scalability. I also highlighted my hands-on experience with monitoring tools like Grafana and NewRelic. We discussed GoLang, where I explained my understanding of GoRoutines and how they compare with Java threads and executors. I also talked about integrating Prometheus for effective monitoring of Go-based services. On the Spring Boot side, I talked about how dependency injection and the IoC container have simplified development for me, and why I prefer Spring Boot over traditional Spring Framework for its faster setup and production-readiness. Lastly, in the Low-Level Design discussion, I shared how I would design a scalable Notification Service that supports email, SMS, and push notifications, respecting user preferences and ensuring high availability.
What came up
A candidate-reported account, lightly edited. Interview processes change by team and date.