Backend Engineer | Zenskar
JP Morgan Chase | SDE 3 | YOE 3.4
Microsoft SDE - 2 | Interview Experience | Status Pending
eBay || SWE3 Interview Experience || Bangalore
Bloomberg | Interview Experience | Senior Software Engineer | NYC | Nov 2025
Zomato | SDE - 1 | 1.5 YOE | Feb 2024 [Offer]
Summary
I interviewed for an SDE-1 role at Zomato in Feb 2024 and successfully received an offer after a multi-round technical and culture-fit process. The interview focused on my projects, current work, and problem-solving skills, including a specific SQL query and a coding problem.
Full Experience
Background
I completed my BTech in CSE in 2022 from a Tier-3 college in India and currently have 1.5 years of experience in a product-based company in India.
Opportunity details
I applied for the SDE-1 role in Feb 2024 via a referral about four months prior to the interview process. The interviews were conducted in Gurugram, India.
Interview Process
Phone call:
After applying, I received a call and email from the recruiter, and my interview was scheduled for the following week.
Round - 1: Technical Interview (1.5 hours)
The round started with a 5-minute introduction. I confidently presented my recent projects, aiming to steer the discussion in that direction. We then spent about 15 minutes discussing my current work, responsibilities, and the technologies I use, which went reasonably well.
For the next 20-25 minutes, we delved into one of my projects, which was a basic database engine similar to SQLite. I explained how databases and indexing work, particularly focusing on B-Trees and my implementation details. I shared my screen, demonstrated a sample query running on my project, and explained how it read index data from the .db file. The interviewer seemed quite impressed during this part.
Following this, for 10-15 minutes, I was asked to write an optimized SQL query based on 4-5 provided tables. I used sub-queries, but it wasn't the most optimal approach. The interviewer also asked about the differences between subqueries and joins and when to prefer one over the other. I admitted I didn't know the exact implementation details and made an informed guess, which turned out to be incorrect. He corrected me, and we moved on.
The final 20-25 minutes were dedicated to a coding question. We were nearing the 1-hour mark, so I had to code quickly. It was a single question with a slightly twisted problem statement, which I solved using Binary Search on Answer. I wrote the complete working code and explained my approach. This part also went well.
Finally, I asked the interviewer about their work and for feedback. I felt the interview went an 8.5 - 9 out of 10, based on his feedback.
Round - 2: Technical interview (1 hour 15 mins)
Again, I started with a 5-minute introduction, highlighting my projects to guide the conversation. The next 15 minutes involved a discussion about my prior experience. The interviewer asked about REST APIs and other points from my resume. I struggled to explain my work and REST APIs properly during this part, which could have gone better.
For about 20 minutes, we discussed my second project, which involved graph algorithms and implementing a research paper. The interviewer questioned how to make the program thread-safe. I suggested using locking mechanisms but couldn't provide a thorough answer. They then asked me to write some pseudocode for the graph algorithm used in my project. I shared my screen, wrote the pseudocode, and answered clarifying questions. Subsequently, they asked about the internal implementation of a hash-map used in my project. I mistakenly confused hash-maps with ordered-maps in C++ and incorrectly stated they use Balanced Binary Search Trees. While the project discussion went well, my knowledge of specific data structure implementations could have been better.
The last 30-35 minutes focused on a coding question. Since we had discussed graphs, I initially proposed an un-optimal graph-based solution. I asked for a couple of minutes to think, and an observation clicked. I then explained my optimized solution, coded it, and we tested it with a few test cases on an online compiler. They presented a variation of the question, which I also solved, though they wanted a more optimized approach than I could provide at the time. I wrote my current solution, and we tested it again. This part went fairly well as I clearly explained my reasoning.
The interview concluded with me asking about their work. I rated this interview 7.5 out of 10.
Two days later, I received an email confirming I had cleared the technical rounds and was asked to schedule the final round. I also received detailed feedback from the second interviewer, acknowledging my good reasoning but suggesting improvement in my prior experience knowledge, while still being open to having me join.
Culture-fit round:
This round lasted about 30-35 minutes and was primarily a conversation with the VP of Tech. They explained Zomato's work environment and culture, highlighting why I should and shouldn't join. They emphasized that Zomato isn't a typical 9-to-5 corporate environment and offers significant learning and growth opportunities for those willing to put in the effort. They also verbally extended an offer and discussed the compensation, which I found fair and even higher than my initial expectations.
Result
I received and accepted the offer.
Interview Questions (1)
The interviewer provided 4-5 tables and asked me to write an optimized SQL query. I initially wrote one using sub-queries. The interviewer also questioned me about the difference between subqueries and joins, and which should be preferred in specific scenarios.
Preparation Tips
Tips based on my experience:
- Zomato primarily hires through referrals, and it's common for them to contact applicants a significant time after initial application.
- It's crucial to convey your strengths, whether in DSA, projects, or prior experience, to guide the interview discussion in those areas. They even provide a form where you can indicate your preferred interview focus.
- The DSA problems are typically medium-level and often require some observation rather than extreme difficulty.
- Revising SQL, DBMS, and OS concepts is a good idea, as questions on at least one of these are likely.
- Thoroughly prepare your resume; understand your prior experience and projects as interviewers will use keywords to frame their questions.
- Maintain composure and actively listen to the interviewer, as they often provide hints that can help guide you to the solution.