🧑‍💻 Zomato (District) Interview Experience | Selected
Anonymous User
3671

Profile: 1 Year of non internship Industry Experience
Previous Roles: SDE-1 [4 months], SDE-2 [8 months]
Position Interviewed For: Software Developer - 1
Mode: Remote


📞 Initial HR Discussion

  • Had an introductory call with the HR team.
  • Topics covered:
    • Expected salary
    • Previous work experiences and current role
  • After mutual agreement on compensation, the technical rounds were scheduled for the following week.

🔹 Round 1: Technical Interview – DSA + Fundamentals

A brief but focused session with the interviewer. The discussion covered both problem-solving and foundational concepts.

🧩 DSA Question: Cinema Hall Seating

Inspired by this: https://leetcode.com/problems/cinema-seat-allocation/description/

"The original question was a bit more nuanced. This is a simplified, more concise, and final version of it."

📘 Additional Questions:

  • Questions on past project experiences
  • How WebSocket communication works
  • What happens internally when you visit google.com in a browser
  • How a web browser loads and renders content
  • Experience-based technical discussions relevant to my previous roles

🔹 Round 2: Technical + System Design + Database

This round was more extensive. The interviewer was extremely polite and, interestingly, shared the same name as mine!

🧩 DSA & Design Question: Restaurant Timing System

You are building a backend service for a restaurant platform with two key features:

🔹 Use Case 1: Restaurant Page
  • Show all open-close time slots for a given restaurant.

🔹 Use Case 2: Home Page

  • Show all restaurants currently open at the time of request.

Example Data:

R1 → [08:00–13:00], [20:00–22:30]  
R2 → [07:00–14:00], [19:00–23:30]  
R3 → [08:30–14:30], [21:00–23:00]

Constraints:

  • Data is pulled once daily from the backend.
  • You must use a single in-memory data structure to support:
    • Efficient retrieval of all time slots for a restaurant
    • Real-time lookup of which restaurants are currently open

📘 Database & Core CS Concepts

  • How indexing works in relational databases
  • Differences between Binary Search Trees (BST) and Red-Black Trees
  • How insertion, updation, and deletion work in BST with practical examples

🧾 SQL Query Scenario

Schema:

  • Two tables: restaurant and cuisine
  • Each restaurant can have zero or more cuisines

Task:

  • Write an SQL query to find all restaurants that do not have any assigned cuisines
  • Use JOINs only (no subqueries or nested queries)

⚙️ Deadlock Detection

  • A real-world multithreading/concurrency scenario was shared
  • Asked to analyze if it results in a deadlock, with reasoning and possible resolution strategy

🏗️ System Design: Contract Management System

As I had prior experience working on a Contract Management System, the discussion dived deep into architectural aspects.

Areas Discussed:

  • Functional & Non-functional Requirements
  • Traffic & scale estimation
  • Microservice-based architecture
  • Inter-service communication strategies
  • Schema design, data modeling, and entity relationships
  • Covered both:
    • High-Level Design (HLD)
    • Low-Level Design (LLD)

💬 The interviewer appreciated the depth of thought and clarity in the system design discussion.


🔹 Round 3: Experience-Focused Discussion

A more informal yet technical round focused on role fit and practical impact.

  • Detailed walkthrough of my current responsibilities and project work
  • Shared live demos of projects I’ve contributed to
  • In-depth cross-questioning on design decisions, trade-offs, and results
  • Technical discussion on the working of Docker and how it’s used in CI/CD and deployments
  • Final discussion around salary expectations and joining date

✅ Final Thoughts

Overall, the process was structured and engaging, with a good mix of DSA, system design, and real-world tech conversations.

Comments (5)