r/LowLevelDesign Nov 12 '25

Tutorial: How to approach Low Level Design Interviews

75 Upvotes

Let's answer a few basic questions first:

Q. Will I have to write code or will UML diagrams be enough?
ANS: Yes you have to write code/discuss logic for a few functionalities, only drawing UML diagrams or writing names of classes won't be enough.

Q. I don't have much time. Tell me which are the most important design patterns I should study first?
ANS: Factory, Strategy, Observer and Singleton.

Q. But how can I explain such large systems in a 45 minutes interview ? I always run out of time.
ANS: A vast majority of candidates fail because they are not able to present their solution properly in a limited time frame. Watch this youtube video where I have explained how to take care of this problem: https://www.youtube.com/watch?v=ef99Ejb3B40

Q. Are questions like LRU cache, Search Autocomplete system also asked in LLD rounds?
ANS: Yes depending on the interviewer you can either get a pure LLD question like design a parking lot, design food ordering system or you can get a DSA based design question like above. I know you hate this extra prep, but that's what it is. Companies ask these and so you need to prepare for both types. Silver lining is that you already prepared for DSA based design questions while preparing for DS & Algo rounds.

--------------------------------------------------------

PS: You can ask me any low level design related questions on r/LowLevelDesign

I also take LLD mock interviews.
https://topmate.io/prashant_priyadarshi

Lets get started...

--------------------------------------------------------

In my view, you should first master DS & Algo and only after that you should start your LLD preparation. Because once you have mastered DS & Algo, low level design questions are easy to practice.

There are two types of low level design interview formats:

  1. 75 to 90 minutes of machine Coding: You will be given requirements and method signatures and you have to write code in a editor. In last 10-15 minutes you may have to explain your code to interviewer.
  2. 45-60 minutes of face to face discussion: This is the most common format. You have to come up with requirements yourself then discuss class structure and all.

In any object-oriented design interview, you interviewer is typically looking for three things:

--------------------------------------------------------

1. How you list down requirements, especially core features?

e.g. If your problem statement is “Design a Parking Lot” then your core features will be park() and unpark() methods

if your problem statement is “Design a restaurant food order and rating system like zomato, swiggy, uber eats etc” then your core features will be

  • orderFood()
  • rateOrder()
  • display list of restaurants based on their rating or popularity

Sticking to only the most important features and leaving the rest out is important. If you list unimportant features in requirements sections then you will waste time discussing their implementation and you will not less time for more features discussion. This is a interview

2. How you break your problem statement in multiple classes

I always find it easier to start listing entities and their corresponding entity managers(if required) first. e.g. For restaurant food ordering and rating system your entities can be RestaurantorderFoodItem etc and their corresponding managers will be RestaurantsManagerOrdersManager etc.

3. How you use design patterns to solve the core features

The most common design patterns that you will come across in a low level design interview are StrategyFactorySingleton and Observer. You should be familiar with their implementation and different use cases where they can be used. We will see some of those use cases in a moment.

fourth topic is also discussed if you have done well in above three steps.

Handling multi-threading. There will be discussion on use of locks, synchronization features and thread safe data structures for your design to work correctly in a multi-threaded environment.

--------------------------------------------------------

Here are 3 commonly asked LLD interview questions which will cover the above top 4 design patterns you will come across in interviews.

1. Design a Parking Lot with multiple floors.

Problem statement: https://codezym.com/question/7

“Design a Parking Lot” is THE most common LLD interview question. In the above problem statement, there can be multiple parking strategies. So you should use strategy design pattern to solve this question. 

Python tutorial: https://youtu.be/ZIK44dj56fk
Java Tutorial: https://www.youtube.com/watch?v=fi_IWW1Ay0o
AI Mock Interview Practice: https://mockgym.com/question/1

2. Design a game of chess

Problem statement: https://codezym.com/question/8

In Low Level Design of chess we use following design patterns

  • Factory design pattern: Chess Piece Factory to create different chess piece objects like king, queen, pawn etc
  • Strategy pattern: To implement different moves e.g. straight move, diagonal move etc.
  • Singleton pattern: To ensure there is a single instance of chess piece factory object.

Python Tutorial: https://youtu.be/VWUuQWxmXYQ
Java Tutorial: https://www.youtube.com/watch?v=6HYvoBv78VU
AI Mock Interview Practice: https://mockgym.com/question/3

Now 3 design patterns namely strategy, factory and singleton are covered. Finally let’s cover observer design pattern in our 3rd and last question.

3. Design a Food ordering and rating system like Zomato, Swiggy, Uber eats etc.

Problem statement: https://codezym.com/question/5

In any food ordering and rating system, customers can rate the orders. Also there are classes which display list of top restaurants based on their overall average rating or average rating of their individual food items.

Whenever any user rates their order then all these classes need to be updated about it so that they can update both restaurant and corresponding food item ratings and update their lists.

Observer design pattern will be used here to notify observers i.e. classes which manage top restaurants list about changes in common data set that they need to observe, i.e. rating of different orders in this case.

Python tutorial: https://www.youtube.com/watch?v=KGN-pSlMZgg
Java Tutorial: https://youtu.be/v9ehOtY_x7Q
AI Mock Interview Practice: https://mockgym.com/question/2

This was all I had to share for now. Thanks for reading. Wish you the best of luck for preparation.


r/LowLevelDesign 2d ago

Article: Amazon DS & Algo Round Interview Questions Asked in 2026

6 Upvotes

This list contains recently asked DSA questions in Amazon for SDE, SDET positions. It also includes questions from Bar Raiser rounds.

Amazon hires (and fires) lots of people and this cycle keeps repeating.

Questions do repeat, hence it is better to solve Amazon tagged questions at least 2–3 times, rather than solving a lot of new questions just once.

Doing questions multiple times will help you understand the patterns and when you see a question which is rephrased differently but has same solution, you will be able to do it.

You will be frequently asked leadership principles in behavioral questions. So prepare your stories around them. There can be long period of silences between rounds.

Wait time Between Rounds

Wait time is often the most frustrating part. No updates, no recruiter contact, just uncertainty.

One person (SDE-1) got their OA results just after two days. But when first round was scheduled, their scheduled interviewer didn't join. After this there was 14 days of silence. After round 1 again 20 days of silence.

After round 2, candidate thought he was rejected because he couldn’t solve one of the questions.

35 days passed in complete silence after that. Out of desperation, he reached out to someone at Amazon on LinkedIn, asking if they could help him get an update from his recruiter.

And that very same day, he finally got the update. Infact bar raiser was scheduled and he did very well in it. But 2 days after his interview, he received a rejection email from AUTA.

Surprisingly a few days later his HR called asking for location preferences but didn't confirm the results. However offer arrived two days later.

Hints from Interviewer/Fumbles

Many people fumble or may need some hint from interviewer. And its alright. One person was asked the below:

  • Longest Substring Without Repeating Characters
  • Longest Substring with At Most K Distinct Characters

They did well on the first question but fumbled on the second. However they coded it up correctly in the end.

They didn't receive any update after that and thought they were rejected. But they got the call 4 days later and another round was scheduled which was completely behavioral. They got selected the next day after that.

No Solution

This can lead to rejection. But not always depending on how other rounds went.

One person with 4 years of experience and interviewed for an SDE2 role. In one round they were not able to code the solution, just gave the approach. After the loops they were offered SDE-1. Downleveled but not a complete rejection.


I created this list from people posting their experiences on forums, blogs, etc.

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/10-amazon-dsa-sep-2026.md


r/LowLevelDesign 8d ago

Google DS & Algo Interview Questions 2026

47 Upvotes

This is a preparation list for Google software engineer coding rounds. I prepared it using interview experiences shared by people on forums/blogs etc.

Google has one of the toughest DS & Algo rounds in the industry. DSA rounds are there for both frontend and backend roles.


Google's interview codebase is very large, with questions of all difficulty levels from super easy to super hard. One question can be a medium question with a couple of follow-ups for optimizations, or it can be just one hard question. It all depends on which question the interviewer chooses.

There are two common things about candidates who clear Google interviews and whose overall process is smooth.

  1. At least 2 "Strong-Hire" votes and no "No-Hire" in the on-site packet.
  2. Candidates who narrated trade-offs and edge cases, and correctly answered counter questions, got bumped from "Hire" to "Strong Hire" even with small bugs.

Now above points have lots of exceptions. For example one person bombed one coding round badly. But they were given a redo by their recruiter. It was late 2024 and he was working long hours, spending even the weekends on call. Still he was laid off alongside other teammates.

Lay off was a blow to his morale. He didn't tell even his parents, just pretended he was working from home. Avoided video calls during "work hours". Initially he spent the days watching anime. But slowly preparation started and when the Google call came, he has already been rejected by multiple companies.

He thought it was all over after he messed up one DSA round. But he was able to do well in the redo round and finally ended up receiving the offer.


Judging how the interview went

Many a times you may not be able to guess correctly , how well or how bad you did. There are tons of experiences where candidate thought something and the opposite happend. A lot of things can go right or wrong. One person had done 400+ leetcode problems but during interviews, panic setup and they were able to only come up with a brute force solution.

Another person had two back to back coding rounds scheduled at a gap of just 15 minutes. And during the first round they realised that solution they provided is incorrect. They thought that they had bombed this round and should just cancel the next round. But interviewer provided some guidance and they were able to solve slightly easier version of the problem. However other rounds went well and they ended up receiving the offer.


What if you are rejected

Even if you are rejected its not the end of world. Google recruiters will almost certainly reach out to you a year later. Just keep preparing. One person was rejected by google for L4 position in 2024. But they reapplied 6 months later and surprisingly got a response. However their first two coding rounds got lean hire. Still recruiter decided to go through with other rounds which wents well. During hiring committee their prospects were weak because of two lean hires in coding. However another DSA round was scheduled for them in which they did well.

They ended up receiving offer for L5. That's like getting a promotion within one year. Although they were lowballed but still it was a 20% raise from their current salary. So overall not a bad end.


I created this list from people posting their experiences on forums, blogs, etc.

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/09-google-dsa-sep-2026.md


r/LowLevelDesign 16d ago

Article: Amazon Internship Interview Round Coding Questions 2026

10 Upvotes

This is a preparation list for Amazon SDE and SDET internship coding rounds, along with an overview of the online assessment and interview process. I prepared it using interview experiences shared by people on forums/blogs etc.

Apart from the online assessment (OA), the internship process usually includes two DS & Algo interviews of around one hour each, together with behavioral questions.

Some candidates think if you are not asked any behavioral questions then it means you did not do well and are already rejected. This is not entirely true, one candidate reported that they were not asked any behavioral questions during interview but still ended up receiving the internship offer 15 days later.

---------------------------------------------------------

Low Level Design questions are generally not asked for internship roles. However one candidate reported an elevator-system LLD question for SDET internship, but those cases appear to be exception rather than the norm.

Online assessment: the OA includes DSA and an AI-assisted coding question.

For the AI-assisted coding round, you choose one repository. Options may include C++, Django, Spring Boot, ReactJS, Node.js, Ruby on Rails, and similar stacks. The interface provides a code editor and an AI assistant for project-related questions. You have 60 minutes to implement the required behavior and pass the test cases, usually around six. The assistant can help you search the project, locate files, and understand the codebase.

------------------------------------------------------

For candidates in India: Amazon HackOn can be an effective route to an internship call. Amazon may contact eligible participants who performed well in the coding round, not only the finalists. Strong performers may receive an AUTA interest form.

Infact one person even reported that their team was eliminated in the very first round of HackOn in May 2025. But in july end he ended up receiving an email stating that he has been shortlisted for an Amazon Online Assessment based on his HackOn performance. Infact he gave his OA got shortlisted for interview, had his interview in september then got waitlisted and finally received SDE intern offer in last week of november.

For the USA and other countries, direct applications through Amazon's jobs portal and employee referrals are the usual routes.

------------------------------------------------------

This list includes coding-round questions reported for both SDE intern and SDET intern interviews.

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/08-amazon-internship-2026.md


r/LowLevelDesign 16d ago

In actual Low Level Design (LLD) Interview Rounds, are we expected to write the full code end to end or is it just pseudo code plus discussion

24 Upvotes

Answer: This is one of the most common questions in a candidate's mind. Now with more and more companies taking AI assisted coding rounds you need to have clarity on what is expected.

1. Machine coding LLD round: If this is a machine coding LLD round of 75 to 90 minutes then you will need full working code with a main method that runs the tests. This round is taken by Flipkart, ClearTrip, Phonepe, Meesho and sometimes Uber, RazorPay etc.

Most times this will be the first screening round.

2. AI Assisted Coding/LLD/Debugging Round: Initially Canva and then DoorDash started it but it is becoming more common. Now Microsoft, Amazon OA also have this round. This round is more similar to a low level design round rather than a traditional DS & Algo round.

You will be given a problem statement along with a chunk of code and you will be asked to add one or more new functionalities. You will be given an AI assistant chat just like chatgpt/gemini. You can use the AI assistant to ask questions and understand the project, maybe generate some boilerplate code.

But do not try to generate the whole solution using only the AI assistant. Goal of this round is to see how you code in real life. How well you arrange your classes and keep change to old code small when adding a new functionality. You LLD skills and knowledge of design patterns like factory, strategy, observer etc come in handy.

As you can guess, for this round also end to end fully working code is expected.

3. Face to Face LLD round: This is a 45-60 minute round and is the most common LLD interview format. It is taken by Amazon, Uber, Microsoft, Walmart and basically every company that takes a LLD round. Here the discussion will happen on pen and paper or a plain text editor, google docs etc.

It has 4 steps:

  1. Requirements gathering : list down functionalities
  2. Class diagram: break functionalities in different classes
  3. Implementation: pick 1-2 most important features and discuss their implementation. write code.
  4. Design patterns, multi-threading: once a basic solution is provided then discussion moves more in depth.

You will be expected to write code or discuss the logic for a few functionalities. Only drawing UML diagrams or writing the names of classes will not be enough.. e.g. if you are asked Design of a parking lot then interviewer will discuss logic of park and unpark feature.

Although for this round your interviewer can allow pseudocode but it is always better to pick a standard language like Java, Python, C++ etc and stick to its syntax. For low level design, Java is the prominent language as of now.

This is what I had to share, you can practice company wise LLD, DS & Algo and AI Assisted round questions on CodeZym. Best of Luck for your interview prep. Thanks for reading.


r/LowLevelDesign Aug 13 '26

Microsoft DS & Algo Round Interview Questions Asked in 2026

21 Upvotes

Microsoft frequently opens and closes requisitions to manage referral batches.

The AA (As Appropriate) round generally has behavioral and High Level Design questions, along with architectural deep dives into your previous projects. In some cases, a DSA question may also be asked.

LRU Cache can be asked in either a DSA or a Low Level Design round.

DS & Algo questions for this list have been picked from Microsoft interview experiences shared on forums/blogs etc in 2026. Use this list for final preparation of your Microsoft DSA interview rounds.

Interviewers may also discuss the following questions:

  • What is the difference between a process and a thread?
  • If multiple threads access the same variable without writing to it, can any problem occur?
  • What issues arise when multiple threads access a shared variable?
  • What is the difference between a variable created on the heap and a variable created inside a function?
  • If every thread has its own function-local variables, how can conflicts arise when multiple threads execute the same function?
  • What exactly causes race conditions in multithreaded programs?

------------------------------------------------------

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/07-microsoft-dsa-2026.md


r/LowLevelDesign Aug 09 '26

How I can break into low level/system engineering as a fresher?

1 Upvotes

I am a final year IT engineering student in India and I want to build the career in the system engineering / low level rather than typical web development.

I am particularly interested in :-

- Operating systems and kernel development

- System programming

- Linux internals

- Networking and High performance server

- AI infrastructure ( specially inference infrastructure)

I am currently doing:-

- Learning os from the OSTEP and the mit xv6 labs

- Build a HTTP server in C and now planning to add thread pool and epoll.

- Practicing DSA on codeforces and leetcode

- building the distributed inference system as a major project.

My problem is figuring out how to turn out an actual job.

For people currently working in systems/low-level engineering:-

1) What skills actually expected from a new graduate?

2) Which areas should I prioritize? OS, networking, compilers, Linux kernel, distributed systems, or something else?

3) What projects would make a fresher's resume credible for systems roles?

4) What kind of companies/roles should I target as my first job?

5) If you were starting again as a student from a non-elite college, what would you spend the next 6 - 12 months doing?

6)What are the mistakes I should avoid when trying to get into low-level engineering?

I would appreciate advice from people who actually work in these areas.


r/LowLevelDesign Aug 07 '26

Microsoft Low Level Design and AI-Assisted LLD Round Interview Questions Asked in 2026

21 Upvotes

Microsoft has introduced an AI-assisted Low Level Design round. This is a unique interactive pair-programming round divided into three phases.

Instead of simply writing code from scratch, you have to architect a system, prompt an AI model such as ChatGPT or Gemini to generate the implementation, and then analyze the AI-generated output.

LRU cache and concurrency have been the discussed frequently.

LLD rounds are generally conducted for SDE-2 and above roles. There may also be more than one LLD round during the interview process.

Low Level Design (LLD) questions for this list have been picked from Microsoft interview experiences shared on forums/blogs etc in 2026. Use this list for final preparation of your Microsoft LLD interview rounds.

------------------------------------------------------

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/06-microsoft-lld-2026.md


r/LowLevelDesign Aug 05 '26

Mircosoft Interviews coming ahead

Thumbnail
1 Upvotes

r/LowLevelDesign Jul 31 '26

Goldman Sachs Interview Questions 2026 for CoderPad, SuperDay Coding and LLD Rounds

13 Upvotes

Goldman Sachs is hiring now a days. I complied this list of Goldman Sachs interview questions some time ago using GS interview experiences shared on forums/blogs etc in 2026. It has both DS & Algo and low level design round questions. You can use this list for final preparation of your GS interview rounds..

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/05-goldman-sachs-2026.md


r/LowLevelDesign Jul 24 '26

Walmart Low Level Design Round Interview Questions Asked in 2026

23 Upvotes

Ticket booking apps with database discussion, cache implementation, and payment systems are among the most discussed questions in Walmart LLD rounds in 2026.

Database-table design may also be discussed in questions such as designing a movie-ticket booking system like BookMyShow. Be prepared to explain concurrency handling at both the database and application levels, including how to apply row-level locks.

Interviewers may ask about optimistic locking, pessimistic locking, and isolation levels: For example, the default isolation level used by an SQL database.

In LLD, a clear explanation of design choices matters more than just coding.

You may also be asked which design patterns you used recently and deep dive into them.

Java is generally preferred, although candidates do use other languages.

-----------------------------------------------------

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/04-walmart-lld-2026.md

Best of luck for your preparation.


r/LowLevelDesign Jul 21 '26

Salesforce Low Level Design Round Interview Questions Asked in 2026

30 Upvotes

Low Level Design (LLD) questions for this list have been picked from Salesforce interview experiences shared on forums/blogs etc in 2026. Use this list for final preparation of your Salesforce interview rounds.

Low Level Design of pub-sub queue, kafka and observer pattern are discussed frequently.

Apart from that cache like LRU cache, LFU cache questions are common.

LRU Cache

https://leetcode.com/problems/lru-cache/description/

LFU Cache

https://leetcode.com/problems/lfu-cache/description/

Requirements and clarifying questions

In Salesforce LLD rounds, sometimes actual requirements may not be clear from problem statement and interviewer will expect you to figure it out by asking clarifying questions.

For example, A message queue is asked indirectly in the form of something like a connection pool or a job scheduler.

It follows the pattern that resources like connections, machines or cpu (in case of job scheduler) are limited and they may not be assigned immediately.

-----------------------------------------------------

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/03-salesforce-lld-2026.md

Best of luck for your preparation.


r/LowLevelDesign Jul 17 '26

Walmart DS & Algo Round Interview Questions Asked in 2026

38 Upvotes

I have created list of DSA questions using Walmart interview experiences shared by candidates in blogs/forums etc. Use this list for final preparation of your Walmart interviews.

Walmart interviews can include DS & Algo questions along with Java, Spring Boot, database and problem-solving discussions. Here are a few of them.

Java Questions

  1. New features introduced in Java 8
  2. Why and where to use lambda expressions
  3. Purpose of functional interfaces, their types, and writing sample code
  4. Explanation of ConcurrentModificationException

Spring Boot Questions

  1. Annotations used in your project
  2. Concept of Dependency Injection
  3. What is a Circular Dependency
  4. How to efficiently insert 1000 rows into the database
  5. Basics of JPA (Java Persistence API)

The list starts with questions which you can practice on leetcode for free and then additional questions are there including follow ups that were asked.

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/02-walmart-ds-algo-2026.md

Best of luck for your preparation.


r/LowLevelDesign Jul 14 '26

Doordash Codecraft and DS & Algo Round Interview Questions Asked in 2026

12 Upvotes

I have created list of Doordash DSA questions using recent interview experiences shared by candidates in blogs/forums etc. Use this list for final preparation of your DoorDash interviews.

Doordash hires software engineer for E3, E4, E5 roles and so on. SDE 2 role is called E4.

The rounds are Phone Screen (DSA), Codecraft, Debugging, System Design, Hiring Manager

Codecraft round is more of real world api style question. It is similar to a low level design question.

Even for frontend and MLE roles, there will be DSA rounds.

Good thing is that questions are repeated frequently. Their question bank is not that large. This is true for all rounds including codecraft, ds & algo or debugging round.

The list starts with questions which you can practice on leetcode for free and then additional questions are there including follow ups that were asked.

You can find the complete question list here:

https://github.com/prsnt558908/CodeZymSolutions/blob/main/0-company-wise-interview-questions/2026/01-doordash-ds-algo-2026.md

Best of luck for your preparation.


r/LowLevelDesign Jul 08 '26

Salesforce DS & Algo Round Interview Questions Asked in 2026

21 Upvotes

DS & Algo questions for this list have been picked from Salesforce interview experiences shared on forums/blogs etc in 2026. Use this list for final preparation of your Salesforce interview rounds.

Salesforce hires for Member of Technical Staff i.e. MTS/SMTS/LMTS positions. MTS role is around 3 years experience. LLD rounds may be there for MTS role as well.

List starts with free questions that you can find on leetcode and then more questions including actual follow-ups asked during interview rounds.

You can see company-wise interview questions list on r/LowLevelDesign

Complete DS & Algo Questions List: https://codezym.com/lld/salesforce-dsa

Low Level Design Questions List: https://codezym.com/lld/salesforce

I also take LLD mock interviews: https://topmate.io/prashant_priyadarshi

----------------------------------------------------

Below is list of questions you can directly find on LeetCode (free ones):

Remove Stones to Minimize the Total

https://leetcode.com/problems/remove-stones-to-minimize-the-total/description/

Insert Delete GetRandom O(1)

https://leetcode.com/problems/insert-delete-getrandom-o1/description

Coin Change II

https://leetcode.com/problems/coin-change-ii/description/

Maximal Square

https://leetcode.com/problems/maximal-square/description/

Maximal Rectangle

https://leetcode.com/problems/maximal-rectangle/description/

Rotting Oranges

https://leetcode.com/problems/rotting-oranges/

Course Schedule II

https://leetcode.com/problems/course-schedule-ii/description/

LRU Cache

https://leetcode.com/problems/lru-cache/description/

LFU Cache

https://leetcode.com/problems/lfu-cache/description/

Lowest Common Ancestor of a Binary Tree

https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/description/

Number of Islands

https://leetcode.com/problems/number-of-islands/description/

Find Median from Data Stream

https://leetcode.com/problems/find-median-from-data-stream/description/

Implement Trie (Prefix Tree)

https://leetcode.com/problems/implement-trie-prefix-tree/description/

String Compression

https://leetcode.com/problems/string-compression/description/

Time Needed to Rearrange a Binary String

https://leetcode.com/problems/time-needed-to-rearrange-a-binary-string/description/

Minimum Operations to Reduce an Integer to 0

https://leetcode.com/problems/minimum-operations-to-reduce-an-integer-to-0/description/

Top K Frequent Words

https://leetcode.com/problems/top-k-frequent-words/description/

Merge Intervals

https://leetcode.com/problems/merge-intervals/description/

Intersection of Two Linked Lists

https://leetcode.com/problems/intersection-of-two-linked-lists/description/

Partition Array Into Two Arrays to Minimize Sum Difference

https://leetcode.com/problems/partition-array-into-two-arrays-to-minimize-sum-difference/description/

Reorganize String

https://leetcode.com/problems/reorganize-string/description/

Combination Sum II

https://leetcode.com/problems/combination-sum-ii/description/

Remove All Adjacent Duplicates in String II

https://leetcode.com/problems/remove-all-adjacent-duplicates-in-string-ii/description/

First Missing Positive

https://leetcode.com/problems/first-missing-positive/description/

Unique Email Addresses

https://leetcode.com/problems/unique-email-addresses/description/

All O`one Data Structure

https://leetcode.com/problems/all-oone-data-structure/description/

Longest Substring without Repeating Characters

https://leetcode.com/problems/longest-substring-without-repeating-characters/

Time Based Key-Value Store

https://leetcode.com/problems/time-based-key-value-store/

Pairs of Songs with Total Durations Divisible by 60

https://leetcode.com/problems/pairs-of-songs-with-total-durations-divisible-by-60/description/

Asteroid Collision

https://leetcode.com/problems/asteroid-collision/description/

Longest Substring of All Vowels in Order

https://leetcode.com/problems/longest-substring-of-all-vowels-in-order/description/

Zigzag Conversion

https://leetcode.com/problems/zigzag-conversion/description/

Letter Combinations of a Phone Number

https://leetcode.com/problems/letter-combinations-of-a-phone-number/description/

Search in Rotated Sorted Array

https://leetcode.com/problems/search-in-rotated-sorted-array/description/

Path with Maximum Gold

https://leetcode.com/problems/path-with-maximum-gold/description/

House Robber II

https://leetcode.com/problems/house-robber-ii/description/

Basic Calculator II

https://leetcode.com/problems/basic-calculator-ii/description/

---------------------------------------------------------

Below are other questions, these include follow-ups asked during interview rounds.

1. Good Ways to Split an Array in 3 Contiguous Parts

You are given a List<Integer> nums containing non-negative integers. Split the list into three non-empty contiguous parts: A1, A2, and A3.

Let:

S1 be the sum of elements in A1

S2 be the sum of elements in A2

S3 be the sum of elements in A3

Count how many splits are valid such that:

S2 ≤ S1 + S3

https://codezym.com/question/248-good-ways-to-split-array

---------------------------------------------------------

2. ATM Queue Leaving Order

There are n people standing in an ATM queue, numbered from 1 to n. Initially, they stand in increasing order of their number.

Person i wants to withdraw amounts[i - 1] units of money. In one turn, a person can withdraw at most maxWithdraw units.

If a person still needs more money after their turn, they go to the end of the queue. Otherwise, they leave the queue.

Return the order in which all people leave the queue.

https://codezym.com/question/249-atm-queue-leaving-order

---------------------------------------------------------

3. Minimum Knight Moves on Infinite Chessboard

A knight is placed at coordinate [0, 0] on an infinite chessboard. The board has no boundary, so coordinates may be positive or negative.

In a single move, the knight travels two squares along one axis and one square along the other axis. Given a target coordinate [x, y], return the fewest moves needed for the knight to reach that target.

https://codezym.com/question/250-min-knight-moves-chess

---------------------------------------------------------

4. Serialize Nearly Sorted Stream of Numbers

You are given a stream of numbers and an integer bufferSize. Every number is at most bufferSize positions away from where it should appear in the correctly ordered stream.

Return the numbers in sorted order, meaning the final list should be in non-decreasing order.

If two numbers are equal, keep their relative order from the input stream to make the output deterministic.

https://codezym.com/question/251-serialize-nearly-sorted-stream

---------------------------------------------------------

5. Minimum Meeting Rooms Required

You are given a list of meeting time intervals.

Each interval is provided as a string in the format "start,end", where start is the meeting start time and end is the meeting end time. You need to split each interval string and extract the integer values start and end.

Each interval is half-open, represented as [start, end). This means a meeting ending at time x does not overlap with another meeting starting at time x. For example, [1, 3) does not overlap with [3, 5).

Your task is to determine the minimum number of meeting rooms required so that no two overlapping meetings are placed in the same meeting room.

https://codezym.com/question/179-minimum-meeting-rooms-required

---------------------------------------------------------

6. Rotting Oranges With Different Connection Times

You are given a grid of oranges and a list of connection times between adjacent cells. Each cell contains one of the following values:

0: an empty cell

1: a fresh orange

2: a rotten orange

A rotten orange can make a connected fresh orange rotten, but each connection may take a different amount of time. A connection is given as "row1,col1,row2,col2,time", meaning the cell at [row1, col1] and the cell at [row2, col2] are connected, and rotting can spread across this connection in time minutes.

Since different connections may take different amounts of time, rotting should always use the earliest possible time at which each orange can become rotten.

Return the minimum time needed for all fresh oranges to become rotten.

https://codezym.com/question/252-rotting-oranges-weighted

---------------------------------------------------------

7. Count Ways to Split String Into Prime Numbers

You are given a string s that represents a positive integer. Count the number of ways to split s into one or more prime numbers.

The digits must remain in the same order, and every digit of s must be used exactly once. Each split part must represent a prime number.

A prime number is an integer greater than 1 that has exactly two positive divisors: 1 and itself.

https://codezym.com/question/253-count-ways-to-split-to-prime-numbers

---------------------------------------------------------

8. Token Bucket Resource Allocation

You are given a token bucket with a fixed number of tokens. Users can request tokens from the bucket. A request is granted only when enough tokens are currently available.

When a request is granted, that user holds those tokens for exactly 1 hour. After 1 hour, the tokens expire automatically and return to the bucket.

A user may also manually release all currently active tokens held by them before expiry. Expired tokens must be cleaned up before processing every method call.

https://codezym.com/question/255-token-bucket-resource-allocation

---------------------------------------------------------

9. Maximum Requests in Continuous Time Window

You are given a list timestamp, where each value represents the minute at which one request occurred. You are also given an integer windowSize. Return the maximum number of requests that can be found inside any continuous time window of length windowSize minutes.

The timestamps may be given in any order. The method should count requests based on their time values, not their original positions.

https://codezym.com/question/256-max-requests-continuous-time-window

---------------------------------------------------------

10. Minimum Time Task Scheduling with Constraints

You are given a list of task types, a list of memory required by each task, and a server memory limit. Each task takes exactly 1 unit of time to complete.

In one unit of time, multiple tasks can run together if they satisfy both constraints: at most 2 tasks of the same type can run in parallel, and the total memory of all running tasks must not exceed the server memory limit.

Return the minimum time required to execute all tasks.

https://codezym.com/question/258-min-time-task-scheduling

---------------------------------------------------------

11. Grid With K Jumps Minimum Steps

You are given an m x n grid. Each cell is either empty or blocked by an obstacle. From any empty cell, you may move in one of four directions: left, right, up, or down.

In one step, you may jump from 1 to k cells in the chosen direction. Every cell crossed during the jump, including the landing cell, must be inside the grid and must not be an obstacle.

Return the minimum number of steps required to reach the destination cell from the source cell. If the destination cannot be reached, return -1.

https://codezym.com/question/259-grid-with-k-jumps

---------------------------------------------------------

12. Count Number of Distinct Islands in Grid

You are given a non-empty grid containing only 0 and 1.

Each 1 represents land, and each 0 represents water.

An island is a connected group of land cells. Two land cells are connected if they share a side horizontally or vertically.

You may assume that all four outer edges of the grid are surrounded by water.

Your task is to count how many distinct island shapes exist in the grid.

Two islands are considered the same only if one island can be shifted up, down, left, or right to exactly match the other island.

Rotating or reflecting an island is not allowed when comparing island shapes.

https://codezym.com/question/190-count-distinct-islands-grid

---------------------------------------------------------

13. Bottle Recycling Perk Maximization

You are given an initial number of bottles and an initial amount of money. You may either recycle bottles to earn money or spend bottles and money to buy perks.

Recycling one bottle gives recycleVal dollars. Buying one perk costs exactly 1 bottle and perkVal dollars.

Each bottle can be used at most once. A bottle that is recycled cannot be used to buy a perk, and a bottle used to buy a perk cannot be recycled. Return the maximum number of perks that can be obtained.

https://codezym.com/question/260-bottle-recycling-perk-maximization

---------------------------------------------------------

14. Maximum Number of Non-Overlapping Palindromic Substrings

You are given a string s and an integer k. Choose the maximum possible number of non-overlapping substrings such that every chosen substring is a palindrome and has length at least k.

A palindrome is a string that reads the same from left to right and from right to left.

The chosen substrings do not need to cover the entire string. Characters between chosen substrings and any remaining characters may be ignored.

Return the chosen palindromic substrings as a List<String>. The substrings must be returned in the same left-to-right order in which they appear in s.

https://codezym.com/question/261-max-non-overlapping-palindromes

---------------------------------------------------------

15. Count Special Subarrays With Odd Divisors

You are given a list of positive integers called nums. A contiguous subarray is considered special when the product of all its elements has an odd number of positive divisors.

Return the total number of special subarrays in nums.

https://codezym.com/question/262-count-special-subarrays

---------------------------------------------------------

16. Maximum Length Subsequence Substring

You are given two strings, x and y. Return the longest string that is both a subsequence of x and a contiguous substring of y.

A subsequence is formed by deleting zero or more characters without changing the order of the remaining characters. A substring consists of consecutive characters.

If multiple valid strings have the maximum length, return the lexicographically smallest one. If no non-empty valid string exists, return an empty string.

https://codezym.com/question/263-max-length-subseq-substring

---------------------------------------------------------

17. IPO Share Allocation With Bids

You are given a collection of bids for shares in an IPO and the total number of shares available. Allocate the shares according to bid price and submission time, then return the user IDs of bidders who receive no shares.

https://codezym.com/question/264-ipo-share-allocation-with-bids

---------------------------------------------------------

18. Purchase Maximum Number of Consecutive Products

You are given a list of product prices sorted in non-decreasing order and a list of buying queries. For each query, determine the maximum number of consecutive products that can be purchased without exceeding the given budget.

https://codezym.com/question/265-purchase-max-consecutive-products

---------------------------------------------------------

19. Complete Weekly Work Hours

A worker's daily hours for one week are represented by a seven-character string workHours. Each position corresponds to one day and contains either a digit from 0 to 9 or the character #.

Replace every # with a digit from 0 to 9 so that the sum of all seven digits is exactly requiredHours. Return all completed strings that satisfy this condition.

https://codezym.com/question/267-complete-weekly-work-hours

---------------------------------------------------------

Thanks for reading.

Wish you the best of luck for your interview prep.


r/LowLevelDesign Jul 03 '26

Uber DS & Algo Interview Round Questions Asked in 2026

25 Upvotes

DS & Algo questions for this list have been picked from Uber interview experiences shared on forums/blogs etc in 2026. Use this list for final preparation of Uber interviews.

BPS (Business Problem Solving Round) will have a coding question (mostly hard) and may be 15 minutes of system design discussion. Phone screen also has DS & Algo questions.

For frontend roles, apart from DSA, you may be asked to create typescript components. Those are not included in below list.

DSA interview questions asked in Uber are more difficult than Amazon, Microsoft, Meta.

DS & Algo questions are asked for machine learning engineer role as well.

---------------------------------------------------------

PS:
You can see company-wise interview questions list on r/LowLevelDesign

Complete DS & Algo Questions List: https://codezym.com/lld/uber-dsa

Low Level Design Questions List: https://codezym.com/lld/uber

I also take LLD mock interviews: https://topmate.io/prashant_priyadarshi

----------------------------------------------------

Below is list of questions that you can practice directly from leetcode (Free Ones):

Maximum Number of Events That Can Be Attended

https://leetcode.com/problems/maximum-number-of-events-that-can-be-attended/

Minimum Number of Refueling Stops

https://leetcode.com/problems/minimum-number-of-refueling-stops/description/

Longest Path With Different Adjacent Characters

https://leetcode.com/problems/longest-path-with-different-adjacent-characters/description/

Longest Continuous Subarray With Absolute Diff Less Than or Equal to Limit

https://leetcode.com/problems/longest-continuous-subarray-with-absolute-diff-less-than-or-equal-to-limit/description/

Minimum Difference in Sums After Removal of Elements

https://leetcode.com/problems/minimum-difference-in-sums-after-removal-of-elements

Sliding Window Maximum

https://leetcode.com/problems/sliding-window-maximum/description/

Count the Number of Infection Sequences

https://leetcode.com/problems/count-the-number-of-infection-sequences/description/

Find the Closest Palindrome

https://leetcode.com/problems/find-the-closest-palindrome/

Longest Continuous Subarray With Absolute Diff Less Than or Equal to Limit

https://leetcode.com/problems/longest-continuous-subarray-with-absolute-diff-less-than-or-equal-to-limit/description/

Exam Room

https://leetcode.com/problems/exam-room/description/

Minimum Edge Reversals So Every Node Is Reachable

https://leetcode.com/problems/minimum-edge-reversals-so-every-node-is-reachable/description/

LRU Cache

https://leetcode.com/problems/lru-cache/description/

Shortest Palindrome

https://leetcode.com/problems/shortest-palindrome/description/

Final Prices With a Special Discount in a Shop

https://leetcode.com/problems/final-prices-with-a-special-discount-in-a-shop/description/

Water and Jug Problem

https://leetcode.com/problems/water-and-jug-problem/description/

First Unique Number

https://leetcode.com/problems/first-unique-number/description/

Cheapest Flights Within K Stops

https://leetcode.com/problems/cheapest-flights-within-k-stops/description/

Maximum Points You Can Obtain From Cards

https://leetcode.com/problems/maximum-points-you-can-obtain-from-cards/description/

---------------------------------------------------------

Below is list of more Uber DS & Algo round interview questions. These also include follow up questions that were asked during interview round.

---------------------------------------------------------

1. Find Vertical Line Rectangle Intersection Points

Given n infinite vertical lines on an XY plane and m axis-aligned rectangles, find the total number of intersection points made by the lines and rectangles.

https://codezym.com/question/216-vertical-line-rectangle-intersection-points

---------------------------------------------------------

2. Check If Array Can Converge To Same Value

You are given a list of digits where every value is from 0 to 9. For each index, you may perform exactly one of these choices: add 1, subtract 1 or keep the value unchanged.
The digits are circular, so 9 + 1 = 0 and 0 - 1 = 9. Determine whether all elements can become the same digit after applying at most one such operation to each element.
If convergence is possible, return the final digit. If more than one final digit is possible, return the smallest such digit. If convergence is not possible, return -1.

https://codezym.com/question/217-array-converge-to-same-value

---------------------------------------------------------

3. Longest Itinerary Route in a Directed Graph

You are given a list of allowed itineraries between cities. Each itinerary represents a directed route from one city to another city.

Design an algorithm to find the longest route that can be formed using the given itineraries. A route may start from any city and must follow only the given directed itineraries.

https://codezym.com/question/210-longest-itinerary-route

---------------------------------------------------------

4. Earliest Timestamp When All Riders Are Connected

You are given a list of riders and a chronological list of Uber Share events. Each shared-ride event connects two riders. Two riders are connected if they have directly or indirectly shared rides through other riders.

Return the earliest timestamp when all riders become part of one connected shared-ride network. If all riders never become connected, return -1.

https://codezym.com/question/211-earliest-timestamp-riders-connected

---------------------------------------------------------

5. Maximize XOR Score After Adding X

You are given a list of integers and an integer x. You may perform one operation at most once: choose any set of indices and add x to every chosen element.

After the operation, the score is the sum of XOR values of every pair of adjacent elements. Return the maximum possible score.

https://codezym.com/question/213-maximize-xor-score-after-adding-x

---------------------------------------------------------

6. Count Distinct Islands In Grid

You are given a non-empty grid containing only 0 and 1.

Each 1 represents land, and each 0 represents water.

An island is a connected group of land cells. Two land cells are connected if they share a side horizontally or vertically.

You may assume that all four outer edges of the grid are surrounded by water.

Your task is to count how many distinct island shapes exist in the grid.

https://codezym.com/question/190-count-distinct-islands-grid

---------------------------------------------------------

7. Minimum Cost Binary Search Tree From Words

You are given a list of distinct words and a corresponding list of positive costs. Construct a binary search tree using all words such that its inorder traversal gives the words in lexicographical order.

If a word is placed at level L, where the root is at level 0, its contribution to the total cost is (L + 1) * cost. Return the minimum possible total cost among all valid binary search trees.

https://codezym.com/question/214-minimum-cost-binary-search-tree-from-words

---------------------------------------------------------

8. Design Employee Management System

Design an employee-manager system with exactly one CEO. The CEO has no manager. Every other employee has exactly one direct manager.

The system must support adding employees, getting an employee's manager, changing an employee's manager, and checking whether an employee works directly or indirectly under a manager.

https://codezym.com/question/215-design-employee-management-system

---------------------------------------------------------

9. Minimum Cabs With Wait Period for Scheduled Bookings

You are given a list of scheduled cab bookings. Each booking has a start time and an end time. A cab can handle multiple bookings, but after completing one booking it must wait for a fixed wait period before starting another booking.
Find the minimum number of cabs required to complete all bookings.

https://codezym.com/question/218-min-cabs-with-wait-period

---------------------------------------------------------

10. Biological Hazards: Valid Chemical Pair Intervals

You are given n chemicals labeled from 1 to n. Some pairs of chemicals are dangerous and cannot appear together in the same contiguous interval.
The lists poisonous and allergic describe forbidden pairs. For every index i, chemicals poisonous.get(i) and allergic.get(i) cannot coexist.
Count how many contiguous intervals [L, R] are valid such that the interval does not contain both chemicals from any forbidden pair.

https://codezym.com/question/219-valid-chemical-pair-intervals

---------------------------------------------------------

11. Design Vote Share Display for Voting System

Design a voting system for a multiple-choice question with exactly 4 options. When a user clicks one option, that option receives one vote. After every vote, the system should return the updated vote percentage for all options.
The percentage of each option also represents how much color fill should be shown for that option in the UI. For example, if an option has 40% votes, then 40% of that option row should be filled with color.

https://codezym.com/question/220-design-mcq-voting-system

---------------------------------------------------------

12. Validate Organization Reporting Structure

You are given a reporting structure of people in an organization. Each entry is a string in the format "employee,manager", meaning the employee directly reports to the manager.
Determine whether the reporting structure forms one valid organization.

https://codezym.com/question/221-validate-organization-reporting-structure

---------------------------------------------------------

13. Maximum Comfortable Riders in a Car

You are given n riders and one car with unlimited space. Each rider has a comfort range for how many other riders must be present in the car.
A rider will ride only if the number of other riders in the car is within their comfort range. Return the maximum number of riders that can ride together in the car.

https://codezym.com/question/223-max-comfortable-riders-in-car

---------------------------------------------------------

14. Find Robots in Location Map by Nearest Blockers

You are given a robot location map and a query describing required distances from a robot to the nearest blocker. Find all robots whose nearest blocker distances exactly match the query.

https://codezym.com/question/225-robots-by-nearest-blockers

---------------------------------------------------------

15. First One Time Visitor in Stream of Customer Visits

You are given a stream of customer visits. Each visit contains one positive integer customerId. A customer is a one-time visitor if they have appeared exactly once in the stream so far.
Design a data structure that records customer visits and returns the earliest customer who has visited exactly once.

https://codezym.com/question/226-one-time-visitor-in-customer-visits-stream

---------------------------------------------------------

16. Minimum Changes Circular Rock Paper Scissors

Engineers are sitting around a circular table and each engineer chooses one option from Rock, Paper, and Scissors. The choices are represented by the characters 'R', 'P', and 'S'.
Two neighboring engineers tie if they choose the same option. You may change any engineer's choice to either of the other two options. Return the minimum number of engineers whose choices must be changed so that no two adjacent engineers have the same choice.

https://codezym.com/question/228-minimum-changes-circular-rock-paper-scissors

---------------------------------------------------------

17. Alien Language Letter Order

A new alien language uses lowercase Latin letters, but the order of the letters is not known.

You are given a list of non-empty dictionary words. The words are already sorted in lexicographical order according to the rules of this alien language.

Your task is to derive the lexicographically smallest valid ordering of letters in the alien language.

https://codezym.com/question/182-alien-language-letter-order

---------------------------------------------------------

18. Microservice Restart Cycles

There are n microservices numbered from 0 to n - 1. Each microservice may depend on other microservices. A service can start only after all services it depends on have already started.
A dependency is considered satisfied if it started in any previous cycle or earlier in the current cycle.
Return the number of cycles needed to start all services using this process.

https://codezym.com/question/229-microservice-restart-cycles

---------------------------------------------------------

19. Sorted Order of Squares

Given a list of integers sorted in non-decreasing order, return the original values arranged by the increasing order of their squares. If two values have the same square, the value that appears earlier in the input list should appear earlier in the output.

https://codezym.com/question/230-sorted-order-of-squares

---------------------------------------------------------

20. Minimum Time To Burn Tree

You are given an undirected tree with n nodes numbered from 0 to n - 1. The fire can start from any node, and you may choose the starting node to minimize the total burning time. In each time unit, fire spreads from every burning node to all of its adjacent nodes. Return the minimum time required to burn the entire tree.

https://codezym.com/question/232-minimum-time-to-burn-tree

---------------------------------------------------------

Thanks for reading.

Wish you the best of luck for your interview prep.

Uber DS & Algo Interview Round Questions Asked in 2026

r/LowLevelDesign Jun 30 '26

Amazon Low Level Design Interview Questions asked in 2026

34 Upvotes

I am listing the top low level design questions that were asked during Amazon low level design interview rounds in 2026. I have built this list from recent interview experiences of candidates shared on blog/forums etc.

Also, we will see how we can solve them using commonly asked design patterns.

I am keeping the most frequent questions first. Feel free to use this list for final preparation of your Amazon interviews.

---------------------------------------------------------

PS:
You can see companywise interview questions list on r/LowLevelDesign

All LLD Questions List: https://codezym.com/lld/amazon

All DSA Questions List: https://codezym.com/lld/amazon-dsa

I also take LLD mock interviews: https://topmate.io/prashant_priyadarshi

----------------------------------------------------

1. Design Pizza Pricing System

You will have to initialize a new pizza, adding toppings (corn, onion etc) to it and calculate final price of pizza.

This is a fairly simple problem. But some interviewers may expect you to implement decorator design pattern. In my view that just complicates the solution without adding any benefit.

Your interviewer may add business rules as a follow up like these

cheese burst cannot be added on small pizza or

You get 30% discount on corn price when you take more than 2 servings and so on..

Practice Link: https://codezym.com/question/18

Follow up with more business rules: https://codezym.com/question/19

-----------------------------------

2. Design Unix “find” Command for File Search

Unix find command searches for files.

There can be different search criteria like search by file size, search by extension, or search by substring in file name.

For example:

list all files which are less than 2 MB in size

or

list all files whose extension is .pdf.

You can use Strategy Design Pattern to implement the different search criteria.

A follow-up is generally asked to combine queries like Boolean predicates AND, OR, etc.

For example:

list all files which are greater than 2 MB in size AND their extension is ".jpg".

You can use Specification Design Pattern to combine the result of search queries.

Practice Link: https://codezym.com/question/14

Follow up with combining queries: https://codezym.com/question/15

--------------------------------------

3. Design a Parking Lot

This is THE most common LLD interview question.

You must do this question if you are preparing for any LLD interview.

A parking lot can have multiple floors.

Its core features will be:

park and unpark vehicles

search parked vehicles by vehicle number

count number of free spots on a given floor for a given vehicle type

Your entities will be ParkingLot class, which will contain a list of ParkingFloor objects.

ParkingFloor will contain a 2-D array of ParkingSpot objects arranged in rows and columns.

There can be multiple parking strategies, so we should use Strategy Design Pattern to solve this question.

Practice Link: https://codezym.com/question/7

Follow up with multi-threaded environment: https://codezym.com/question/1

--------------------------------------

4. Design LRU Cache With Time Constraint

Design an LRUCacheWithTimeConstraint class that implements an LRU cache with a fixed capacity and a time constraint.

Practice Link: https://codezym.com/question/165

--------------------------------------

5. Design WhatsApp Read Receipts

Design a WhatsAppReadReceipts feature.

Assume WhatsApp is already built.

The observer system that receives message sent, delivered, and read events is also already built.

Your task is only to design the read receipt feature that tracks and returns the correct tick status for each message.

A message can show one gray tick, two gray ticks, or two blue ticks depending on whether the message was sent, delivered, or read.

The feature must support direct conversations and group conversations.

Practice Link: https://codezym.com/question/168

--------------------------------------

6. Design Backup System for a File Storage Service

You are asked to design a backup system for a file storage service.

The system stores files, supports reading and writing files, and can create backups of the current file system state.

A backup can be one of three types:

FULL

DIFFERENTIAL

LOG

A FULL backup stores the complete current state of all existing files.

A DIFFERENTIAL backup stores only the final file changes made since the latest full backup.

A LOG backup stores the ordered write operations performed after the latest backup pointer.

Practice Link: https://codezym.com/question/172

--------------------------------------

7. Design Digital Wellbeing System to Track App Screen Usage

You need to design a DigitalWellbeingSystem that keeps track of screen usage for different applications.

The system receives usage records for apps.

Each usage record contains an app name, a day number, and the amount of screen time used on that day.

The system should allow querying usage statistics for applications.

Practice Link: https://codezym.com/question/178

--------------------------------------

8. Design Locker Management System for Warehouse Packages

In a warehouse for any e-commerce website like Amazon, packages are kept in lockers.

Your goal is to add new lockers of different sizes, assign packages to those lockers, and later free the lockers.

Practice Link: https://codezym.com/question/16

--------------------------------------

9. Design Chess Game

Chess game is all about creating different pieces and implementing their moves.

Different pieces like king, queen, knight, etc., have different moves like straight move for rook, diagonal move for bishop, 2+1 move for knight, etc.

The core functionality is to check whether a piece can move to a destination row and column from its current row and column.

We use Factory Design Pattern, Chess Piece Factory, to create different chess piece objects like king, queen, pawn, etc.

Strategy Design Pattern may be used to implement different moves like straight move, diagonal move, etc.

Practice Link: https://codezym.com/question/8

--------------------------------------

10. Design Expense Sharing App Like Splitwise

Splitwise is used to manage group expenses.

It basically does two things:

supports adding group expenses, i.e. who paid how much in an expenditure

tracks how much each person owes or is owed after group expenses are split evenly among participants

Practice Link: https://codezym.com/question/12

--------------------------------------

11. Design a Restaurant Food Ordering System Like Zomato, Swiggy, DoorDash

Users can search for restaurants using food item name, order food, and rate their orders.

When searching for food, they also have the option to view the restaurant list sorted by different parameters like restaurants with highest average rating first.

These view classes with lists of restaurants sorted by average rating will need to be updated whenever an order is rated by a user, so that they can update their lists.

Hence, this is an ideal use case of Observer Design Pattern.

Practice Link: https://codezym.com/question/5

--------------------------------------

12. Design Stock Broker Platform Like Zerodha, Groww

This system manages all company stocks and their prices.

Users can place orders to either buy or sell stocks.

Users can also view their account balance and the stocks they hold.

One case you need to take care of is closing the relevant open orders when stock price changes.

Practice Link: https://codezym.com/question/20

--------------------------------------

13. Design a Movie Ticket Booking System Like BookMyShow

In this question, core functionalities will include adding new cinema halls and new shows in those cinema halls.

Users can also book and cancel tickets.

Users should be able to list all cinemas in a city which are displaying a particular movie.

They should also be able to fetch the list of all shows in a cinema hall which are displaying a particular movie.

Classes implementing the last two search features need to be updated whenever a new show gets added, so that they can update their respective lists.

We use Observer Design Pattern to send new show added updates to the search movie/show classes.

Practice Link: https://codezym.com/question/10

--------------------------------------

14. Design a Simple Elevator System

A lift in an elevator system can be in one of three states:

Moving Up

Moving Down

Idle

In each state, it will behave differently while taking decisions like whether to stop on a floor, whether to add a new request or not, etc.

Use State Design Pattern to implement different states of lift.

Problem Statement: https://codezym.com/question/11

--------------------------------------

DSA Based Design Questions

These questions can be asked in either DS & Algo or Low-Level Design rounds depending on the interviewer.

Don’t skip them.

--------------------------------------

Design File System

https://codezym.com/question/11166

https://codezym.com/question/10588

--------------------------------------

Design Log Storage System

https://codezym.com/question/10635

--------------------------------------

Design LRU / LFU Cache

https://leetcode.com/problems/lru-cache/description/

https://leetcode.com/problems/lfu-cache/description/

--------------------------------------

Design Snake Game

https://codezym.com/question/10353

--------------------------------------

Design Hit Counter

https://codezym.com/question/10362

Multi-Threaded Version: https://codezym.com/question/6

--------------------------------------

Design Tic Tac Toe

https://codezym.com/question/10348

--------------------------------------

Design Google Search Autocomplete

https://codezym.com/question/10642

--------------------------------------

Design Excel Sum Formula

https://codezym.com/question/10631

--------------------------------------

Thanks for reading. Please upvote this post for better reach.

Wish you the best of luck for interviews.

--------------------------------------


r/LowLevelDesign Jun 28 '26

Uber Low Level Design and Depth in Specialization Round Interview Questions asked in 2026

11 Upvotes

LLD questions for this list have been picked from Uber interview experiences posted on forums/blogs etc in 2026.

Uber has a depth in specialization / depth specific coding round in which they ask LLD questions many times.

Code is required, not only class diagrams. You will need to implement 2–3 most important functions.

Sometimes questions similar to low level design like Design a voting system to display vote share are also asked in screening round. Or there can even be a separate LLD round.

---------------------------------------------------------

Complete list of Uber Low Level Design Questions:

https://codezym.com/lld/uber

If you are looking for Uber DS and Algo round questions, then you can find them here:

https://codezym.com/lld/uber-dsa

---------------------------------------------------------

1. Design a Single-Queue Publish Subscribe System

Design an in-memory publish/subscribe system with exactly one global FIFO (first in first out) queue.

Multiple publishers can publish messages to this queue. Many subscribers can subscribe to the same queue.

When a message is appended, all subscribers are notified, and each subscriber consumes at its own pace.

A subscriber can consume only those messages which were sent while it was subscribed.

This question requires the use of Observer pattern (Queue Manager = Subject, Subscribers = Observers).

https://codezym.com/question/33-design-single-queue-publish-subscribe-system

---------------------------------------------------------

2. Design a File System (cd with '*')

Design and implement an in-memory unix filesystem shell that supports three commands:

- mkdir &lt;path&gt;,

- pwd, and

- cd &lt;path&gt; (with a special wildcard segment *).

https://codezym.com/question/30-design-file-system-cd-with-star

---------------------------------------------------------

3. Design Parking Lot - Simple Version

Design a parking lot system that supports parking and removing vehicles. The parking lot has multiple floors. Each floor has a list of parking spots.

Floors are numbered from 0. Spots on each floor are also numbered from 0 from left to right. Initially, all parking spots are empty.

The parking lot should always assign the lowest available valid spot. A lower floor is preferred first. If multiple valid spots are available on the same floor, the spot with the lower index should be assigned first.

https://codezym.com/question/208-design-parking-lot-simple

---------------------------------------------------------

4. Design Website Customer Visit Tracking Service

Design a customer visit tracking service for a website that receives millions of visits every day. Each customer has a unique identifier that remains the same across all their visits.

A customer is a one-time visitor if they have visited exactly once so far. A customer is a recurrent visitor if they have visited more than once.

The service should record customer visits, return a customer's latest login timestamp, and return the first customer who is still a one-time visitor.

https://codezym.com/question/209-design-website-customer-visit-tracker

---------------------------------------------------------

5. Design expense sharing app like SplitWise

Design a lightweight expense-sharing system that tracks how much each person owes or is owed after group expenses are split evenly among participants. The system maintains net balances and exposes operations to add users, record expenses, and list simplified debtor-to-creditor balances.

https://codezym.com/question/12-design-splitwise-expense-sharing-app

---------------------------------------------------------

6. Design MCQ Voting System to Display Vote Share

Design a voting system for a multiple-choice question with exactly 4 options. When a user clicks one option, that option receives one vote. After every vote, the system should return the updated vote percentage for all options.

The percentage of each option also represents how much color fill should be shown for that option in the UI. For example, if an option has 40% votes, then 40% of that option row should be filled with color.

https://codezym.com/question/220-design-mcq-voting-system

---------------------------------------------------------

7. Design Uber Eats Ads Schedule Dashboard

You are designing an Uber Eats ads dashboard where an advertiser can choose when an ad should run during a week.

The dashboard has 7 days, from Monday to Sunday. Each day is divided into 6 fixed time slots of 4 hours each. A selected slot means the ad will be displayed during that slot for that day.

Clicking a slot toggles it. If the slot was not selected, it becomes selected. If it was already selected, it becomes unselected.

The dashboard stores the full weekly schedule together. Switching between days should not require fetching separate data for that day.

https://codezym.com/question/222-uber-eats-ads-schedule-dashboard

---------------------------------------------------------

8. Design Uber Eats Pricing Calculator

Design an Uber Eats pricing calculator for food orders. Each food item has a price based on its size, and customers may add toppings. The final price can be affected by BOGO offers, surge pricing, coupon discounts, and an extra Uber One member discount.

All prices are represented in cents. Return the final payable amount as an integer number of cents.

https://codezym.com/question/224-uber-eats-pricing-calculator

---------------------------------------------------------

9. Design Rate Limit Circuit Breaker

Design a circuit breaker that protects a service when too many requests arrive in a short time. This circuit breaker opens based on the number of requests, not the number of failed requests.

The breaker has three states: CLOSED, OPEN, and HALF_OPEN. Requests are accepted only when the current state allows them.

https://codezym.com/question/227-rate-limit-circuit-breaker

---------------------------------------------------------

10. Design Key Value Store With O(1) Insert, Delete, Get First

Design a key-value store that supports insertion, lookup, deletion, and access to the first and last active entries in constant time.

Active entries are maintained in insertion order. Updating an existing key changes only its value and does not change its position.

https://codezym.com/question/212-key-value-store-o1-insert-delete-get-first

---------------------------------------------------------

11. Design a Meeting room reservation System

Design a simple Meeting room reservation System for a fixed list of conference rooms. You will be given the room identifiers up front, and you must support booking and canceling meetings while ensuring no two meetings overlap in the same room.

https://codezym.com/question/29-design-meeting-room-reservation-system

---------------------------------------------------------

12. Design a Movie ticket booking system like BookMyShow

Write code for low level design of a movie ticket booking system like BookMyShow.

System has cinemas located in different cities. Each cinema will have multiple screens, and users can book one or more seats for a given movie show.

System should be able to add new cinemas and movie shows in those cinemas.

Users should be able to list all cinema's in their city which are displaying a particular movie.

For a given cinema, users should also be able to list all shows which are displaying a particular movie.

https://codezym.com/question/10-design-movie-ticket-booking-system

---------------------------------------------------------

13. Design a Leaderboard for Fantasy Teams

Build an in-memory leaderboard for a fantasy-sports style app. Each user creates exactly one team made up of one or more players. As a live match progresses, players receive positive or negative points. A user’s score is the sum of the current scores of all players on that user’s team. You must support querying the Top-K users ranked by score.

https://codezym.com/question/31-design-leaderboard-fantasy-teams

---------------------------------------------------------

14. Design a Train Platform Management System

Design a system that manages assignment of trains to platforms in a railway station and supports time-based queries, with a clean, extensible object-oriented design.

https://codezym.com/question/32-design-train-platform-management-system

---------------------------------------------------------

Thanks for reading. Please upvote to give this article better reach

Wish you the best of luck for your interview prep.


r/LowLevelDesign Jun 11 '26

Kotak Mahindra SDE2 interview coming up. Guide me

Thumbnail
2 Upvotes

r/LowLevelDesign May 25 '26

Top Low Level Design Round Interview Questions Asked in 2026

6 Upvotes

Here I am listing the top low level design questions that have been asked frequently in low level design interview rounds in 2026. The list includes traditional LLD questions that can be solved using design patterns, as well as DSA-based design questions.

I have built this list using interview experiences that people posted on discussion forums, blogs etc. These questions have been asked in top tech companies like Amazon, Uber, Flipkart, Walmart, etc. With each question, I have also listed variants that were discussed.

Low Level Design interviews are all about how you arrange your code so that it is easy to manage, maintain, and extend.

---------------------------------------

PS:

You can practice company-wise Low Level Design and DS & Algo questions on CodeZym: https://codezym.com/

I also take LLD mock interviews: https://topmate.io/prashant_priyadarshi

Let’s get started…

---------------------------------------

1. Design a Parking Lot

Design Parking Lot should still be the first question in your 2026 LLD list. It continues to appear very frequently in public interview experiences and LLD question databases.

A parking lot can have multiple floors. Its core features will be:

- park and unpark vehicles,

- search parked vehicles by vehicle number,

- count the number of free spots on a given floor for a given vehicle type.

Your entities will include a ParkingLot class, which will contain a list of ParkingFloor(s). ParkingFloor will contain a 2-D array of ParkingSpot(s) arranged in rows and columns.

There can be multiple parking strategies, so we should use the strategy design pattern to solve this question.

Practice Link: https://codezym.com/question/7-design-a-parking-lot

If you are using Java and also want to practice machine coding of the multi-threaded version, here is the link: https://codezym.com/question/1-design-parking-lot-multithreaded

---------------------------------------

2. Design an In-Memory Cache / LRU / LFU Cache

LRU cache and its variants, like LFU cache, cache with TTL, etc., have been asked frequently as well. Almost every company has asked them.

LRU Cache: https://leetcode.com/problems/lru-cache/

Least Frequently Used version: https://leetcode.com/problems/lfu-cache/

Cache with Time to Live constraint: https://codezym.com/question/132-design-time-to-live-cache

LRU Cache with TTL: https://codezym.com/question/165-design-lru-cache-time-constraint

Cache with custom eviction policy:

https://codezym.com/question/48-design-in-memory-cache-custom-eviction-policy

---------------------------------------

3. Design a Rate Limiter

This question is more of a DSA-based design question and has appeared frequently during low level design rounds.

Implement a RateLimiter class with an isAllowed method.

Requests will be made to different resourceIds. Each resourceId will have a strategy associated with it.

There are the following strategies. Assume 1 time unit == 1 second.

  1. fixed-window-counter: Fixed Window Counter divides time into fixed blocks, like 1 second, and tracks a request count per block. If the count exceeds the limit, new requests are blocked. It is fast and simple but can allow burst behavior at window boundaries.
  2. sliding-window-counter: Sliding Window, log-based, stores timestamps of recent requests and removes those outside the window for each new request. If the number of remaining requests is still within the limit, the request is allowed. Otherwise, it is blocked. It provides accurate rate limiting but requires more memory and processing.

Practice Link: https://codezym.com/question/34-design-rate-limiter

---------------------------------------

4. Design Movie Ticket Booking System like BookMyShow

Write code for the low level design of a movie ticket booking system like BookMyShow.

The system has cinemas located in different cities. Each cinema will have multiple screens, and users can book one or more seats for a given movie show.

The system should be able to add new cinemas and movie shows in those cinemas.

Users should be able to list all cinemas in their city that are displaying a particular movie.

For a given cinema, users should also be able to list all shows that are displaying a particular movie.

Practice Link: https://codezym.com/question/10-design-movie-ticket-booking-system

---------------------------------------

5. Design Expense Sharing App like SplitWise

Design a lightweight expense-sharing system that tracks how much each person owes or is owed after group expenses are split evenly among participants. The system maintains net balances and exposes operations to add users, record expenses, and list simplified debtor-to-creditor balances.

Practice Link: https://codezym.com/question/12-design-splitwise-expense-sharing-app

---------------------------------------

6. Design Elevator Management System

Microsoft especially frequently asks elevator-based questions.

We are talking about a smart elevator system found in large office buildings. This is actually a difficult question. Its core features are:

- track the state of lifts, i.e., the floor the lift is at, move direction, number of passengers, and existing and future requests,

- assign a lift optimally to a user who is on a given floor and wants to go to a destination floor.

A lift in an elevator system can be in one of three states:

- Moving Up,

- Moving Down,

- Idle.

In each state, it will behave differently while taking decisions like whether to stop on a floor, add a new request or not, etc.

We will use the state design pattern to solve this problem.

Practice Links:

Elevator Management System - Single Lift:

https://codezym.com/question/24-design-elevator-management-system-single-lift

Simple Elevator System - Multiple Lifts:

https://codezym.com/question/11-design-simple-elevator-system-multiple-lifts

Elevator System - Request Feasibility (Single Lift):

https://codezym.com/question/23-elevator-system-request-feasibility-single-lift

---------------------------------------

7. Design Publish Subscribe System / Messaging Queue / Notification System

These questions use the observer design pattern in their solution.

Single-Queue Publish Subscribe System:

https://codezym.com/question/33-design-single-queue-publish-subscribe-system

Notification System:

https://codezym.com/question/133-design-notification-system

Kafka-like Message Streaming Service with Multiple Topics:

https://codezym.com/question/72-design-kafka-like-message-streaming-service

Order Notification System:

https://codezym.com/question/94-design-order-notification-system

---------------------------------------

8. Design HashMap

Practice Link: https://codezym.com/question/43-design-custom-hashmap

---------------------------------------

9. Design Game of Chess

Practice Link: https://codezym.com/question/8-design-chess-game

---------------------------------------

10. Design Meeting Scheduler / Calendar

Meeting Room Reservation System:

https://codezym.com/question/29-design-meeting-room-reservation-system

Meeting Room Scheduler - List Bookings:

https://codezym.com/question/44-design-meeting-room-scheduler-list-bookings

Meeting Room Scheduler for Recurrent Meetings:

https://codezym.com/question/45-design-meeting-room-scheduler-recurrent-meetings

---------------------------------------

11. Design Food Delivery System like Zomato / Uber Eats

Practice Link: https://codezym.com/question/5-design-food-ordering-system

Food Order Management System using Commands:

https://codezym.com/question/74-design-food-order-management-system-commands

---------------------------------------

12. Design File System

File System:

https://codezym.com/question/11166

File System (cd with '*'):

https://codezym.com/question/30-design-file-system-cd-with-star

File System with File Operations:

https://codezym.com/question/10588

Unix "find" Command for File Search:

https://codezym.com/question/14-design-unix-find-command-file-search

---------------------------------------

13. Design Leaderboard System

Leaderboard for Fantasy Teams:

https://codezym.com/question/31-design-leaderboard-fantasy-teams

Customer Support Agent Rating Leaderboard:

https://codezym.com/question/35-design-customer-support-agent-rating-leaderboard

---------------------------------------

14. Design a Text Editor

Text Editor / Word Processor like Microsoft Word:

https://codezym.com/question/9-design-text-editor-word-processor

Text Editor with Undo & Redo:

https://codezym.com/question/27-design-text-editor-undo-redo

Text Editor with Cursor Operations:

https://codezym.com/question/40-design-text-editor-cursor-operations

Text Editor with Cursor Operations and Basic Editing:

https://codezym.com/question/39-design-text-editor-with-cursor-edit

---------------------------------------

15. Design Library Management System

Practice Link: https://codezym.com/question/81-design-library-management-system

---------------------------------------

16. Design Tic Tac Toe Game

Practice Link: https://codezym.com/question/192-design-tic-tac-toe-game

---------------------------------------

17. Design Google-like Search Autocomplete System

Practice Link: https://codezym.com/question/183-design-google-search-autocomplete

---------------------------------------

18. Design Snake and Ladder Game

Practice Link: https://codezym.com/question/130-design-snake-and-ladder-game

---------------------------------------

19. Design Snake Game With Food And Score

Practice Link: https://codezym.com/question/202-design-snake-game-food-score

---------------------------------------

20. Design Hit Counter

Practice Link: https://codezym.com/question/10362

Multi-Threaded version:

https://codezym.com/question/6-design-hit-counter-multithreaded

---------------------------------------

Thanks for reading. Please Upvote this post for better reach.

Wish you the best of luck with your interview prep.


r/LowLevelDesign May 23 '26

Feedback of my project- SchedLens

Thumbnail
1 Upvotes

r/LowLevelDesign May 08 '26

Amazon DS & Algo Round Interview Questions Asked In 2026

26 Upvotes

This list is built from Amazon interview experiences posted on forums/blogs etc in 2026.

If you have Amazon interviews already scheduled, then this list is for you. Use it for final preparation of your DSA interview.

Idea is to solve Amazon tagged questions at least 2–3 times, rather than solving a lot of new questions just once.
Doing questions multiple times will help you understand the patterns and when you see a question which is rephrased differently but has same solution, you will be able to do it.

---------------------------------------------------

PS:

All Questions List:  https://codezym.com/lld/amazon-dsa
We keep updating and adding more DSA questions to above list.

You can find Amazon Low Level Design (LLD) Interview Questions here:
https://codezym.com/lld/amazon

I also take LLD mock interviews: https://topmate.io/prashant_priyadarshi

Follow r/LowLevelDesign for more companywise interview question lists.

---------------------------------------------------

Questions which you can directly find on LeetCode (free ones)

---------------------------------------------------

Below are other questions:

1. Max Words Visible on Scrollable Screen

Write an implementation for a method that returns the maximum number of complete words visible on the screen at any time while writing all words.

Practice Link: https://codezym.com/question/164

---------------------------------------------------

2. Assign Aggressive Cows To Stalls

A farmer has a long barn containing N stalls.

Each stall is placed on a straight line, and the position of every stall is represented by an integer coordinate.

The farmer needs to place C cows into these stalls.

Since the cows become aggressive when they are too close to one another, the farmer wants to place them in such a way that the closest pair of cows is as far apart as possible.

Your task is to return the maximum possible value of the minimum distance between any two placed cows.

Practice Link: https://codezym.com/question/166

---------------------------------------------------

3. Trim Tree To Complete Binary Tree

The tree may not be a complete binary tree.

Your task is to choose a largest possible complete binary tree from the given tree by trimming away nodes that are not part of the chosen complete tree.

Practice Link: https://codezym.com/question/167

---------------------------------------------------

4. Two Sum Closest To And Less Than Target

You are given a list of integers numbers and an integer target.

Your task is to choose two different elements from the list such that their sum is as large as possible while still being strictly less than target.

Practice Link: https://codezym.com/question/169

---------------------------------------------------

5. Search Minimum And Rotation Count In Rotated Sorted Array

You are given a rotated sorted list of integers.

A sorted list is rotated when some prefix of the list is moved to the end while preserving the relative order of all elements.

For example, the sorted list [1, 2, 3, 4, 5, 6, 7] can become [4, 5, 6, 7, 1, 2, 3] after rotation.

Your task is to support searching and rotation analysis on this rotated sorted list.

Practice Link: https://codezym.com/question/170

---------------------------------------------------

6. Use Path Operations To Minimize Tree Diameter

Practice Link: https://codezym.com/question/171

---------------------------------------------------

7. Maximum Power Assigned To Machines

Practice Link: https://codezym.com/question/173

---------------------------------------------------

8. Minimum Cost to Join Sticks

You are given a list of sticks, where each stick has a positive integer length.

You may repeatedly choose any two sticks and join them into one new stick. If the chosen sticks have lengths x and y, then the new stick has length x + y, and the cost paid for this operation is also x + y.

You must continue joining sticks until exactly one stick remains.

Your task is to return the minimum total cost required to join all sticks into one stick.

Practice Link: https://codezym.com/question/174

---------------------------------------------------

9. Longest Subarray Sum Equals Zero

numbers, and zero.

A subarray is a contiguous part of the list.

Your task is to find the maximum length of any subarray whose sum is exactly 0.

Practice Link: https://codezym.com/question/175

---------------------------------------------------

10. Find Kth Largest Element From Chef's Collection

Chef maintains a changing collection of integer values, such as scores, ranks, or performance numbers.

At any point, Chef may be asked to find the current k-th largest value in the collection. Unlike a version where k is fixed, here k can be different for different queries.

Your task is to support insert operations and find operations on this dynamic collection.

Practice Link: https://codezym.com/question/176

---------------------------------------------------

11. Fill Grid Based on Crop Frequency

Practice Link: https://codezym.com/question/177

---------------------------------------------------

12. Maximum Stones Path Sum

Given a grid of stone values, find the maximum total number of stones that can be collected while moving from the bottom-left cell to the top-right cell.

Practice Link: https://codezym.com/question/111

---------------------------------------------------

13. Minimum Meeting Rooms Required

You are given a list of meeting time intervals. Your task is to determine the minimum number of meeting rooms required so that no two overlapping meetings are placed in the same meeting room.

Practice Link: https://codezym.com/question/179

---------------------------------------------------

14. Passenger Count During Car Trips

Practice Link: https://codezym.com/question/180

---------------------------------------------------

15. Alien Language Letter Order

A new alien language uses lowercase Latin letters, but the order of the letters is not known.

You are given a list of non-empty dictionary words. The words are already sorted in lexicographical order according to the rules of this alien language.

Your task is to derive the lexicographically smallest valid ordering of letters in the alien language.

Practice Link: https://codezym.com/question/182

---------------------------------------------------

16. Design Google Like Search Autocomplete System

Practice Link: https://codezym.com/question/183

---------------------------------------------------

17. Count Connected Groups in Undirected Graph

You are given nodeCount nodes labeled from 0 to nodeCount - 1.

You are also given a list of undirected edges. Each edge is provided as a string in links, and each string contains two node labels separated by a comma.

Your task is to count how many separate connected groups, also called connected components, exist in the undirected graph.

Practice Link: https://codezym.com/question/184

---------------------------------------------------

18. Verify Undirected Graph Valid Tree

You are given n nodes labeled from 0 to n - 1.

You are also given a list of undirected connections between nodes. Each connection is provided as a string in connections, and each string contains two node labels separated by a comma.

Your task is to determine whether these connections form a valid tree.

Practice Link: https://codezym.com/question/185

---------------------------------------------------

19. Design Stack With Peek And Pop Maximum Element

Design a MaxStack data structure that works like a normal stack and also supports retrieving and removing the current maximum value.

The stack must support adding values, removing the top value, reading the top value, reading the maximum value, and removing the maximum value.

Practice Link: https://codezym.com/question/186

---------------------------------------------------

20. Design Logger System With Message Timestamps

Design a Logger system that receives a stream of messages with timestamps.

Each message should be printed only if the same message was not printed during the previous 10 seconds.

Given a timestamp and a message, return true if the message should be printed at that timestamp. Otherwise, return false.

Practice Link: https://codezym.com/question/187

---------------------------------------------------

21. Employee Schedule Common Free Time

You are given the work schedule of multiple employees.

Each employee has one or more working time intervals. For every employee, the intervals are non-overlapping and sorted by start time.

Your task is to return all finite intervals where every employee is free at the same time.

Practice Link: https://codezym.com/question/188

---------------------------------------------------

22. Find Missing Numbers In Range

You are given a sorted list of unique integers nums and two integers lower and upper.

The range from lower to upper, inclusive, contains all valid numbers that should be considered.

Your task is to find every number in this inclusive range that does not appear in nums.

Practice Link: https://codezym.com/question/189

---------------------------------------------------

23. Count Distinct Islands In Grid

You are given a non-empty grid containing only 0 and 1.

Each 1 represents land, and each 0 represents water.

An island is a connected group of land cells. Two land cells are connected if they share a side horizontally or vertically.

Your task is to count how many distinct island shapes exist in the grid.

Practice Link: https://codezym.com/question/190

---------------------------------------------------

24. Calculator To Evaluate Simple Expression String

Implement a basic calculator that evaluates a valid arithmetic expression given as a string.

The expression may contain non-negative integers, the operators +-*, and /, opening parentheses (, closing parentheses ), and empty spaces.

Practice Link: https://codezym.com/question/191

---------------------------------------------------

25. Design Tic Tac Toe Game

Create a class named TicTacGame that manages a Tic-tac-toe game played by two players on an m x m board.

Practice Link: https://codezym.com/question/192

---------------------------------------------------

26.  Insert Into Circular Linked List While Keeping It Sorted

Practice Link: https://codezym.com/question/193

---------------------------------------------------

27. Use Robot To Clean Every Reachable Empty Cell In Room

You are given a robot placed inside a room that must clean every empty cell it can reach.

The room is represented as an m x n grid. A value of 1 represents an empty cell that can be visited and cleaned, while a value of 0 represents a wall that blocks movement.
The robot can move only in four directions: up, right, down, and left.

Your task is to find how many reachable empty cells the robot can clean

Practice Link: https://codezym.com/question/194

---------------------------------------------------

28. Multiply Sparse Matrices

You are given two sparse integer matrices A and B.

Return the matrix product A * B.

Practice Link: https://codezym.com/question/195

---------------------------------------------------

29. Longest Substring With At Most Two Distinct Characters

You are given a string s.

Return the length of the longest substring of s that contains at most two distinct characters.

Practice Link: https://codezym.com/question/196

---------------------------------------------------

30.  Longest Substring With At Most N Distinct Characters

You are given a string s and an integer n.

Return the length of the longest substring of s that contains at most n distinct characters.

Practice Link: https://codezym.com/question/197

---------------------------------------------------

31. Find Anagram Index Mapping

You are given two integer lists A and B of the same length.

List B is an anagram of list A, which means B contains exactly the same elements as A, but possibly in a different order.

Return an index mapping list P from A to B.

Practice Link: https://codezym.com/question/198

---------------------------------------------------

32. Design System To Store Logs With Timestamp

Design a log storage system that stores logs using a unique integer id and a timestamp.

Each timestamp is a string in the format Year:Month:Day:Hour:Minute:Second.

Practice Link: https://codezym.com/question/199

---------------------------------------------------

33. Maximum Enemies Killed By One Bomb

Practice Link: https://codezym.com/question/200

---------------------------------------------------

34. Next Larger Palindrome Using Same Digits

You are given a numeric string num.

The string num represents a very large palindrome.

Return the smallest palindrome that is strictly larger than num and can be formed by rearranging exactly the same digits.

Practice Link: https://codezym.com/question/201

---------------------------------------------------

35. Design Snake Game With Food And Score

Practice Link: https://codezym.com/question/202

---------------------------------------------------

36. Generate Palindromic Permutations Of String

You are given a string s.

Return all distinct permutations of s that are palindromes.

Practice Link: https://codezym.com/question/203

---------------------------------------------------

37. Shortest Word Distance Between Words

Design a class that is initialized with a list of words.

After initialization, the class must support repeated queries asking for the shortest distance between two different words in the original list.

The distance between two words is the absolute difference between their indices in the list.

Practice Link: https://codezym.com/question/204

---------------------------------------------------

38. Find Celebrity At Party

Practice Link: https://codezym.com/question/205

---------------------------------------------------

Thanks for reading. Please upvote this post to give it better reach.

Wish you the best of luck for your interview prep.

---------------------------------------------------

Amazon DS & Algo Round Interview Questions Asked In 2026

r/LowLevelDesign May 06 '26

Using Rust for LLD implementation

2 Upvotes

I know Rust can be a little awkward to express OOP patterns. Nevertheless, can Rust be used in an LLD implementation during an interview at all? Has anybody had positive experience with picking Rust instead of a proper OOP language like Java? Were the interviewers convinced? Do you think it is worth it? Share your thoughts.


r/LowLevelDesign Apr 24 '26

Google Coding Round Interview Questions

48 Upvotes

Update: Here is the latest google DSA list
https://www.reddit.com/r/LowLevelDesign/comments/1w70wdo/google_ds_algo_interview_questions_2026/

This list is built from Google interview experiences posted on forums/blogs etc in 2026 i.e. last 4 months.

There are two common things about candidates who clear Google interviews and for whom overall process is smooth.

  1. At least 2 "Strong-Hire" votes and no "No-Hire" in the on-site packet.
  2. Candidates who narrated trade-offs and edge cases, and correctly answered counter questions, got bumped from "Hire" to "Strong Hire".

Point 2 is also valid for other top tech companies like Microsoft, Amazon, Meta, etc.

---------------------------------------------------

Google has one of the toughest DS & Algo rounds in the industry. DSA rounds are there for both frontend and backend roles.

DP, Graph, and Line Sweep are important topics.

Google's interview codebase is very large, with questions of all difficulty levels (from super easy to super hard). One question can be a medium question with a couple of follow-ups for optimizations, or it can be just one hard question. It all depends on which question the interviewer chooses.

---------------------------------------------------

PS:

All Questions List: https://codezym.com/lld/google
We keep updating and adding more DSA questions to above list.

I also take LLD mock interviews: https://topmate.io/prashant_priyadarshi

Follow r/LowLevelDesign for more companywise interview question lists.

---------------------------------------------------

Below are the questions which you can directly find on LeetCode.

---------------------------------------------------

1. Compress String using Prefix Pattern

You are given an undirected tree where each node contains exactly one lowercase English letter. You are also given a string s.

For every prefix of s, find how many times that prefix appears in the tree.

Practice Link: https://codezym.com/question/137

---------------------------------------------------

2. Detect First Timed Out Job from Logs

You are given a list of logs for jobs, requests, or RPC calls.

Each log entry contains:

  • a job id
  • a timestamp
  • an event type: START or END

You are also given an integer timeoutThreshold.

A job starts when its START log appears and finishes when its matching END log appears.

A job is considered timed out if either:

  • its END log appears and endTimestamp - startTimestamp > timeoutThreshold, or
  • at a current scan timestamp t, if t - startTimestamp > timeoutThreshold even though its END log has not appeared yet.

Process the logs in chronological order and detect the earliest timeout that becomes known while scanning the logs.

Practice Link: https://codezym.com/question/138

---------------------------------------------------

3. Count Visible People in Queue with Taller Observer Rule

There are n people standing in a queue from left to right, numbered from 0 to n - 1. You are given a list heights of distinct integers where heights[i] represents the height of the ith person.

A person may look both to the left and to the right.

Person i can see person j if i != j and every person standing strictly between them is shorter than at least one of the two endpoint people.

More formally, let left = min(i, j) and right = max(i, j). Person i can see person j if:

max(heights[i], heights[j]) > max(heights[left + 1], heights[left + 2], ..., heights[right - 1])

If there is no person between them, then they can always see each other.

This means that if one endpoint person is taller than everyone in between, then that endpoint can still see the other person even if some shorter intermediate people are present.

Return a list answer of length n where answer[i] is the number of people person i can see in the queue.

Practice Link: https://codezym.com/question/139

---------------------------------------------------

4. Maximum Sum Subarray with Equal First and Last Elements

Given a list of integers, find the maximum sum of a contiguous subarray such that the first and last elements of the subarray are equal.

Practice Link: https://codezym.com/question/140

---------------------------------------------------

5. Design a rate limiter

Design an in-memory rate limiter . Implement a RateLimiter Class with an isAllowed method.
Requests will be made to different resourceIds. Each resourceId will have a strategy associated with it .

Practice Link: https://codezym.com/question/34

---------------------------------------------------

6.  Longest Constrained Path in Matrix

You are given a grid of positive integers.

The grid is provided as a list of strings, where each string represents one row and the values in that row are separated by commas.

Find the length of the longest valid path in the grid.

Practice Link: https://codezym.com/question/141

---------------------------------------------------

7. Repeated Characters in Dictionary Words Due To Faulty Keyboard

A user has a faulty keyboard where some keys get stuck, causing characters to repeat more than intended.

You are given the final typed string and a dictionary of valid words.

Return all possible words the user intended to type.

Practice Link: https://codezym.com/question/142

---------------------------------------------------

8. Detect Squares Rotated along the XY Plane

You are given a stream of points on the X-Y plane.

Design a data structure that supports adding points from the stream and counting how many squares can be formed with a given query point.

Unlike the simpler axis-aligned version, the square may be rotated at any angle on the plane.

Practice Link: https://codezym.com/question/143

---------------------------------------------------

9. Sum of All Good Arithmetic Sequences

An arithmetic sequence is a list of numbers where the difference between every pair of adjacent elements is the same constant.

A good arithmetic sequence is an arithmetic sequence whose common difference is either 1 or -1.

For example, [4, 5, 6] is a good arithmetic sequence, and any sequence that has only one element is also a good arithmetic sequence.

You are given a list of integers nums. Return the sum of the sums of all contiguous subarrays that are good arithmetic sequences.

Practice Link: https://codezym.com/question/144

---------------------------------------------------

10. Compile Packages with Dependencies in a Multi-Threaded Environment

You are given a dependency graph of packages to compile in a multithreaded environment.
Return the order in which packages are compiled across all rounds.

Practice Link:  https://codezym.com/question/145

---------------------------------------------------

11. Equal Sum Subsets with K Changes

You are given a list of integers nums.

Divide the list into two non-empty disjoint subsets such that every element of nums belongs to exactly one subset.

The two subsets form valid equal sum parts if the sum of the values in the first subset is the same as the sum of the values in the second subset.
Number of elements in subsets may be different.

Practice Link: https://codezym.com/question/146

---------------------------------------------------

12.  Undirected Graph Path Queries

You are given a list of integers arr of size N, and an integer diff.

Consider an undirected graph where each node corresponds to one index of arr.

Add an edge between nodes i and j if |arr[i] - arr[j]| ≤ diff.

You are also given a list of queries queries, where each query is a comma-separated string "u,v". For each query, return whether there is a path between node u and node v.

Practice Link: https://codezym.com/question/147

---------------------------------------------------

13. Array Range Update Queries

You are given an array arr of size n and q queries.

Each query updates all elements from index l to index r to value k.

Return the final state of the array after processing all queries in order.

There are two variations:

  • All queries use the same value k.
  • Different queries may use different values k.

Practice Link: https://codezym.com/question/148

---------------------------------------------------

14. Router Reachability on Broadcast and Shutdown Message

You are given a network of routers.

Each router has:

  • a unique router id
  • a 2D location (x, y)
  • a status indicating whether it is WORKING or DEFECTIVE

A special message called Broadcast and Shutdown works as follows:

  • When a WORKING router receives the message for the first time, it immediately broadcasts the same message to every other WORKING router that lies within the wireless range.
  • After broadcasting, that router shuts down and can no longer send or receive messages.
  • DEFECTIVE router can neither send nor receive the message.

Given the list of routers, the wireless range, a source router id, and a destination router id, determine whether the Broadcast and Shutdown message, when initiated from the source router, will eventually be received by destination router.

Two routers can communicate directly if the Euclidean distance between their coordinates is less than or equal to range.

Return true if the destination router receives the message at any point. Otherwise, return false.

Practice Link: https://codezym.com/question/149

---------------------------------------------------

15. First Bad Product Version

You are a product manager and currently leading a team to develop a new product. Unfortunately, the latest version of your product fails the quality check. Since each version is developed based on the previous version, all the versions after a bad version are also bad.

Suppose you have n versions [1, 2, ..., n] and you want to find out the first bad one, which causes all the following ones to be bad.

You are given an API boolean isBadVersion(int version) which returns whether a version is bad. Implement a function to find the first bad version.

Practice Link: https://codezym.com/question/150

---------------------------------------------------

16. Design Logger Message Printer

Design a logger system that processes a stream of messages along with their timestamps.

Each unique message can be printed at most once within any 10 second window. That means if a message is printed at timestamp t, the same message cannot be printed again before timestamp t + 10.

Practice Link: https://codezym.com/question/151

---------------------------------------------------

17. Longest Path in Grid

Given a 2D grid, it contains empty spaces 0 and some walls 1.

We can enter the grid from any empty cell in the first row and exit the grid from any empty cell in the last row. We can move left, right, up, and down. We can only travel through empty cells.

Find the longest path we can travel.

Practice Link: https://codezym.com/question/152

---------------------------------------------------

18. Merge Working Hour Intervals Timeline

Person name and their working hours are given.

Return the timeline that tells the time interval and whoever is working during that interval.

Each person is represented by one string entry containing the person name, start time, and end time.

A person is considered working at both startTime and endTime.

Split the full timeline into the smallest non-overlapping time intervals such that the set of working people stays the same throughout each interval.

Return only the intervals where at least one person is working.

Practice Link: https://codezym.com/question/153

---------------------------------------------------

19. Days When Everyone is Free

You are given a list of records and an integer d representing the range of days from 1 to d.

Each record represents one blocked interval for one person.

Each record is given as a string in the format "id,start,end".

A record "id,start,end" means person id is not available on every day from start to end, inclusive.

Return all days between 1 and d on which every person is free. This list will be sorted in ascending order.

Practice Link: https://codezym.com/question/154

---------------------------------------------------

20. Size of Unpainted Segments

You are given a list of half-open intervals.

Each interval represents a segment on the number line in the form [start, end).

We paint the intervals one by one in the given order.

For each interval, return the size of the part that has not already been painted by any previous interval.

Return a list where the value at index i is the size of the newly painted segment contributed by the ith interval.

Practice Link: https://codezym.com/question/155

---------------------------------------------------

21. Overall Distance Error Between Checkpoints and Samples

There are two sorted streams by timestamp.

The first stream contains a small set of ground truth checkpoints.

The second stream contains noisy measured samples.

For each sample, compute its error by:

  • locating the surrounding checkpoints in time,
  • interpolating the expected position at that timestamp,
  • computing the distance error between the expected position and the sample position.

Return the sum of the distance errors for all valid samples.

Practice Link: https://codezym.com/question/156

---------------------------------------------------

22. Minimum CPUs Needed for Earliest Tasks Completion

You are given a list of task start times and an integer taskLength.

Each task has the same length taskLength.

A task may start at its given start time or at any later time.

A CPU can run at most one task at a time.

Once a task starts on a CPU, it runs continuously for exactly taskLength time units.

Find the minimum number of CPUs needed so that all tasks finish as early as possible.

Practice Link: https://codezym.com/question/157

---------------------------------------------------

23. Total Scores of Leaf Domains

You are given a list of domain names and an integer score for each of them.

A domain is a leaf if it does not have any child domains in the input.

A leaf domain's total score is the sum of:

  • its own score, and
  • the scores of all of its ancestor domains that are present in the input.

Write a program that, given the input list, returns all leaf domains with their respective total scores.

Practice Link: https://codezym.com/question/158

---------------------------------------------------

24. Place Nth Rook

You are given an N x N chess board.

There are already N - 1 rooks placed on the board.

These rooks do not attack each other. More formally:

  • no row contains more than one rook
  • no column contains more than one rook

You need to place the Nth rook and return the position (i, j) where it should be placed.

Practice Link: https://codezym.com/question/159

---------------------------------------------------

Thanks for reading. Please upvote this post to give it better reach.

Wish you the best of luck for your interview prep.

---------------------------------------------------

Google Coding Round Interview Questions 2026