Summary
I interviewed for a Software Engineer SDE 1 (Backend) position at Chargebee in Chennai, India. The process involved multiple technical rounds covering coding, SQL, system design, and behavioral aspects. I successfully cleared all rounds and received an offer, which I accepted in July 2024.
Full Experience
My interview journey for the SDE 1 Backend role at Chargebee began with an online test, which included one medium coding question, five SQL questions (mostly involving window functions), and five aptitude questions. I did not attempt the C++ debug question.
The subsequent rounds were conducted in-office in Chennai.
Round 2 (Online Screening Round)
This was a technical screening round where the interviewer asked an easy coding question. We also discussed my current organization's work, hard challenges I've faced, and my approach to solving them.- Question 1: I was given an 8x8 chessboard and a piece X and asked to find all its possible moves. Specifically, I had to solve for knight moves, demonstrating an approach beyond a naive one.
Round 3 (Offline Technical Interview)
An engineering manager took this round. It covered coding, SQL, and a puzzle. There were also discussions about my previous work experience, reasons for switching jobs, and my past experience.- Question 1 (System Design): I had to explain my approach to designing an auto-increment feature that supports multiple sequences concurrently with a reset mechanism.
- Question 2 (DSA): Given a range A to B, I needed to find all numbers whose set bit (1) count is a prime number.
- Question 3 (Puzzle): I was presented with the classic "Find the Fastest 3 Horses" puzzle.
- Question 4 (System Design & SQL): I was asked to choose an appropriate database for a vaccination tracking system (I suggested MySQL) and design its schema. Additionally, I had to write a SQL query to find individuals who have received exactly 'n' doses, where n is a non-negative integer.
Round 4 (Offline Technical Interview)
This final technical round was with the CTO. It involved standard questions about career goals, reasons for switching, past work experience, and an in-depth technical discussion, primarily focused on system design.- Question 1 (System Design): I discussed scenarios in which I would implement retries when integrating a payment gateway.
- Question 2 (System Design): I explained how to ensure clients do not make unnecessary retries if I were part of a payment gateway team.
- Question 3 (System Design): I outlined how to prevent a client from retrying a payment that has already been successfully processed.
- Question 4 (System Design): I was tasked with designing a system for a NEET result publishing website, specifically addressing how to handle quick traffic spikes.
Conclusion
I was informed by HR that I had cleared all rounds and received an offer two days later, which I happily accepted.Interview Questions (10)
Given an 8x8 chess board and a piece X, find all its possible moves. Specifically, I was asked to solve for knight moves, expecting an approach other than a naive one.
I was asked to explain my approach to designing an auto-increment feature that supports multiple sequences concurrently and includes a reset mechanism.
Given a range [A, B], find all numbers within this range whose set bit (1) count is a prime number.
I was asked to choose an appropriate database for a vaccination tracking system (I suggested MySQL), and then design a schema for it.
Write a SQL query to find individuals who have received exactly 'n' doses of a vaccine, where n can be any non-negative integer (n>=0).
I was asked to describe scenarios in which I would implement retries if I were integrating a payment gateway.
Assuming I was part of a payment gateway team, how would I ensure that clients do not make unnecessary retries for payments?
How would I prevent a client from retrying a payment that has already been successfully processed?
I was tasked with designing a system for a NEET (National Eligibility cum Entrance Test) result publishing website, specifically addressing how to handle quick traffic spikes.
Summary
I successfully interviewed for an SDE 1 position at Chargebee, which resulted in an offer that I accepted. The interview process included an online assessment, multiple technical rounds covering DSA, SQL, system design, and CS fundamentals, followed by manager and VP discussions.
Full Experience
Interview Experience
I interviewed for an SDE 1 position at Chargebee. My profile includes a B. Tech from an NIT (Batch 2019-2023) and 1 year of experience, including an internship, at a well-known startup. The entire process led to an offer which I accepted.
Round 1 (Online Test, 120 mins)
This round consisted of 2 coding questions, 2 SQL questions, and 5 aptitude questions.
Round 2 (Online Screening Round, Technical Interview, 45 mins)
This was a screening round where the interviewer asked one easy DSA question and one easy SQL query. We also discussed the work I was doing at my current organization.
Round 3 (Offline Technical Interview, 2 hours)
This round was conducted by an engineering manager. It covered famous DSA questions of medium difficulty, one SQL query, and system design basics. For system design, I was specifically asked to design the High-Level Design (HLD) for a BookMyShow-like seat booking algorithm, with a primary focus on concurrency. We also delved into CS fundamentals, specifically DBMS topics like scaling, sharding, and indexing, as well as DNS resolution and what CDN is. My projects and current organizational work were discussed, and based on keywords in my resume, I was asked about Redis and Kafka, including how Redis is faster and the differences between RAM, Disc, ROM, and Cache. The interviewer also provided a few pseudocodes for debugging and fixing edge cases. On the frontend side, basic React concepts like explaining the DOM and lazy loading were covered. This round lasted for two hours.
Round 4 (Offline Technical Interview, 1 hour)
A director of engineering led this round. Basic questions on language fundamentals (specifically Java for me), CS fundamentals (SSL, HTTP vs. HTTPS, memory allocation, garbage collection), and one puzzle were asked. We also discussed the work I had done at my current organization and aspects of Chargebee's culture. This round was an hour long.
Round 5 (Hiring Manager Round, 1 hour)
The Vice President conducted this round. The discussion revolved around my resume, a few technical questions, my work at the current organization, and some general HR questions. This round also lasted for an hour.
Conclusion
I received the selection result the very next day and accepted the offer.
Interview Questions (3)
Design the High-Level Design (HLD) for a seat booking algorithm similar to BookMyShow, with a primary focus on handling concurrency.