Software Design Interview Questions
- 0of 0 votes
AnswersThe Unix find command allows you to search for files under a given directory. You can specify criteria for files you are interested in.
- ajangir August 08, 2022 in India
Imagine that you need to write code in a high level language like java, that does things similar to the find command.
I would like you to focus on 2 uses cases at first.
• Find all files over 5 MB somewhere under a directory.
• Find all XML files somewhere under a directory.
I would like you to create a library that lets me do this easily. Keep in mind that these are just 2 uses cases and
that the library should be flexible.| Report Duplicate | Flag | PURGE
Amazon Software Engineer Software Design - 0of 0 votes
AnswersDesign a system which will keep track of product and its inventory count. The service will expose two api incrCnt(int prodId, int cnt) and decrCnt(int prodId, int cnt). Which db would you use ? How will you handle hot products ?
- neer.1304 July 01, 2020 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswerDesign a system in which read a file which has data and operation to be performed give a line by line. Ex a=5, next line b= 10, next line a*b. This design extended to support float, doubles, boolean, vector and complex numbers. Like if the file has a=5+i8, then how you handle such scenarios. How you will store and process data.
- neer.1304 June 08, 2020 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswerMake a system that returns the average number of hits on the site per minute from the past 5 minutes
- neer.1304 August 15, 2019 in United States| Report Duplicate | Flag | PURGE
Indeed SDE-2 Software Design - 0of 0 votes
AnswersDesign election voting system. Election would be country wide. System should be scalable, available and consistent.
- neer.1304 July 26, 2019 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswersDesign a jenkins kind of system
- neer.1304 July 09, 2019 in United States| Report Duplicate | Flag | PURGE
Nutanix Software Design - 0of 0 votes
AnswersDesign a catalog system – Restaurants, Items, Categories, VariantGroups like Size, Variants like (S,M,L), AddOnGroups like Extra cheese, AddOns like White Cheese, Yellow Cheese. Price of item will vary on variant selected and even addon price will vary on variant selected.
- neer.1304 May 31, 2019 in United States| Report Duplicate | Flag | PURGE
Swiggy SDE-3 Software Design - 1of 1 vote
AnswersDesign Flipkart Flash sale architecture. 2 million hits and 20k orders in 2 sec.
- neer.1304 May 31, 2019 in United States| Report Duplicate | Flag | PURGE
Swiggy SDE-3 Software Design - 0of 0 votes
AnswersDatabase query response times have increased. An API which is dependent on this database will see - *
- __Joker October 10, 2018 in India
This is a multi-select answer.
Increase in the latencies.
Increase in RAM utilisation on the API servers
Increase in CPU utilisation on the API servers
Increase in 200 response codes
Increase in 5xx responses| Report Duplicate | Flag | PURGE
unknown Software Developer Software Design - 0of 0 votes
AnswersDesign an email client where you can only send emails to people who are present in your contact list. Build for only the following functionaliy
- vardaansh1 August 26, 2018 in India
1) Send/Receive Emails
2) Add/Remove Contacts
3) See Inbox
4) See Sent Mail| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswersDesign a distributed LRU Cache.
- vardaansh1 August 26, 2018 in India| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - -1of 1 vote
AnswersHow is design review done?
- abc.xyz June 19, 2018 in India| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswersDesign a system like github.
- ANONU May 29, 2018 in India| Report Duplicate | Flag | PURGE
Google Java Developer Software Design - 2of 2 votes
AnswersSingleton Design pattern. How you make it double ton(in even call of getInstance() first object should be return and odd call of getInstance() second instance should be return). Make it triple ton.
- neer.1304 September 04, 2017 in United States| Report Duplicate | Flag | PURGE
Goldman Sachs SDE-2 Software Design - 0of 0 votes
AnswersDesign a system to find top 10 twitter hashtags in the most recent 1 min, 10 min, 1 hr
- AlgoBaba August 28, 2017 in United States| Report Duplicate | Flag | PURGE
Twitter Data Engineer Software Design - 2of 2 votes
AnswersDesign a mall where there are 'm' entry gates and 'n' exit gates. There can be only 'x' number of people inside it. No more then 'x' people can be inside mall at any time.
- neer.1304 July 30, 2017 in United States| Report Duplicate | Flag | PURGE
Microsoft SDE-2 Software Design - 0of 0 votes
AnswersDesign an application for people to find a place near them where they can join a team to play their favorite sport. Exp. Soccer teams open to join that are scheduled to play at a certain time and place. The application would search for the available teams to join within certain area playing within some given time period,
- UCJava July 04, 2017 in United States| Report Duplicate | Flag | PURGE
Amazon Software Developer Software Design - 2of 2 votes
AnswerDesign a movie ticket booking system like bookmyshow.com
- neer.1304 March 29, 2017 in United States
Follow-up question -
1) How do you handle issues like scalability, concurrency, fault-tolerance etc.
2) Show movie theaters near to user where movie is playing and seats are available
3) Design database. What kind of DB would you use SQL or No-SQL
4) In real time how would you show which seats are booked which are free
5) If theaters do not have any api for fetching information then what can we do about it.| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 1of 1 vote
AnswersDesign Uber. Low level Design needed (OOPS based - classes, relations, message flow etc.)
- neer.1304 March 28, 2017 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswerDesign Cricinfo website
- neer.1304 March 28, 2017 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswersDesign snake n ladder game to be played online
- neer.1304 March 28, 2017 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswersDesign a system having multiple jobs, interacting with each other such that :
- neer.1304 March 10, 2017 in United States
1) A job can run for very long periods (1-2 days)
2) A node can fail/crash on which certain job is running
system should be scalable
3) Amount of data getting transferred is huge
4) Data in the system is very sensitive and needs security
job/s can fail| Report Duplicate | Flag | PURGE
Amazon SDE-3 Software Design - 0of 0 votes
AnswersDesign garbage collector in Java
- neer.1304 March 10, 2017 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-3 Software Design - 0of 0 votes
AnswersDesign a online shipment tracking system.
- neer.1304 March 10, 2017 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswersDesign an OOP concept for an application where employee can dispatch their incoming phone call according to their seniority level if they are not able to solve.
- neer.1304 March 08, 2017 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
AnswersDesign a kind of kindle fire application where we can subscribe news channel and read the news from all publishers as a digital format.
- neer.1304 March 08, 2017 in United States| Report Duplicate | Flag | PURGE
Amazon SDE-2 Software Design - 0of 0 votes
Answers1) Finish writing the below method: bookReservation(Reservation reservation)
2) You are free to add, modify, etc the following classes and method
- xankar February 18, 2017 in United Statesimport java.time.Duration; import java.time.LocalTime; import java.util.List; import java.util.Map; // Your goal is to write business logic for a very simple Restaurant booking system // You are encouraged to refactor exisiting code, create other classes, write helper methods etc // You also need to make sure that the implementation works correctly class Reservation { public String name; public int partySize; public LocalTime startTime; } class Table { public int tableNumber; public int maxPartySize; } class Restaurant { public List<Table> tables; public LocalTime openTime; public LocalTime closeTime; public Map<Integer, Duration> reservationDurationsPerPartySize; // Returns a Table if Reservation could be booked, null otherwise // Booking rules: // 1) Reservation could be made only when the Restaurant is open. // 2) Only one Reservation can be seatted a Table at any time. // 3) Reservation can be seatted only at a Table of the same or a bigger size. // 4) Reservation should stay on the same Table for the whole Duration. // 5) Reservation Duration is determined by PartySize. public Table bookReservation(Reservation reservation) { //fill this method }
| Report Duplicate | Flag | PURGE
Google Backend Developer Software Design - 2of 2 votes
AnswerDesign a stock market system
- nn January 24, 2017 in India| Report Duplicate | Flag | PURGE
Microsoft Intern Software Design - -3of 3 votes
Answersna
- Anonymous January 10, 2017 in United States| Report Duplicate | Flag | PURGE
Software Design - 0of 0 votes
AnswersWe tend to use computer to solve practical problems that actually earns or save dollars. Here is something that happens across the stock exchanges : people buy and sell stocks.
- NoOne October 15, 2016 in India
We generally use automated intelligent systems to buy and sell stocks. That part is too much mathematics, and beyond scope of this interview. There is another part. Suppose the system issues a buy order : buy 1000 Microsoft stock. Now, there are more than 1 ( in fact 10 ) active exchanges from where we can buy MSFT. There is a slight price delta, which keeps changing over time. There is another problem. In each stock exchange, prices are stacked, that is :
1. For first 100 stocks prices are 55$.
2. Next 200 stocks, prices are 55.2$.
... etc, and you got the idea. Even this stacks are changing over time.
Thus, here is the problem to solve. Design and implement a system such that one can buy n stocks with minimal price.
Also, in the same spirit, the same system should be able to sell n stocks with maximum payoff possible.
This is a non trivial problem, for Quant systems.
There are always k no of exchanges to hit.| Report Duplicate | Flag | PURGE
Goldman Sachs Software Engineer / Developer Algorithm Cache Computer Architecture & Low Level Computer Science Distributed Computing Large Scale Computing Math & Computation Software Design