swiggy logo

Swiggy Interviews

26 experiences1,491 reads112 questions31% success rate
SDE 2 | Swiggy
swiggy logo
Swiggy
SDE 2
December 31, 202534 reads

Summary

I interviewed for an SDE 2 position at Swiggy and was rejected after struggling with the Low-Level Design (LLD) round, despite performing well in the Data Structures and Algorithms (DSA) section.

Full Experience

Round 1 ) OA Round 2 ) DSA + LLD

DSA - Find smallest in rotated sorted array LLD - Parking Lot

Recieved a rejection mail after 1 week .

Verdit : Rejected , I have answered dsa very well . But I struggled in lld while corss questioning.

Interview Questions (2)

Q1
Find Smallest in Rotated Sorted Array
Data Structures & Algorithms

Find the smallest element in a rotated sorted array.

Q2
Parking Lot Design
System Design

Design a Parking Lot system.

Swiggy SDE 1 Interview Experience | Dec25 | Backend Engineer | SDE 1 Interview Leetcode | Bangalore
swiggy logo
Swiggy
SDE 1BangaloreOngoing
December 19, 202538 reads

Summary

Applied through OA link, cleared all rounds including LLD and HM interviews. Final outcome pending.

Full Experience

I applied through an OA link provided directly by HR. The first round was an online assessment with three Leetcode medium problems. The second round focused on DSA and Java Springboot basics. The third round was an LLD round where I designed a cart with functionalities like adding items, payment, and discounts using the Strategy Design Pattern. The fourth round was an HM interview discussing my current project, SQL, and behavioral questions. The interviewers were supportive and engaged throughout the process.

Interview Questions (4)

Q1
Count Binary Trees
Data Structures & AlgorithmsMedium

Count the number of binary trees that can be generated by taking numbers from 1 to n. I discussed a brute force approach followed by a DP solution.

Q2
Sliding Window Problem
Data Structures & AlgorithmsMedium

A problem involving a sliding window technique. The exact problem statement wasn't provided, but it was categorized as a Leetcode medium problem.

Q3
Shortest Path in a Graph
Data Structures & AlgorithmsMedium

A problem requiring finding the shortest path in a graph. The exact problem statement wasn't provided, but it was categorized as a Leetcode medium problem.

Q4
Nth Root Array Problem
Data Structures & AlgorithmsMedium

An array problem related to finding the nth root. The exact problem statement wasn't provided, but it was categorized as a Leetcode medium problem.

Swiggy SDE-1 Interview Experience | A Very High Expectation in LLD Round
swiggy logo
Swiggy
SDE-1Rejected
October 15, 2025185 reads

Summary

I interviewed for the SDE-1 role at Swiggy, where I successfully navigated a DSA round involving optimizing a Codeforces problem and implementing a LeetCode DP problem. However, I was ultimately rejected after a challenging LLD round focused on designing and implementing Splitwise, where the expectations for completion within the given timeframe felt overwhelming.

Full Experience

I recently had my interview experience for the SDE-1 role at Swiggy, which consisted of two rounds.

1st Round – DSA (60 mins)

My first round was a 60-minute Data Structures & Algorithms session. I was presented with two problems. The first one was Codeforces 1133C, which I initially approached with a brute-force O(n²) solution and then managed to optimize to O(n log n) within 25 minutes. For the second question, 'Partition Array Into Two Arrays to Minimize Sum Difference' from LeetCode, I thoroughly explained my DP-based logic and proceeded to complete the full code in the remaining 30 minutes. This round concluded positively, and I was advanced to the next stage.

2nd Round – LLD (Design + Implementation) (60 min)

The second round was a 60-minute Low-Level Design session, which involved both design and implementation. It began with a brief 5-minute self-introduction. The interviewer then tasked me with designing and implementing a Splitwise application. I dedicated about 10 minutes to discussing the functional requirements and identifying the key objects necessary for the design. The interviewer was very keen on seeing the actual coding. I started sketching a UML diagram, but the sheer volume of requirements combined with the limited time began to make me panic. Despite this, I managed to start coding in VS Code and implemented partial functionality. However, it became clear that the interviewer expected a fully working application within the allotted time, which I couldn't deliver. Consequently, I was rejected after this round.

In my opinion, the LLD round was genuinely overwhelming, and expecting a fully functional Splitwise application complete with a UML diagram in just 45 minutes felt quite unrealistic.

Interview Questions (3)

Q1
Codeforces 1133C
Data Structures & Algorithms
Q2
Partition Array Into Two Arrays to Minimize Sum Difference
Data Structures & Algorithms
Q3
Design and Implement Splitwise
System Design

Design and implement a Splitwise application.

Swiggy | SDE-2 | Interview Exp | 4 yrs Exp
swiggy logo
Swiggy
SDE-24 yearsRejected
September 16, 2025153 reads

Summary

I interviewed for the SDE-2 role at Swiggy and despite a good performance across all rounds (DSA, LLD, and system design), I was ultimately not selected due to switching companies within 3 months.

Full Experience

My interview process for the SDE-2 role at Swiggy was quite structured. It began with an Online Assessment (OA) where I tackled two medium-level coding questions focusing on Arrays, HashMap, and Sliding Window topics, both of which I solved within the time limit.

The second round was another Coding Round, where I faced two DSA questions. One was a medium-level coding question on finding the longest subsequence from a string, and the other was a hard-level graph problem involving finding the shortest path with 'k' hops. I implemented both solutions efficiently and made sure to discuss edge cases and possible optimizations.

Next up was the Low-Level Design (LLD) round. I was given the task to design a Cab Booking System. During this round, I covered all essential aspects: defining entities like Rider, Driver, Trip, and Cab; outlining core functionalities suchas booking, allocation, and ride status. I presented a class diagram, the overall system flow, and API designs. We also delved into scalability considerations and various edge cases.

The final round was with the Hiring Manager, which was a blend of system design and techno-managerial discussions. We discussed my previous projects in depth, covering design patterns I had used. The conversation also touched upon technologies like Kafka, Redis optimizations, and database internals. My thought process around scaling systems and handling bottlenecks was also evaluated.

Ultimately, the verdict was not selected. The feedback indicated that my performance was good across all rounds. The final rejection reason given was my decision to switch companies within 3 months of joining my then-current company. Overall, it was a good learning experience, and I found Swiggy’s interview process to be well-structured and balanced across DSA, LLD, and system knowledge.

Interview Questions (3)

Q1
Longest Subsequence from String
Data Structures & AlgorithmsMedium

A medium-level coding question on Data Structures & Algorithms, focused on finding the longest subsequence from a given string. This typically involves dynamic programming or a greedy approach.

Q2
Shortest Path with K Hops
Data Structures & AlgorithmsHard

A hard-level graph problem that required finding the shortest path between two points in a graph, with the additional constraint of needing to complete the path in exactly 'k' hops.

Q3
Design a Cab Booking System
System Design

I was asked to design a Low-Level Design for a Cab Booking System. This involved identifying core entities like Rider, Driver, Trip, and Cab, along with outlining core functionalities such as booking, allocation, and ride status. I also presented a class diagram, the system flow, and API designs. Additionally, we discussed scalability considerations and various edge cases for the system.

Preparation Tips

My preparation involved a balanced approach covering Data Structures & Algorithms, Low-Level Design, and general system knowledge, which I found aligned very well with Swiggy’s structured interview process across various rounds.

Swiggy Interview Experience - Full Stack (SDE-2)
swiggy logo
Swiggy
Full Stack (SDE-2)2.5 yearsRejected
September 1, 202581 reads

Summary

I interviewed for a Full Stack SDE-2 role at Swiggy. The process included an online coding test, a JavaScript coding round, a System Design discussion, and a Hiring Manager interview, ultimately resulting in a rejection.

Full Experience

I applied for a Full Stack (SDE-2) position at Swiggy after seeing a Google Form shared by a recruiter on LinkedIn. With 2.5 years of experience in a service-based company, I was eager for this opportunity.

My journey began with an Online Test on HackerEarth. The task was to build a CRUD application, with a React frontend and a Node.js backend. I had three hours for this. I managed to get all frontend test cases to pass, but unfortunately, one backend test case failed. Overall, I'd rate the difficulty as medium.

A week later, I received a call from a third-party vendor, informing me that I had cleared the online test and would be proceeding to the first interview round.

Round 1 - (JavaScript, HTML, CSS) was conducted by an interviewer from the same third-party vendor. We started with a discussion about my projects. Following that, I was presented with an easy-to-medium level JavaScript coding problem that required the use of currying. I initially explained an approach, but while coding, I realized it wouldn't work. I quickly corrected myself and provided a working solution using currying. The interviewer was very supportive and even allowed me to debug with the console. The feedback was positive.

The very next day, the recruiter called to inform me that I had cleared the first round and would be moving on to interviews with the Swiggy team.

Round 2 – HLD + LLD started with a problem statement: designing 'Book Search functionality'. I followed a structured approach, beginning with requirements gathering, then moving into High-Level Design (HLD) discussions. We spent most of our time on HLD and didn't get a chance to dive into Low-Level Design (LLD). Towards the end, we discussed the frontend part, where I explained UI implementation, Server-Side Rendering (SSR), and CDN usage.

Again, the next day, the recruiter called to confirm I had cleared the second round and would be proceeding to the final interview with the Hiring Manager.

Round 3 – Hiring Manager was scheduled for an hour, but it started 15 minutes late. The recruiter had mentioned it would be a mix of behavioral and technical questions. It began with a few behavioral questions and some casual talk. Surprisingly, the round ended abruptly after only about 15 minutes. Despite answering all questions, I felt the brevity was unusual.

About two hours later, I received an automated rejection email. I'm unsure if the decision was predetermined given the short HM round, but overall, it was a great learning experience throughout the process.

Interview Questions (3)

Q1
Build a CRUD Application
OtherMedium

The task was to build a CRUD (Create, Read, Update, Delete) application. This involved developing two separate applications: a Frontend using React and a Backend using Node.js. The time allotted for this was 3 hours.

Q2
JavaScript Currying Problem
Data Structures & AlgorithmsEasy

I was presented with an easy-to-medium level JavaScript coding problem. The core of the solution required implementing the concept of currying.

Q3
Design a Book Search Functionality
System Design

The problem statement required me to design a 'Book Search functionality'. The discussion primarily focused on the High-Level Design (HLD) aspects, including gathering requirements and outlining the overall architecture. We did not delve into the Low-Level Design (LLD).

Preparation Tips

My preparation involved consistent practice of coding problems, which proved crucial for quickly identifying and correcting my approach during the JavaScript round. For the system design, I focused on a structured methodology for tackling HLD problems. I also gained practical experience by building a CRUD application, which was directly relevant to the online test.

Swiggy - SDE 2 - July 2025 [Offer]
swiggy logo
Swiggy
Software Development Engineer II (Backend)3 years
August 12, 202522 reads

Summary

I successfully navigated a three-round interview process for a Backend Engineer (SDE 2) position at Swiggy in July 2025, which included multiple DSA rounds, a system design round, and a behavioral bar-raiser, ultimately receiving an offer.

Full Experience

Swiggy — Backend Engineer (SDE 2) Interview Experience

Month / Year: July 2025
Position: Software Development Engineer II (Backend)
Background: ~3 years in a product-based company, Tier-2 college (2022)


Source

A Senior Talent Partner from Swiggy reached out on LinkedIn. I was scheduled for interviews. It was a three-round elimination track:

  • Round 1: DSA buffet (multiple problems, one sitting)
  • Round 2: DSA with a design mindset
  • Round 3: Bar-raiser — project depth, architecture judgement, PRD→TRD thinking, and behavioural probes

Round 1 — DSA Buffet

Problem 1 — Number of Islands

Expectation (what they’re really checking):
Can you recognize a grid problem as a graph problem and quickly deploy a standard traversal with correct visited handling, full edge cases, and clean complexity analysis?

Problem:
Given an m × n grid of '1' (land) and '0' (water), count islands where connections are 4-directional (no diagonals).

How I recognized the pattern (my first 10 seconds):

  • “Count groups in a grid” → connected components on an implicit graph.
  • Node = cell, Edge = up/down/left/right adjacency.
  • The move is flood-fill (DFS or BFS) from every unvisited land cell.

Mental map you can reuse:

  1. Reframe: grid ⇒ graph.
  2. Invariant: each land cell is visited exactly once; once visited, it never contributes to another island.
  3. Plan: scan → on '1', increment islands and flood-fill to mark the entire component as visited.

Data structures and invariants:

  • In-place marking: turn '1' to '0' during traversal.
  • DFS recursion is fine for interview-scale grids; BFS queue if you want to avoid recursion depth.

Complexity:

  • Time: O(mn) — each cell processed once.
  • Space: O(mn) worst-case recursion depth; O(1) aux if BFS with a queue size bounded by mn.

Where people stumble:

  • Forgetting to mark visited → double counting.
  • Accidentally allowing diagonals.
  • Using an expensive visited[m][n] array when in-place marking is possible.

Problem 2 — Count of Subsets With Given Sum

Expectation:
Correctly map to subset-sum, design a memoized recursion, and adapt when the interviewer changes constraints (negative numbers).

Problem:
Count the number of subsets whose sum equals target. Then extend to arrays that may contain negative numbers.

My thought process:

  • Non-negative numbers: natural state is (index, remaining_sum).
    A 2D DP table works because remaining_sum stays within [0, target].
  • With negatives: remaining_sum can go below zero and above target unpredictably, so array indexing fails.
    Switch to hash-map memoization keyed by (index, current_sum).

Reusable mental map:

  1. Identify the binary decision per element: take or skip.
  2. Define a state that uniquely determines the future: index + sum notion.
  3. Attach memoization to that state.
  4. Reassess the state model if constraints change.

Complexity:

  • Non-negative: O(n * target) time/space.
  • With negatives: O(n * sum_range) using an unordered_map.

Common pitfalls:

  • Treating the negative case with the same DP table → invalid indices.
  • Forgetting that the empty subset counts when target == 0.

Problem 3 — Implement a Trie

Expectation:
Clarity on prefix trees, why isEndOfWord exists, and the difference between search and startsWith.

My thought process:

  • Trie node must support branching; a single char + pointer = linked list, not a Trie.
  • isEndOfWord distinguishes a valid word from “just a prefix.”

Mental map:

  • Insert: walk or create nodes; mark end at the last node.
  • Search: walk nodes; return isEndOfWord at the last node.
  • StartsWith: walk nodes; return true if path exists.

Where people stumble:

  • Returning true for search("app") after only inserting "apple".
  • Overcomplicating the node structure.

Round 2 — DSA with a Design Mindset

Problem A — RandomizedSet

Expectation:
Engineer O(1) insert/remove/random by combining data structures and keep removal constant-time.

Reasoning:

  • Uniform getRandom()O(1) indexing ⇒ vector.
  • O(1) membership/index lookup ⇒ hashmap.
  • O(1) remove ⇒ swap victim with tail, pop_back, update map.

Problem B — Minimum Days to Make Bouquets of k Adjacent Flowers

Expectation:
Recognize binary search on answer, write a feasibility check, and reason about adjacency.

Restated Problem:
bloomDay[i] = day i-th flower blooms. Need m bouquets, each with k adjacent bloomed flowers. Return min day D possible, else -1.

My thought process:

  • Reframe: “By day d, can I make ≥ m bouquets?”
  • Convert each flower to usable if bloomDay[i] ≤ d.
  • Count disjoint k-blocks in usable runs.

Key invariant:
Within a usable run length L, max disjoint bouquets = floor(L / k).

Algorithm:

  1. Early exit: if n < m * k → -1.
  2. Binary search day range.
  3. For each mid day, linearly count bouquets; reset streak on unusable.

Complexity:
O(n log D).

Common mistakes:

  • Not resetting streak after counting a bouquet → overlaps.
  • Skipping the n < m*k early check.

Round 3 — Bar-Raiser: Projects, Architecture

Goal:
Assess design judgement, trade-off clarity, and metric anchoring.

My chosen project: Kafka-backed Order Event Processor (Not writing the actual usecase here)

Context:
200k events/min; strict ordering per orderId; at-least-once delivery; idempotent downstream effects.

Story structure:

  1. Problem: Ordered, deduplicated event fan-out to inventory & dispatch.
  2. Constraints: Throughput, SLA (<1s p95), ordering by key, back-pressure, visibility.
  3. Decisions:
    - Partition by orderId for sequencing.
    - Redis idempotency keys.
    - Two-tier retries; DLQ for poison events.
    - At-least-once + idempotency over exactly-once for simplicity.
  4. Operations: Deploy strategy, SLOs, dashboards, runbooks.
  5. Impact: -40% missed updates, -300ms latency.

Behavioural Qs:

  • Bias for Action: Thin TRD slice with feature flags to unblock.
  • Dive Deep: Refactor if ≤30% cost of rewrite; else rewrite behind adapter.
  • Disagree & Commit: Accepted alternate sharding; optimized it later.

Technical Desgining:

  • Extract explicit/implied requirements.
  • Model entities, invariants, life-cycles.
  • Define API contracts + idempotency rules.
  • Design storage: partitioning, indexes, constraints.
  • Decide consistency model.
  • Plan observability (RED metrics, traces, logs).
  • Scalability strategy.
  • Operational readiness & runbooks.
  • Stakeholder review & risk mitigation.

Verdict

Got the offer.

  • Round 1: Speed + clarity in DSA
  • Round 2: Feasibility reasoning + DS choice
  • Round 3: Depth in design + behavioural alignment

Interview Questions (8)

Q1
Number of Islands
Data Structures & Algorithms

Given an m × n grid of '1' (land) and '0' (water), count islands where connections are 4-directional (no diagonals).

Q2
Count of Subsets With Given Sum
Data Structures & Algorithms

Count the number of subsets whose sum equals target. Then extend to arrays that may contain negative numbers.

Q3
Implement a Trie
Data Structures & Algorithms

Implement a Trie data structure supporting insert, search, and startsWith operations, demonstrating clarity on prefix trees, the purpose of isEndOfWord, and distinguishing between search and startsWith functionality.

Q4
RandomizedSet
Data Structures & Algorithms

Implement insert, remove, and getRandom operations in O(1) time complexity.

Q5
Minimum Days to Make Bouquets of k Adjacent Flowers
Data Structures & Algorithms

bloomDay[i] = day i-th flower blooms. Need m bouquets, each with k adjacent bloomed flowers. Return min day D possible, else -1.

Q6
Kafka-backed Order Event Processor Design
System Design

Design a system to process 200k events/min with strict ordering per orderId, at-least-once delivery, and idempotent downstream effects for ordered, deduplicated event fan-out to inventory & dispatch. Consider throughput, SLA (<1s p95), ordering by key, back-pressure, and visibility.

Q7
Behavioral Questions
Behavioral

Questions asked include 'Bias for Action', 'Dive Deep', and 'Disagree & Commit'.

Q8
Technical Designing Approach
System Design

Describe the general process and considerations for approaching a technical design problem, including requirements, modeling, APIs, storage, consistency, observability, scalability, and operational readiness.

Preparation Tips

My preparation mantra for all three: know the pattern, explain the intuition, state invariants, and code cleanly while narrating trade-offs.

Closing Takeaways

  1. Pattern recognition beats recall. Name the pattern (“connected components”, “binary search on answer”).
  2. Name your invariant. It’s your correctness proof.
  3. Monotonicity is a superpower.
  4. Combine DS wisely.
  5. Own the why. Numbers without reasons are noise.
SWIGGY Data Science (ON CAMPUS)
swiggy logo
Swiggy
Data Science InternON CAMPUS
August 5, 202510 reads

Summary

I interviewed for a Data Science Intern position at Swiggy on campus, undergoing resume shortlisting, Python/SQL screening, a technical deep dive into ML concepts, and an HR round where I discussed auto-search functionality, ultimately receiving a rejection.

Full Experience

So I am From an IIIT College so Swiggy came to My campus with Data Science Intern

So 1 st round of Resume ShortListing

2nd Round is an Interview Based on Python and SQL they have Given Two Question 1 is of Python and 2nd One is of SQL

3 rd Round is a Technical Interview with an Swiggy Data Scientist II role person as We have a Deep Dive into Core ML concepts in an Verbal Way examples with Regularization etcc and They Apprached Core Conepts with my projects

4th round is of HR Round, as the HR approached in an Hurry Mode and Asked a auto Search Functionality And I answered with saying use Prefix Trie and I explained the Apprach and At Last I have given a Idea to Implement it to find the customers genuine or not in Swiggy Dine IN Restaurant

At Last Rejection Mail and Mailed to the team to know what could be the feedback or any reasons for the rejection but no response

Interview Questions (1)

Q1
Implement Auto Search Functionality
System Design

The HR round included a question about implementing an auto-search functionality. I discussed using a Prefix Trie (Trie) and explained my approach. I also provided an idea to implement this to identify genuine customers in Swiggy Dine-In restaurants.

Swiggy | SDE-2 Full Stack | Interview Experience
swiggy logo
Swiggy
SDE-2 Full Stack
June 15, 202519 reads

Summary

I went through a hiring process for an SDE-2 Full Stack role at Swiggy. The process included an online assessment with two development questions, followed by a JavaScript coding and HTML/CSS concepts interview, which ultimately led to a rejection.

Full Experience

There was a Google form floating around on LinkedIn by Swiggy HR for SDE II Full stack Developer role. I filled out and received an email from HR stating my profile was shortlisted for the next stage of the selection process i.e. online test. I was instructed to complete the online test within 3 days.

Round 0 - HackerEarth Online Test (3 hours)

This was a long OA containing 2 questions focused on both frontend and backend-heavy development. In both questions, technical specifications, implementation details/rules, and testing/submission instructions were provided.

Question 1 - Build an API for a word game application in NodeJS, fetching from SQLite DB.
Question 2 - Develop a home inventory manager application using React with TypeScript.

I received a call from HR after a couple of days of taking the test, stating that I have cleared and moved forward to the interview stages. She gave the flexibility to choose a date/time that worked for me. Since my current week was packed, I requested to schedule the interview early next week.

Round 1 - JavaScript Coding and HTML CSS Concepts (1 hour)

This round was taken by InterviewVector on behalf of Swiggy. The title of the round was 'JavaScript Coding and HTML CSS Concepts'.
I was given one JS problem to build an OTP input component in 40 mins and use a platform like JSFiddle/CodePen. The functional requirements were bit too much even for an experienced developer to complete in such a short span, and top of that my speed is not that great, honestly. The last 10 minutes were for HTML/CSS conceptual questions, which I answered most. Regardless, I was not able to build all the features properly (there was a rendering/event listener issue which I could not debug successfully under pressure).

Later in the day, I got rejection mail with the following scope of improvement:

  • Should practice more JavaScript-related problems and also work on debugging skills
  • Learn about different UI events. Also, work on writing modular and scalable code.

Overall, a good experience and a chance to improve in future and bounce back stronger.

JS Question:

Build an otp input component

Input Fields:

  1. The component should have six individual input fields for the OTP digits (or customizable length).
  2. Only numeric input (0-9) should be allowed.
  3. Auto-focus on the next field after entering a digit.
  4. Automatically move to the previous field if the user presses backspace on an empty field.
  5. Provide a method for the user to paste the entire OTP, filling in the fields automatically.

Validation:

  1. Add basic validation to ensure all input fields are filled before submission.
  2. Provide real-time feedback if a non-numeric character is entered.

Accessibility: optional

  1. Ensure that the component is keyboard accessible (e.g., arrow keys for navigation between fields).
  2. Screen readers should announce appropriate input instructions.

Customization:

  1. The component should be flexible to support a variable OTP length (e.g., 4-digit or 8-digit OTP).

Error Handling:

  1. Handle any edge cases like handling rapid user inputs, invalid characters, or incomplete OTP submission.

Conceptual Questions

  1. Lifecycle methods in JS. How do promises work?
  2. Which CSS library would you use and why?
  3. When to use class selectors and inline styling in CSS?
  4. Explain the role of Content Security Policy in HTML.
  5. Role of event loop in JS.
  6. Difference between map and forEach in JS.
  7. What are some of the HTML errors that can negatively affect SEO?
  8. How does HTML remain compatible with different browsers?

Interview Questions (11)

Q1
Build API for Word Game Application
Data Structures & Algorithms

Build an API for a word game application in NodeJS, fetching from SQLite DB. Technical specifications, implementation details/rules, and testing/submission instructions were provided.

Q2
Develop Home Inventory Manager Application
Data Structures & Algorithms

Develop a home inventory manager application using React with TypeScript. Technical specifications, implementation details/rules, and testing/submission instructions were provided.

Q3
Build OTP Input Component
Data Structures & Algorithms

I was given one JS problem to build an OTP input component in 40 mins and use a platform like JSFiddle/CodePen. The functional requirements were bit too much even for an experienced developer to complete in such a short span, and top of that my speed is not that great, honestly. The last 10 minutes were for HTML/CSS conceptual questions, which I answered most. Regardless, I was not able to build all the features properly (there was a rendering/event listener issue which I could not debug successfully under pressure).

Input Fields:

  1. The component should have six individual input fields for the OTP digits (or customizable length).
  2. Only numeric input (0-9) should be allowed.
  3. Auto-focus on the next field after entering a digit.
  4. Automatically move to the previous field if the user presses backspace on an empty field.
  5. Provide a method for the user to paste the entire OTP, filling in the fields automatically.

Validation:

  1. Add basic validation to ensure all input fields are filled before submission.
  2. Provide real-time feedback if a non-numeric character is entered.

Accessibility: optional

  1. Ensure that the component is keyboard accessible (e.g., arrow keys for navigation between fields).
  2. Screen readers should announce appropriate input instructions.

Customization:

  1. The component should be flexible to support a variable OTP length (e.g., 4-digit or 8-digit OTP).

Error Handling:

  1. Handle any edge cases like handling rapid user inputs, invalid characters, or incomplete OTP submission.

Q4
JavaScript Lifecycle Methods & Promises
Other

Lifecycle methods in JS. How do promises work?

Q5
CSS Library Choice
Other

Which CSS library would you use and why?

Q6
CSS Selectors and Inline Styling Usage
Other

When to use class selectors and inline styling in CSS?

Q7
Content Security Policy (CSP) in HTML
Other

Explain the role of Content Security Policy in HTML.

Q8
JavaScript Event Loop
Other

Role of event loop in JS.

Q9
Map vs. forEach in JavaScript
Other

Difference between map and forEach in JS.

Q10
HTML Errors Affecting SEO
Other

What are some of the HTML errors that can negatively affect SEO?

Q11
HTML Browser Compatibility
Other

How does HTML remain compatible with different browsers?

Swiggy SDE II Interview Experience – Java Spring Boot
swiggy logo
Swiggy
SDE II, Backend Engineer2.5 years
June 12, 20257 reads

Summary

I interviewed for the SDE II Backend Engineer role at Swiggy in November 2024. The interview included rounds on Data Structures & Algorithms, backend concepts, project discussions, and low-level system design.

Full Experience

Nov 2024 | Role Like: Backend Engineer (Java, Spring Boot)
YOE: 2.5

Round 1: DSA + Backend (60 mins)

DSA Questions:
1. Build tree from Inorder & Preorder
2. Longest valid parentheses substring (interviewer was a bit confused between substring vs subsequence)

Backend Questions:
- What is SOLID?
- What is DIP (Dependency Inversion Principle)?
- SQL vs NoSQL
- Spring Boot Questions:
- Different ways to autowire an object
- Spring IoC container

Round 2: Resume + LLD(60 mins)

1. Deep dive into past projects
2. LLD: Design a Vehicle Rental System

Interview Questions (9)

Q1
Build Tree from Inorder & Preorder Traversal
Data Structures & Algorithms

Build a binary tree from its inorder and preorder traversal sequences.

Q2
Longest Valid Parentheses Substring
Data Structures & Algorithms

Find the length of the longest valid (well-formed) parentheses substring within a given string.

Q3
SOLID Principles
Other

What are the SOLID principles? Explain each principle in detail.

Q4
Dependency Inversion Principle (DIP)
Other

Explain the Dependency Inversion Principle (DIP).

Q5
SQL vs NoSQL
Other

Discuss the differences, use cases, advantages, and disadvantages of SQL and NoSQL databases.

Q6
Spring Boot Autowiring Methods
Other

Describe different ways to autowire an object in Spring Boot.

Q7
Spring IoC Container
Other

Explain the concept and functionality of the Spring IoC (Inversion of Control) container.

Q8
Past Projects Deep Dive
Behavioral

A deep dive discussion into past projects, likely covering design choices, challenges, and lessons learned.

Q9
Design a Vehicle Rental System (LLD)
System Design

Perform a Low-Level Design (LLD) for a Vehicle Rental System.

Swiggy SDE 1 Interview (Android)
swiggy logo
Swiggy
SDE 1
May 26, 202513 reads

Summary

I applied through a Google form found on LinkedIn for an SDE 1 (Android) role at Swiggy, passed through multiple rounds including machine coding, DSA, and a hiring manager round, and received an offer of 28 LPA, which was ultimately rescinded due to my college dropout status.

Full Experience

Applied through some google form found in Linkedin.

Recruiter Call

  • Recruiter discussed YOE, notice period, "Why do you want to join swiggy?"
  • This was just a normal call to understand the motivation and the expectation.

Round 1 - InterviewVector

  • This was a machine coding round.
  • Interviewer asked me to create a library management application within 45 minutes.
  • After successfully coding it we discussed approach and archetecture that I have choosen.
  • For next 15 minutes he asked Android related questions.

Swiggy HR called and told I have passed this round and moved to the onsite rounds

Round 2 - PS/DS Round

  • Interviewer introduced himself and told me to introduce myself as well.
  • He explained that the interview will be in 2 parts, first 30 minutes is for DSA and the last 30 minutes for android.
  • He first asked a very easy question (Haven't seen the question anywhere), I am able to solve it, but it took more time than I anticipated.
  • I only got like 10 minutes for next question, and he asked the Edit Distance problem, and I haven't solved this previously so it took me 10 minutes to discuss my approach, but I couldn't code it due to time limitation.
  • Next he moved to Android related question, I answered 80% of them.

Interviewer called after a week and told I got a "weak hire" and scheduled my next round

Final Round - Hiring manager round.

  • We first introduced ourselves and started discussing my current role and responsibility.
  • He then asked alot of questions from the Resume.
  • Then he started to ask deep questions regarding Android and kotlin, Some topics he asked was: Extension function, dagger hilt, coroutines etc..
  • Then at the final 10 minutes he asked me a leetcode question - Next permutation.
  • I was able to successfully tell the approach to him, but didn't get the time to code it and interviewer told he had another meeting as well.

After 4 days HR called and told I passed all the rounds

I received a 28 LPA offer, but the HR didn't proceed further because I’m a college dropout and don’t have a degree.

Interview Questions (6)

Q1
Machine Coding: Library Management System
Other

Create a library management application within 45 minutes. After successfully coding it, discuss the chosen approach and architecture.

Q2
Android Related Questions (Round 1)
Other

General Android related questions for 15 minutes.

Q3
Edit Distance
Data Structures & AlgorithmsHard

The Edit Distance problem was asked. I spent 10 minutes discussing my approach but couldn't code it due to time constraints.

Q4
Android Related Questions (Round 2)
Other

Android related questions for 30 minutes.

Q5
Android & Kotlin Deep Dive
Other

Deep questions regarding Android and Kotlin, specifically covering topics like Extension functions, Dagger Hilt, and Coroutines.

Q6
Next Permutation
Data Structures & AlgorithmsMedium

A LeetCode question: Next Permutation. I was asked to describe my approach.

Swiggy | Data Scientist 1 | Interview
swiggy logo
Swiggy
Data Scientist 1Bangalore
May 13, 20258 reads

Summary

I successfully cleared an off-campus interview process for a Data Scientist 1 role at Swiggy, comprising four distinct rounds: a coding assessment with DSA and Python fundamentals, an in-depth ML and statistics discussion, a challenging ML system design round, and a final behavioral hiring manager interview, ultimately leading to an offer.

Full Experience

My Interview Experience and offer (Swiggy Data Scientist 1 role)

Off-campus opportunity via referral. All of these were knockout rounds

1) Coding round:

  • 1 hr interview with data scientist 2
  • The coding-focused interview covering Python (functions, try-except, loops, decorators, multithreading), basic Pandas (like groupby), and SQL (including subqueries). It also included one DSA question—Stocks Buy and Sell (LeetCode, easy-medium level). Throughout the round, I was asked to explain my approach and reasoning behind each solution.

2) ML depth/breath round:

  • 1 hr interview with senior data scientist
  • The ML depth/breath round covered core statistics including mean, variance, central limit theorem, Type I/II errors, the reasoning behind sample standard deviation being σ/√n, and a proof for the variance of the sample mean. Probability questions were also asked. In data science, I was questioned on evaluation metrics like precision, recall, F1-score, ROC-AUC, regularization techniques, bias-variance tradeoff, and metrics for evaluating KMeans clustering. The deep learning section included CNN output size formula with reasoning behind each term (like why +1 is added), dropout behavior (including impact of stacking dropout layers vs placing dropout between layers), vanishing gradients in RNNs, and how LSTMs solve them.

P.S. This is just summary of second round. He dived deep into each concepts and created "what if" scenarios

3) Problem Solving round:

  • 1 hr interview with Director Instamart (they were hiring for Instamart team)
  • The Problem Solving round focused on ML system design, starting with a discussion on my past work, approach, and reasoning. I was then given real-world problems the team is working on. The first task was to design a solution for dynamically displaying filters based on the searched product. The second was to build a model to estimate delivery time, inspired by a Swiggy Bytes technical blog.

4) Hiring Manager round:

  • 1 hr interview with Senior Manager Instamart
  • It was a casual conversation focused on behavioral and situational questions, discussing how I relate to Swiggy's values. It was mostly informal with no technical questions asked.

Compensation details : https://leetcode.com/discuss/post/6740557/swiggy-data-scientist-1-bangalore-by-kus-fat9/

Interview Questions (7)

Q1
Stocks Buy and Sell
Data Structures & AlgorithmsMedium

Implement the 'Stocks Buy and Sell' problem, typically found on LeetCode. I was asked to explain my approach and reasoning behind the solution.

Q2
Core Statistics and Probability Concepts
Other

Explain concepts such as mean, variance, central limit theorem, Type I/II errors, the reasoning behind sample standard deviation being σ/√n, and provide a proof for the variance of the sample mean. Also, answer general probability questions.

Q3
ML Evaluation Metrics and Techniques
Other

Discuss evaluation metrics such as precision, recall, F1-score, ROC-AUC. Explain regularization techniques and the bias-variance tradeoff. Describe metrics used for evaluating KMeans clustering.

Q4
Deep Learning Concepts
Other

Explain the CNN output size formula with reasoning for each term. Discuss dropout behavior, including the impact of stacking dropout layers versus placing dropout between layers. Describe vanishing gradients in RNNs and how LSTMs solve them.

Q5
ML System Design: Dynamic Filter Display
System DesignHard

Design a solution for dynamically displaying filters based on the searched product. This was framed as a real-world problem the team is working on, and I started with a discussion on my past work, approach, and reasoning.

Q6
ML System Design: Delivery Time Estimation Model
System DesignHard

Build a model to estimate delivery time, inspired by a Swiggy Bytes technical blog. This was framed as a real-world problem the team is working on, and I started with a discussion on my past work, approach, and reasoning.

Q7
Behavioral and Situational Questions
Behavioral

Answer behavioral and situational questions focused on how I relate to Swiggy's values. This was mostly an informal conversation with no technical questions asked.

Swiggy SDE-1 Offer | Bengaluru
swiggy logo
Swiggy
Software Development Engineer IBengaluru1.25 years
May 4, 202528 reads

Summary

I successfully secured an SDE-1 offer at Swiggy in Bengaluru after 1 year and 3 months of experience, navigating through coding rounds, a system design challenge for a food-order matching system, and behavioral questions.

Full Experience

How It Happened

  1. Finding the Role
    I spotted the Swiggy SDE-1 posting on LinkedIn—it mentioned heavy backend work on microservices, exactly my strength. I polished my resume and reached out to an alumni who referred me internally.
  2. Interview Rounds
    • HR Screen: Quick chat about my background and motivation for joining Swiggy.
    • Technical Phone Screen: Two LeetCode medium problems (sliding window + graph traversal). I narrated my approach and handled edge cases on the spot.
    • Onsite (Virtual):
      • Coding Round: One hard DP problem and one medium tree problem. I drew the recursion tree on paper first, then coded in Java.
      • System Design: “Design a food-order matching system.” I outlined services, databases, caches, and explained trade-offs for consistency vs. latency.
      • Behavioral: Used STAR stories to describe a time I resolved a production incident under pressure and led a 2-member bug-fixing sprint.
  3. Negotiation
    After the offer arrived, I asked politely if Swiggy could enhance the equity component or joining bonus. They raised the joining bonus from ₹1 L to ₹1.5 L and increased my equity by ₹3 L.
  4. Why I Chose Swiggy
    • Impact at Scale: The opportunity to work on services handling thousands of orders per minute.
    • Learning Curve: A small, collaborative team meant more responsibility and faster growth.
    • Culture & Benefits: Daily lunch vouchers and family health cover showed they value work-life balance.

Interview Questions (2)

Q1
Design a Food-Order Matching System
System Design

Design a food-order matching system. I outlined services, databases, caches, and explained trade-offs for consistency vs. latency.

Q2
Describe a Time You Resolved a Production Incident and Led a Bug-Fixing Sprint
Behavioral

Describe a time you resolved a production incident under pressure and led a 2-member bug-fixing sprint. (Answer using STAR stories).

Preparation Tips

My Tips for Fellow Applicants

  • Leverage Referrals: An internal recommendation can get your resume in front of the right people.
  • Practice Explaining: For design rounds, sketch first—diagrams speak louder than words alone.
  • Ask Thoughtful Questions: Show genuine curiosity about the team’s challenges and roadmap.
  • Negotiate Confidently: It’s okay to ask for improvements on equity or bonuses—most startups have flexibility.
Swiggy Interview Experience || SDE-2 || Remote (Bengaluru)
swiggy logo
Swiggy
SDE-2Bengaluru5 years
February 14, 202567 reads

Summary

I recently interviewed for an SDE-2 position at Swiggy, which included an Online Assessment, a Data Structures & Algorithms round, a System Design round focusing on warehouse management, and a Hiring Manager discussion.

Full Experience

I recently applied for the SDE-2 role at Swiggy towards the end of 2024. With over 5 years of experience, I went through a multi-stage interview process.

Online Assessment (OA)

I don't recall the exact questions from this round.

DSA Round

This round involved two problems related to Lowest Common Ancestor (LCA).

System Design Round

I was asked to design a warehouse management system specifically for Swiggy Instamart. The discussion involved outlining APIs, database schemas, and sketching a high-level architectural diagram. A primary focus was on effective inventory management and ensuring data consistency across various integrated systems.

HM Round

This round consisted of discussions around different design patterns and further system design questions. We also had a healthy discussion about my current roles and responsibilities.

Interview Questions (1)

Q1
Design Swiggy Instamart Warehouse Management System
System Design

Design a warehouse management system for Swiggy Instamart. This should include:

  • Designing APIs for various functionalities.
  • Defining DB schemas for efficient data storage and retrieval.
  • Creating a high-level architectural diagram of the system.

The design should specifically focus on managing inventory effectively and ensuring data consistency across different integrated systems.

Swiggy SDE-2 Round 1 (Interview Vector)
swiggy logo
Swiggy
sde-2Ongoing
February 4, 202560 reads

Summary

I recently interviewed for an SDE-2 position at Swiggy and successfully cleared the first round, which involved solving two LeetCode problems within the allotted time.

Full Experience

I recently appeared for the Swiggy SDE-2 interview, specifically for Round 1. I was presented with two coding questions, for which I had 25 minutes each. I was able to successfully solve both problems and felt it was a good experience overall. Based on my performance, I have been selected to proceed to Round 2, which will focus on Low-Level Design (LLD).

Interview Questions (2)

Q1
Two City Scheduling
Data Structures & AlgorithmsMedium

A company is planning to interview 2n people. Given an array costs where costs[i] = [costAi, costBi], the cost of sending the ith person to city A is costAi, and to city B is costBi. Return the minimum cost to send exactly n people to city A and exactly n people to city B.

Q2
Path with Maximum Gold
Data Structures & AlgorithmsMedium

In a gold mine grid of size m x n, each cell in this mine has an integer representing the amount of gold in that cell, 0 if it is empty. Every time you are in a cell, you will collect all the gold in it. You can move from your current cell to an adjacent cell (left, right, up, or down). You cannot visit the same cell more than once. Never visit a cell with 0 gold. Return the maximum amount of gold you can collect.

SDE Intern Interview Experience @Swiggy
swiggy logo
Swiggy
sde internOffer
January 26, 202550 reads

Summary

I successfully navigated the SDE Intern interview process at Swiggy, starting from an online assessment and progressing through multiple technical rounds, ultimately securing a full-time offer after converting my internship.

Full Experience

I applied for the SDE Intern position at Swiggy by filling out a Google form circulated on LinkedIn by Swiggy employees, and I also shared my resume with some of them. Shortly after applying, I received an email from HR inviting me to an Online Assessment (OA) scheduled for the same day. The OA, conducted on Hackerrank, consisted of medium-difficulty questions primarily focused on greedy algorithms and dynamic programming. My friends, who also took the OA, encountered standard medium-level graph problems.

After successfully clearing the OA, I was contacted by HR for the first interview round. This round was with an SDE-1 and was structured into three parts: an introduction and a discussion about my projects and previous experiences, core subject questions on MongoDB, a comparison between MongoDB and SQL, and ACID properties, followed by two DSA questions on Greedy algorithms and Tries, along with a time and space complexity follow-up question. A key takeaway from this round was the importance of thoroughly understanding every data structure and its time/space complexity.

About 30 minutes after the first round, I received another call from HR confirming I had cleared it and would proceed to the second interview with the Hiring Manager. This round extensively covered my internship tasks, projects, and the APIs I had developed. It also included one DSA question based on BFS and Heaps, which was of medium to hard difficulty, and concluded with some situational-based questions. Soon after this interview, I received the offer for the SDE Intern role at Swiggy! This internship proved to be one of my best experiences, working for a top unicorn startup. After dedicating three months to working with Golang, Spring Boot, and Reactjs, I was delighted to receive a full-time offer from Swiggy.

Interview Questions (1)

Q1
Database Concepts (MongoDB, SQL, ACID)
Other

I was asked questions about MongoDB, its differences compared to SQL databases, and the core concepts of ACID properties.

Preparation Tips

For the Online Assessment, I had limited time, so I focused on checking previously asked questions from the LeetCode Discuss section, GFG blogs, and Medium articles. I revised all essential DSA algorithms and important bookmarked problems. For the interview rounds, my preparation included studying core subjects, enhancing my skills, practicing important DSA questions, reviewing previous interview experiences, delving a bit into Low-Level Design (LLD), and thoroughly understanding my projects and internship tasks. Additionally, for the hiring manager round, I prepared for situational-based questions. My overall preparation strategy emphasized balancing DSA and development activities, participating in hackathons, internships, open-source contributions, contests, and daily problems. I ensured I had a solid grasp of core subjects, DSA, and LLD beforehand. I also made sure to know everything about my resume, as it is my identity in an interview.

Swiggy | ASDE | Online Interviews | December 2024 [Offer]
swiggy logo
Swiggy
ASDEOffer
January 9, 2025118 reads

Summary

I successfully interviewed for an Associate Software Development Engineer (ASDE) role at Swiggy in December 2024. The process involved a Hackerrank assessment, a technical backend assignment, an LLD round, and a Hiring Manager round, ultimately leading to an offer.

Full Experience

I am a 2024 passout from a Tier-2 college and currently work as a Software Engineer at a consultancy. In December 2024, I applied for an ASDE role at Swiggy.

My interview journey began with a Hackerrank assessment. This included two very simple DSA questions, two easy-to-medium SQL queries involving simple joins, and a few easy Computer Science fundamentals MCQs.

After the initial assessment, I filled out a Google form to apply and kept an eye on LinkedIn for updates. I then received a technical assignment. Since this was a backend-heavy role, the task was to build a simple attack/defend game. I had the flexibility to choose between Node, Java, or Golang for the implementation.

The next stage was my 1st Face-to-Face interview, which was an LLD Round. This round was conducted by a third party and felt more like a discussion than a strict interview. The interviewer was primarily interested in how I think, rather than just my coding ability. My task was to design a follow/unfollow functionality for a social media application. The focus was on requirement gathering, designing the database schema, identifying the necessary API endpoints, and determining their types (GET/POST/PUT/PATCH/DELETE). I was encouraged to think aloud and interact with the interviewer, without worrying too much about the actual code.

Finally, I had the HM Round (Hiring Manager). This round started with a resume screening. Following that, I was asked questions covering Computer Science fundamentals, including OS, CN, and DBMS. There was also one DSA question, which for me was Merge Intervals. The other questions asked were:

  • Difference between Process and Thread? Why are they different? / Why do we require these differently?
  • What is indexing? Why/Where is it used? How is it implemented? (I couldn't answer this one)
  • Difference between TCP and UDP? Use cases?
  • Difference between TCP and HTTP? Difference between HTTP and REST? What is REST?

Overall, things went well, and I was pleased to receive an offer from Swiggy.

Interview Questions (7)

Q1
Simple Attack/Defend Game Development
Other

Design and implement a simple attack/defend game using Node, Java, or Golang. This was a technical assignment for a backend-heavy role.

Q2
Design Social Media Follow/Unfollow Functionality
System DesignMedium

Design a follow/unfollow functionality for a social media application. The focus should be on requirement gathering, database design, identifying necessary API endpoints (specifying GET/POST/PUT/PATCH/DELETE), and discussing the overall system architecture.

Q3
Merge Intervals
Data Structures & AlgorithmsMedium

The DSA question asked was Merge Intervals.

Q4
Process vs. Thread Differences
OtherEasy

Explain the fundamental differences between a Process and a Thread. Discuss why these two distinct concepts are required in operating systems.

Q5
Database Indexing Concepts
OtherMedium

What is indexing in databases? Explain its purpose, common use cases, and how it is typically implemented. (The candidate noted they couldn't answer this part).

Q6
TCP vs. UDP Differences and Use Cases
OtherEasy

Describe the key differences between the TCP (Transmission Control Protocol) and UDP (User Datagram Protocol) network protocols. Provide specific use cases for each protocol.

Q7
TCP vs. HTTP vs. REST
OtherMedium

Explain the differences between TCP and HTTP. Further, differentiate between HTTP and REST, and provide a definition for what REST (Representational State Transfer) is.

Swiggy | SDE 2 | Remote | Dec 2024 | Result (Reject) | Worst HR ever seen
swiggy logo
Swiggy
SDE 2Remote2.5 yearsRejected
December 23, 202442 reads

Summary

I interviewed for an SDE 2 position at Swiggy remotely and successfully navigated multiple technical rounds, including coding and low-level design. However, despite a strong technical performance, I was ultimately rejected after an unexpected and confrontational interaction with HR regarding my application level.

Full Experience

My journey with Swiggy began with an online assessment, where I successfully solved three medium-level coding questions within the allotted 1.5 hours. Following this, I was unexpectedly scheduled for a PS/DS round for SDE 2, despite initially applying for SDE 1. I proceeded with the round, and the interviewer was very humble and polite. I tackled two medium-level questions, completing both with optimal time complexity, and received positive feedback the same evening, clearing me for the next stage.

The subsequent Low-Level Design round involved designing a services configurations updation system. My task was to define APIs, entities, establish a folder structure, and implement the system. I successfully met all the requirements, and this round went particularly well for me.

The turning point, however, came during the LLD interview when I casually mentioned applying for SDE 1 but interviewing for SDE 2. The next day, HR called me, and she was literally shouting, accusing me of being forced into the SDE 2 interview. This unprofessional interaction was followed by a two-week silence before I received a notification stating that I would not be moving forward.

Interview Questions (1)

Q1
Design Services Configurations Updation System
System Design

Design a system for updating service configurations. This task required defining APIs, specifying entities, establishing a suitable folder structure, and implementing the solution.

Swiggy | SDE-1 | Bangalore (Remote) | Aug 2024 [Offer Accepted]
swiggy logo
Swiggy
SDE-1Bangalore (Remote)Offer
September 30, 202457 reads

Summary

I interviewed for an SDE-1 position at Swiggy in August 2024 and successfully received an offer. The interview process consisted of three rounds: Data Structures and Algorithms, Low-Level Design, and a Hiring Manager discussion.

Full Experience

Round 1: Data Structures and Algorithms (DSA)

This round lasted for an hour and focused heavily on data structures and their time complexity. The problems given were modified versions of standard LeetCode questions. I was asked to solve Valid Parentheses and Meeting Rooms. My approach focused on achieving efficient time complexity, ensuring I handled all edge cases, and selecting optimal data structures for the solutions.

Round 2: Low-Level Design (LLD)

The second round, also an hour long, was a system design interview. I was tasked with designing several APIs for Instagram, with a strong emphasis on scalability. Specifically, I had to design the Post API, GetFeed API, and Follow API. The interviewer focused on how my system would handle millions of users efficiently and quizzed me on database design. I also had to write a few SQL queries as part of this round.

Round 3: Hiring Manager (HM)

The final round was a conversational hiring manager interview, lasting an hour. This round primarily focused on behavioral questions to assess my team fit and collaboration skills. We had some time left at the end, and I was given another LLD problem to design a bike rental system.

Interview Questions (4)

Q1
Valid Parentheses
Data Structures & AlgorithmsEasy

Given a string s containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.

An input string is valid if:

  • Open brackets must be closed by the same type of brackets.
  • Open brackets must be closed in the correct order.
  • Every close bracket has a corresponding open bracket of the same type.

Q2
Meeting Rooms
Data Structures & AlgorithmsEasy

Given an array of meeting time intervals where intervals[i] = [starti, endi], determine if a person could attend all meetings.

Q3
Design Instagram APIs
System Design

Design several APIs for Instagram, specifically the Post API, GetFeed API, and Follow API. The design should focus on scalability to handle millions of users efficiently. Discussions included database design and writing SQL queries.

Q4
Design a Bike Rental System
System Design

Design a Low-Level Design (LLD) solution for a bike rental system.

Swiggy ASDE Hackerrank Test Experience - Cleared Round
swiggy logo
Swiggy
ASDEOngoing
July 10, 202471 reads

Summary

I successfully cleared the Hackerrank screening round for the Swiggy ASDE role, which included problem-solving, frontend MCQs, and a practical React coding challenge.

Full Experience

Hi everyone,

I wanted to share my recent experience with the Swiggy ASDE role Hackerrank test. After being shortlisted through my resume, I received the test link and completed the assessment. Here's how the test was structured:

Test Structure:

  • Total Questions: 13
  • Adhoc: 1 question
  • Problem Solving: 1 question
  • HTML/CSS/JS: 10 multiple-choice questions
  • React Coding: 1 question (using TypeScript)

Detailed Experience:

The Adhoc Question was straightforward, seemingly designed to assess basic logical and analytical skills. Following that, the Problem Solving Question involved a simple array manipulation problem, which I found quite basic and a relief to solve, restricted to JavaScript for coding.

The HTML/CSS/JS MCQs consisted of 10 multiple-choice questions, predominantly covering fundamental concepts and common scenarios in these technologies. These were generally easy.

The most engaging part was the React Coding Question. The task required me to complete several features for a movie website. Specifically, I had to implement a search functionality and a favorites table for movies that were fetched from an API. This challenge truly tested my understanding of React and TypeScript.

Verdict:

I am pleased to report that I cleared this round!

Overall, I found the test to be well-balanced and fair. The problem-solving and React coding questions were particularly enjoyable. For anyone preparing for a similar test, I'd strongly recommend brushing up on JavaScript basics, React fundamentals, and ensuring comfort with TypeScript.

Interview Questions (1)

Q1
Implement Movie Search & Favorites in React
Other

The task was to complete some features for a movie website. Specifically, I had to implement a search functionality and a favorites table for movies fetched from an API. The challenge required a good understanding of React and TypeScript.

Preparation Tips

For anyone preparing for a similar test, I would strongly recommend brushing up on JavaScript basics, React fundamentals, and ensuring comfort with TypeScript.

SWIGGY SDE 1 | (RECRO ) | SOFTWARE ENGINEER | INTERVIEW PROCESS
swiggy logo
Swiggy
sde 1 software engineerOffer
January 21, 202463 reads

Summary

I successfully navigated through Swiggy's SDE 1 interview process, which included an online coding test, a technical PSDS round, and a hiring manager round focusing on system design, ultimately leading to an offer.

Full Experience

My interview process for the SDE 1 role at Swiggy was structured into three distinct phases:

  1. Online Coding Test: This round consisted of three coding challenges: one easy, one medium, and one medium-hard problem. I performed well and received a positive response, advancing to the next stage.
  2. PSDS Round (Technical Discussion): This was a technical problem-solving and data structures round. I was given a problem involving currency conversion rates, which I solved using Golang. The problem required finding the conversion rate between two given currencies based on an array of direct conversion rates.
  3. HM-Round: The final round was with the Hiring Manager, focusing on System Design. We discussed Low-Level Design (LLD) principles, resilient system patterns, and concurrency concepts.

All three rounds were positive, and I successfully received an offer for the SDE 1 position.

Interview Questions (1)

Q1
Currency Conversion Rate Calculation
Data Structures & AlgorithmsMedium

You are provided with two parameters:

  1. An array of currency conversion rates. For example, ['USD', 'GBP', 0.77] means 1 USD is equal to 0.77 GBP.
  2. An array containing a 'from' currency and a 'to' currency.

Given these parameters, your task is to find the conversion rate that maps the 'from' currency to the 'to' currency. The return value should be a number.

Example:

You are given the following parameters:

  • Rates: ['USD', 'JPY', 110], ['US', 'AUD', 1.45], ['JPY', 'GBP', 0.0070]
  • To/From currency: ['GBP', 'AUD']

Find the rate for the 'To/From' currency. In this case, the correct result is 1.89.

SWIGGY | ASDE | Associate Software Development Engineer(ASDE) | 2022 Passout
swiggy logo
Swiggy
associate software development engineerOffer
January 5, 202437 reads

Summary

I applied to Swiggy for an Associate Software Development Engineer role through a referral. After successfully navigating an online assessment and a low-level design assignment, I received an internship offer with a chance of full-time conversion, a detail that was only disclosed late in the process and caused some dissatisfaction.

Full Experience

I applied for an Associate Software Development Engineer (ASDE) role at Swiggy through a referral in late November. It took approximately three weeks to receive an email asking me to fill out a form with basic details like my resume, college, and CPI. Around two weeks later, on December 19th, I got another email stating my resume was selected, and I subsequently received a link for a Hackerrank test.

The Hackerrank test included:

  • One database SQL query question, focusing on joins.
  • One medium-to-hard coding question, which I recall being based on arrays and binary search.
  • A few basic MCQs.

I managed to solve all these within 30-40 minutes.

A week after the online test, I received an email for Round 1, which was an assignment based on low-level design. The task was to design a playing arena where two players could fight according to a specified logic. I was restricted to using Java, NodeJS, or Go for the project. I completed the assignment using Java + Maven within a day and was quite pleased with the code I produced.

However, after submitting the assignment, I waited almost two weeks without further communication. I was really hoping for this opportunity. I subsequently received a call from HR. To my surprise, the role wasn't full-time as expected but a 3-month internship with a potential conversion to a full-time position. This was nowhere mentioned in the original job description, which I found to be a waste of candidates' time. HR confirmed my last round went well and asked if I wanted to proceed, mentioning an offer of 8 CTC for the internship (I assumed this meant 8 LPA, so 2 LPA for 3 months).

Interview Questions (1)

Q1
Design a Playing Arena
System Design

Design a playing arena where two players can fight based on given logic. I was required to use only Java / NodeJS / Go for this project.

Swiggy | Frontend Intern | 2024 Batch
swiggy logo
Swiggy
frontend internremoteOffer
October 15, 202359 reads

Summary

I successfully interviewed for a Frontend Intern position at Swiggy in 2024 and received an offer. The process included an Online Assessment, a Machine Coding round, a PSDS round, and a Hiring Manager discussion.

Full Experience

I discovered on LinkedIn that Swiggy was hiring Frontend Interns focusing on React. After submitting my application through Google Forms and reaching out to SDEs and Managers, I received an online assessment link from HR.

Round 1: Online Assessment

This round comprised three sections. First, there was an easy Data Structures and Algorithms question involving Hashing and Arrays. Second, I tackled Multiple Choice Questions covering HTML, JavaScript, and CSS fundamentals. Finally, a React coding question required me to implement an API call and ensure all test cases passed.

Round 2: Machine Coding Round (60 Mins)

The main task for this round was to build an autosuggestion input component in React, which needed to call an API based on user input. It was recommended to use CodeSandbox for this round. Afterward, the interviewer asked me about my past projects, previous internships, and fundamental React concepts. I tried to maintain a conversation throughout the coding, ensuring the interviewer understood my thought process and even asking for their suggestions.

Round 3: PSDS (Problem Solving and Data Structures) (60 Mins)

As the name suggests, this round heavily focused on problem-solving and data structures. The questions primarily revolved around Arrays, Polyfills, Regular Expressions, Promises, Currying, Throttle, and Debounce. It's crucial to practice DSA in JavaScript for frontend interviews. Later in the round, we discussed our favorite tech stacks and libraries.

After waiting for several days without an update, I suddenly received a call from HR for a Hiring Manager round scheduled for the same day.

Round 4: Hiring Manager Round

This round began with a general discussion where they briefed me about the project. The questions primarily focused on my resume, the projects I had completed, and the major challenges I faced. We also touched upon topics like deployment pipelines, Event Loops, React, and debugging.

Later the same day, I received a call from HR confirming my selection.

Interview Questions (1)

Q1
React Autosuggestion Input with API Integration
Other

The task was to build a dynamic autosuggestion input component using React. This component needed to fetch suggestions by making API calls based on the user's input and then display these suggestions effectively. I was expected to use Codesandbox for implementation.

Preparation Tips

Based on my experience, here are a few tips for preparing for frontend interviews:

1. I highly recommend focusing on HTML/CSS/JS fundamentals, as they form the core of frontend development.
2. It's beneficial to practice common Machine Coding problems in CodeSandbox before your interview, as most interviewers prefer this platform.
3. I found it helpful to try and maintain a good, technology-oriented conversation with the interviewer at the end, perhaps discussing favorite tech stacks or libraries (most SDEs appreciate this).
4. It's important to appear calm and collected, even if you're feeling nervous.
5. And sometimes, a bit of luck helps too!
6. Finally, it's crucial not to lose hope, especially given the current market conditions.

SWIGGY ALL INTERVIEW QUESTIONS
swiggy logo
Swiggy
Ongoing
September 1, 2022109 reads

Summary

I have compiled a comprehensive list of interview questions encountered during Swiggy's onsite interviews for both SDE-1 and SDE-2 roles, covering a wide range of LeetCode problems and system design challenges.

Full Experience

I've gathered these interview questions from various Swiggy SDE-1 and SDE-2 onsite rounds. This collection provides insights into the types of problems asked, encompassing classic data structures and algorithms, with direct references to many LeetCode problems, as well as several conceptual and system design questions. It serves as a valuable resource for anyone preparing for technical interviews at Swiggy.

Interview Questions (24)

Q1
Rotting Oranges (Similar)
Data Structures & AlgorithmsMedium

A problem similar to Rotting Oranges, which typically involves a grid of fresh, rotten, and empty oranges. Fresh oranges rot if adjacent to a rotten orange. The goal is to find the minimum time until all fresh oranges rot or if it's impossible for all fresh oranges to rot.

Q2
Find the Duplicate Number
Data Structures & AlgorithmsMedium

Given an array nums containing n + 1 integers where each integer is between 1 and n (inclusive). Prove that at least one duplicate number must exist. Assume that there is only one duplicate number, find the duplicate one. The interviewer specifically looked for an O(1) space complexity solution.

Q3
Nth Recently Used Number in Stream
Data Structures & Algorithms

Given a stream of numbers, find the nth most recently recurring number. For example, if the stream is [1, 1, 2, 3, 2, 4] and n = 2, the output should be the 2nd most recently recurring number. This problem implies tracking both frequency and recency of numbers in a stream.

Q4
Group Anagrams
Data Structures & AlgorithmsMedium

Given an array of strings strs, group the anagrams together. You can return the answer in any order.

Q5
Merge k Sorted Lists
Data Structures & AlgorithmsHard

You are given an array of k linked-lists, each sorted in ascending order. Merge all the linked-lists into one sorted linked-list and return it.

Q6
Course Schedule II (Modified)
Data Structures & AlgorithmsMedium

A problem with a slight modification based on Course Schedule II. The original problem asks to return the ordering of courses you should take to finish all courses, or an empty array if it's impossible. The core problem involves topological sorting.

Q7
Subarray Sum Equals K (Modified)
Data Structures & AlgorithmsMedium

A modified version of the Subarray Sum Equals K problem. The original problem asks to find the total number of continuous subarrays whose sum equals k.

Q8
Subarray Sums Divisible by K
Data Structures & AlgorithmsMedium

Given an integer array nums and an integer k, return the number of non-empty subarrays that have a sum divisible by k.

Q9
Lowest Common Ancestor of a Binary Tree
Data Structures & AlgorithmsMedium

Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.

Q10
Alien Dictionary
Data Structures & AlgorithmsHard

There is a new alien language that uses the English alphabet. However, the order among the letters is unknown to you. You are given a list of words from the alien language's dictionary, where the words are sorted lexicographically by the rules of this new language. Derive the order of the letters in this language.

Q11
Building Bridges
Data Structures & AlgorithmsHard

This problem typically involves finding the maximum number of non-crossing bridges that can be built between two banks of a river, given coordinates for cities on both banks. It's a classic dynamic programming problem, often solved using a variation of the Longest Increasing Subsequence algorithm.

Q12
Design LRU Cache
System DesignMedium

Design a Least Recently Used (LRU) cache. Implement the LRUCache class: LRUCache(int capacity) initializes the LRU cache with positive size capacity. int get(int key) returns the value of the key if the key exists, otherwise returns -1. void put(int key, int value) updates the value of the key if the key exists. Otherwise, add the key-value pair to the cache. If the number of keys exceeds the capacity from this operation, evict the least recently used key.

Q13
Coin Change (Similar)
Data Structures & AlgorithmsMedium

A problem similar to the Coin Change problem. The standard Coin Change problem asks for the fewest number of coins needed to make up a certain amount, or the number of combinations of coins that sum up to a given amount.

Q14
Surrounded Regions
Data Structures & AlgorithmsMedium

Given an m x n matrix board containing 'X' and 'O', capture all regions that are 4-directionally surrounded by 'X'. A region is captured by flipping all 'O's into 'X's in that surrounded region. Regions touching the border are not considered surrounded.

Q15
Maximum Length of Pair Chain
Data Structures & AlgorithmsMedium

You are given n pairs of numbers, pairs[i] = [starti, endi]. A pair (c, d) follows a pair (a, b) if b < c. A chain of pairs can be formed in this fashion. Return the length of the longest chain which can be formed.

Q16
Find All Greater Numbers Formed by Digits
Data Structures & AlgorithmsMedium

Given a number, find all possible numbers that can be formed using its digits which are greater than the given number. For example, if the input is 213, the output should include 231, 312, 321. This typically involves generating permutations.

Q17
Nearest Node Value in Binary Tree
Data Structures & AlgorithmsEasy

Given a binary tree and a target value, find the node value in the tree that is closest to the target value.

Q18
String Replacement with Mismatched Substrings
Data Structures & AlgorithmsMedium

Given a string S, a source array source, a target array target, and an index array indices. For each i, if the substring of S starting at indices[i] matches source[i], then replace that substring with target[i]. Otherwise, do nothing. Replacements are independent and should be performed simultaneously.

Q19
Game on Circular Array (Maximizing Score)
Data Structures & AlgorithmsHard

Two players take turns picking one element from either end of a circular array. The goal for each player is to maximize their own score. The problem asks to find the maximum possible gain for the first player and determine if the first player always wins.

Q20
Palindrome Pairs
Data Structures & AlgorithmsHard

Given a list of unique words, return all the pairs of distinct indices (i, j) in the given list, so that the concatenation of the two words words[i] + words[j] is a palindrome.

Q21
Climbing Stairs
Data Structures & AlgorithmsEasy

You are climbing a staircase. It takes n steps to reach the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

Q22
Jump Game III
Data Structures & AlgorithmsMedium

Given an array of non-negative integers arr and a start index start. You are initially at start. When you are at index i, you can jump to i + arr[i] or i - arr[i]. Can you reach any index with value 0?

Q23
Jump Game II
Data Structures & AlgorithmsMedium

Given an array of non-negative integers nums, you are initially positioned at the first index. Each element in the array represents your maximum jump length at that position. Your goal is to reach the last index in the minimum number of jumps.

Q24
Longest Substring Without Repeating Characters
Data Structures & AlgorithmsMedium

Given a string s, find the length of the longest substring without repeating characters.

Swiggy | SDE Intern (Frontend) | Remote
swiggy logo
Swiggy
sde intern (frontend)remoteOffer
February 12, 202234 reads

Summary

I successfully interviewed for the SDE Intern (Frontend) role at Swiggy, which involved one technical round focused on frontend development and a machine coding challenge, ultimately leading to an offer.

Full Experience

My interview process for the SDE Intern (Frontend) role at Swiggy consisted of a single technical round, conducted by an SDE II. The entire round was heavily focused on frontend development, with no Data Structures and Algorithms (DSA) questions at all. We started with a brief introduction, followed by discussions about my previous experiences and projects.

The main part of the round was a machine coding question where I was tasked with developing a tic-tac-toe game for two players using React.js. The interviewer specifically mentioned that there was no emphasis on CSS, allowing me to focus solely on the game's logic and React implementation.

I received the offer letter about 2-3 days after the interview.

Note: I secured this opportunity through a referral from an SDE II, who coincidentally was the same person who interviewed me.

Interview Questions (1)

Q1
Develop Tic-Tac-Toe Game with React.js
Other

I was given a machine coding challenge: develop a tic-tac-toe game for two players. The implementation was expected to be done using React.js, and it was explicitly stated that there would be no emphasis on CSS, so the focus was purely on the game's functionality and React logic.

Preparation Tips

My preparation focused on being very sound with React.js concepts. Additionally, I ensured I was proficient with core JavaScript methods such as split, splice, map, and reduce, which proved useful for the frontend-heavy interview.

Swiggy | SDE2 | Bangalore | Jan 2022 [Reject]
swiggy logo
Swiggy
SDE IIBangalore3.5 yearsRejected
February 1, 202244 reads

Summary

I interviewed for an SDE2 position at Swiggy in January 2022, facing multiple rounds including an Online Assessment, Machine Coding, PS/DS, and LLD. Despite successfully navigating the initial rounds, I was ultimately rejected after the LLD round due to negative feedback on my design.

Full Experience

My interview journey for the SDE2 role at Swiggy started with an Online Assessment that lasted 90 minutes. I successfully completed all three questions, which were based on Graphs, Dynamic Programming, and Strings.

Following the OA, I moved to Round 1: Machine Coding, a 2-hour session. I was asked to design the Splitwise application, incorporating different split types. I focused on designing the entities and services, ensuring all specified requirements were met. We also had a good discussion on potential extensions and various object-oriented design concepts.

Round 2: PS/DS was 1 hour and 20 minutes long. I tackled an easy stack-based question, followed by a medium-difficulty DP problem, which I solved within 30 minutes. The third question was a hard one, requiring concepts from both DP and graphs for an optimal solution. It took me a while to figure out the optimal approach, but the interviewer provided additional time as I was making good progress.

The final stage was Round 3: LLD, lasting 1 hour. This round began with a 20-minute discussion about my projects at my current company. The main design problem involved creating an application to gather data for Swiggy's offers and ads from various sources and transfer this information to internal teams. I found the question initially unclear and spent considerable time asking clarifying questions. As I started to write down classes, APIs, and the datastore schema, the interviewer continuously changed and added new requirements, which made it extremely challenging to finish within the given time. Unfortunately, I was rejected after this round due to negative feedback on my LLD performance.

Interview Questions (2)

Q1
Design Splitwise Application
System Design

Design the Splitwise application, specifically handling different split types. This involved conceptualizing all necessary entities and services to meet the application's core requirements.

Q2
Design Offer and Ads Data Transfer Application
System Design

Design an application responsible for collecting data related to different offers and advertisements for Swiggy from multiple external sources. The application should then interact with internal teams to facilitate the transfer and distribution of this gathered information.

Swiggy | SDE 1 - Backend | Bangalore | September 2021 [Offer]
swiggy logo
Swiggy
SDE1 - BackendBangalore1 yearsOffer
September 22, 202182 reads

Summary

I interviewed for an SDE1 Backend role at Swiggy in Bangalore during September 2021, and I successfully received an offer. The interview process was entirely virtual and spanned four rounds: an online assessment, a machine coding round, a data structures and algorithms round, and finally, a hiring manager discussion.

Full Experience

Application Process

I applied for the Swiggy SDE1 - Backend position in Bangalore through a referral. My professional background included over a year of experience as an SDE1 at a product-based company. The entire interview process took place virtually in September 2021.

Round 1: Online Assessment (1.5 hours)

This round was conducted on HackerRank. I successfully solved all three questions presented:

  1. A problem focused on determining the number of distinct subarrays that could be formed with at most a given number of odd elements.
  2. A question involving a number line from 0 to 'n' and a string of moves, where I needed to find the number of subsequences of moves that would lead from a given point 'x' to 'y'.
  3. A problem asking to select weights from a given list such that their sum did not exceed a specified capacity.

Two days after the online assessment, I received a call to proceed to the interview rounds.

Subsequent Rounds (Conducted on the same day)

Round 2: Machine Coding Round (3 hours)

The primary task was to design and code a multilevel parking lot system. Although I couldn't complete all the given requirements within the two-hour timeframe, the interviewer paid close attention to my design approach. We had a detailed discussion about my design choices and how I would implement the remaining features. Additionally, I was asked to code the Singleton design pattern, which led to a thorough discussion where I successfully answered all related questions.

Round 3: Data Structures and Algorithms (1 hour)

This round began with a brief discussion about the previous machine coding round. Following that, I was given a problem similar to LeetCode's Rotting Oranges. We explored numerous follow-up questions based on this problem.

Round 4: Hiring Manager Round (1 hour)

In this final round, we discussed a Data Structures & Algorithms question related to a parking lot system, though the specifics were not elaborated. The hiring manager also inquired about my current work responsibilities and asked me to explain one of my projects in detail.

I received the interview results approximately 4-5 days after the final round. I found the interviewers and HR team to be very friendly, and the overall interview process was remarkably smooth.

Interview Questions (6)

Q1
Distinct Subarrays with At Most K Odd Elements
Data Structures & Algorithms

Determine number of distinct subarrays that can be formed having at most of given number of odd elements.

Q2
Number of Subsequences of Moves to Reach Target
Data Structures & Algorithms

Given a number line from 0 to n and a string denoting sequence of moves, determine the number of subsequence of those moves that lead from given point x to end at another point y.

Q3
Subset Sum with Capacity Limit
Data Structures & Algorithms

Given a list of weights select weights from the given list such that there sum does not exceed a given capacity.

Q4
Design Multilevel Parking Lot
System Design

Design and code a multilevel parking lot system. The interviewer looked into my design and asked about the design for remaining requirements.

Q5
Implement Singleton Design Pattern
OtherEasy

Implement the Singleton design pattern and discuss its implications and usage.

Q6
Rotting Oranges
Data Structures & AlgorithmsMedium

A problem similar to Rotting Oranges (LeetCode #994) was discussed, with a lot of follow-up questions based on it.

Have a Swiggy Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Swiggy.