Really fascinating, many thanks. Hardly in the Internet can you find such content 🎉
@BillyOGradyАй бұрын
I have an upcoming test about distributed databases and WDM, this has been such a help in considering how to answer these problems. Thank you!
@skumakerguitar8708Ай бұрын
I don’t get it how redis can maintain relationships data , how does redis know who follow who?
@demogyani24192 ай бұрын
This looks more like SRS then system design. You have to put up DB first class hierarchy comes secondary
@prashantsalgaocar2 ай бұрын
Thanks I like the way you touched upon create/incident management/backend/plugin. The only thing which I have to follow up on is distinguishing between customers using hosted/OnPrem store orchestrator to create their own shops V/S you mentioned some internal shopify customers that will have their own control layer. Also this design did not touch on checkout/shopping cart which is a big part of the shopify eco-system. But that said we cannot touch on all aspects of the system.
@quirkyquester2 ай бұрын
Amazing video! I love this, love how it’s possible to cover all three topics in one design, and allow the interviewer to lead the direction! Thank you!
@punstress4 ай бұрын
This is the second "design a parking lot" challenge I've seen, and this one is at least better than the first, which was for reserving specific spaces well in advance for a block of time (hours, not days) and I don't know why anyone would think to do that. No parking lot operates like that for a good reason: it would not work! Cars would stack up outside the lot waiting to enter for their block of time, because their space is not available until then. And what if they arrive and it's still occupied or the car next to him went over the line and they can't get in or out. So many problems. This POS system is somewhat better but, still, the idea of assigning a space is terrible. At least this one (theoretically) ensures that it's unoccupied, assuming the vehicle that just left actually did use the space they were assigned. Almost every lot charges upon leaving for obvious reasons. It's better to simply track how many spaces are available by how many have entered minus how many have paid, and let people find their own spots. This space-assigning system might be better for valet parking so they keep track of where the car is, which many times requires them moving other cars because they park them in tandem, or long-term parking by the week or month, or for really restricted number of spaces, such as a ferryboat or vehicle transport truck, train, or cargo ship.
@HarryTuttleHeatingEngineer5 ай бұрын
It sounds like you keep saying PUI's but do you mean POI (point of interest)? The transcript didn't clarify.
@pharaoh94835 ай бұрын
1:31 layer 4 is Transport, Layer 3 is Network
@hassankhalil53728 ай бұрын
Well done, thank you. This was very useful.
@fartzy11 ай бұрын
They don’t need a bunch of RAM but it takes less machines if it has more RAM. It’s a trade off that’s worth saying though
@aurora23301 Жыл бұрын
Your videos are really informative!!! Thank you for putting up such great and helpful content!
@jojay6472 Жыл бұрын
I don't understand the point of this. You are trying to design it too perfectly. This is impossible to do without prior knowledge in less than 45 minutes. You should have dumbed it down and just powered through your presentation. Here are the features, this how I will implement it.
@ammaryasseryoussief Жыл бұрын
that was an amazing explination thank you for your time <3
@boombasach Жыл бұрын
I think what exactly is “tweet” needs to be defined first ; some aspect of it will come in sorting
@Roycocup Жыл бұрын
See this is very intuitive and makes a lot of sense. And this is also the reason why most people does not understand agile. In agile, the best thing to do is just start by building and getting a quick feedback from the interviewer stating this was not what he wants.
@marianpazdzioch5437 Жыл бұрын
Quite boring and bs.
@ThatoulahYT Жыл бұрын
You cannot say he/his for a server, the correct way would be it/its.
@rajanchauhan2425 Жыл бұрын
Thanks for the Video. I have one doubt what happens to the messages when one of the servers dies and queues are also lost?
@GurankitSinghBehal Жыл бұрын
Have I gone mad or this man really looks like Tyrion Lannister from Game of Thrones
@rishiraj2548 Жыл бұрын
Thanks a million!
@christowndotcom Жыл бұрын
The actual interview you get at Amazon will not be anything like this. All the videos and books I went through prepared me 0% for what they asked, as they would just ask something not even close to overall system design. Not helpful at all
@quantlfc Жыл бұрын
Thanks! :)
@hristianiliev7979 Жыл бұрын
Sorry, but you didn't do any system design, nevertheless a good discussion, but it was not what I was searching for.
@sqwale7 Жыл бұрын
Is this considered system design? I thought it was about nodes, load balancing, databases, caching , sharding etc.
@sidhartheleswarapuАй бұрын
This an Object Oriented Design question. Different from System Design.
@Alpha-kt6hc Жыл бұрын
The starting was so hyped up, I was expecting a lot more in the design part.
@BuffNerdInCa Жыл бұрын
lmao...if they ask this question of a game dev. love to see the interviewers face when we start talking vehicle physics, pathfinding and collision geometry. how detailed do you want this sim to get?
@rakeshram2199 Жыл бұрын
Hi, which architecture tool are you using
@manhuynhkha Жыл бұрын
This material is for freshers and juniors.
@bzaruk Жыл бұрын
Great video! thank you!! - one note though, and pls correct me if I'm wrong, two applications (servers) can listen to the same port at the same server instance as you mentioned 3:20
@mikerico6175 Жыл бұрын
You are talking about Service based architecture. Not servicd oriented architecture. Those are differentZ
@derek.morrison Жыл бұрын
It seems a bit strange that he didn't address permanent storage of tweets. 🤔
@superwemanhella6240 Жыл бұрын
I don't understand where the stacks would be used here. Because i don't suppose we would be getting all the data to the application layer. But won't we create indices on spotType and state columns and can we not just do - SELECT TOP 1 FROM SPOTS WHERE SPOTTYPE IS "TRUCK" AND VACANT; - won't this be a Log N operation? if this returns 0 records, we can check for the next bigger vehicle's spot. Or do @Success in Tech means that we simply need to separate our db to store different tables based on vehicle type and spot state (say vacant truck spots, occupied truck spots)? Thanks for the video!
@reheitube Жыл бұрын
it CQRS at its best basically... ps. Great video, thanks for sharing :)
@wassimboussebha2561 Жыл бұрын
question : in the findSpot() method , can i use a key-value hashmap<type,spot> , where you can map the available spots using the vehicle type , and i think that you can have one key and multiple values , but still O(n) since you need to traverse all the linked-list of the specific key
@genuineprofile64002 жыл бұрын
Brilliant video on Twitter news feed generation. But storage of tweets was not discussed. Since 100 million tweets are created per day. Would have been interesting to know how this massive volume of tweet are stored and scaled. Thanks for video.
@weepingwillow20562 жыл бұрын
WebSocket should have been mentioned
@sunny-146892 жыл бұрын
What is difference berween L4 and L7 if both are routing based on clientIp, just that L4 maintains ip tables and L7 hashes client IP ? So won't both doing same thing eventually ?
@yiqingwen32302 жыл бұрын
Honestly, I don't think this is a good approach at all. Because realistically, what you described is not how people use the parking lot. When I enter a parking lot, I park in an empty spot that I like, there is no supernatural force place my car in a spot that's determined by some stack data structure.
@waytospergtherebro2 жыл бұрын
I love it when the obnoxious European guy with the goat eyes starts blasting his dubstep.
@TarequeMdKhan2 жыл бұрын
I assumed it to he HighLevel design question, but 10 min into the video I felt it's a LowLevel Design.
@andiwijayas2 жыл бұрын
I think you're missing out the application servers that handles requests from Load Balancer. It won't go to Redis without a help of application servers that builds the chronological tweets
@a.m.69732 жыл бұрын
The beauty of Geo-hashing (telescoping) is that for places that are close to each other, their hash values are also similar and have a common prefix. So we can store the hashes for places (restaurants, etc.) in a Trie data structure. Then after we compute the hash for the user, we can go down the Trie and in each step we get closer to a subtree that contains all places that are close to the user, and we can return all of those as the search result.
@suitub57102 жыл бұрын
your every word is useful and informative!!!
@sonicjetson62532 жыл бұрын
This is fresh grad or junior engineer level explanation
@richragenj2 жыл бұрын
His face looks like a shark
@user-pn8dq6vt4s2 жыл бұрын
I once received the problem "Design a coffee shop" at Oracle and the interviewer stubbornly refused to clarify exactly what did he want - a POS system, etc? It was terrible.
@TheAdithya19912 жыл бұрын
Thank you for the video, Sir! May I ask why you choose to mix the implementation details with the design, is it the standard practice? For instance, you mentioned Redis as a in memory DB in the diagram. Why not just leave it at "in memory DB"(the design) and leave out the Redis (the details). Much thanks!
@babaarab2652 жыл бұрын
Thanks for the great video bro, stright to the point (= Keep up sharing the great work with us. Looking forward to new videos. All the best from Sweden.
Пікірлер
Watched. --
Really fascinating, many thanks. Hardly in the Internet can you find such content 🎉
I have an upcoming test about distributed databases and WDM, this has been such a help in considering how to answer these problems. Thank you!
I don’t get it how redis can maintain relationships data , how does redis know who follow who?
This looks more like SRS then system design. You have to put up DB first class hierarchy comes secondary
Thanks I like the way you touched upon create/incident management/backend/plugin. The only thing which I have to follow up on is distinguishing between customers using hosted/OnPrem store orchestrator to create their own shops V/S you mentioned some internal shopify customers that will have their own control layer. Also this design did not touch on checkout/shopping cart which is a big part of the shopify eco-system. But that said we cannot touch on all aspects of the system.
Amazing video! I love this, love how it’s possible to cover all three topics in one design, and allow the interviewer to lead the direction! Thank you!
This is the second "design a parking lot" challenge I've seen, and this one is at least better than the first, which was for reserving specific spaces well in advance for a block of time (hours, not days) and I don't know why anyone would think to do that. No parking lot operates like that for a good reason: it would not work! Cars would stack up outside the lot waiting to enter for their block of time, because their space is not available until then. And what if they arrive and it's still occupied or the car next to him went over the line and they can't get in or out. So many problems. This POS system is somewhat better but, still, the idea of assigning a space is terrible. At least this one (theoretically) ensures that it's unoccupied, assuming the vehicle that just left actually did use the space they were assigned. Almost every lot charges upon leaving for obvious reasons. It's better to simply track how many spaces are available by how many have entered minus how many have paid, and let people find their own spots. This space-assigning system might be better for valet parking so they keep track of where the car is, which many times requires them moving other cars because they park them in tandem, or long-term parking by the week or month, or for really restricted number of spaces, such as a ferryboat or vehicle transport truck, train, or cargo ship.
It sounds like you keep saying PUI's but do you mean POI (point of interest)? The transcript didn't clarify.
1:31 layer 4 is Transport, Layer 3 is Network
Well done, thank you. This was very useful.
They don’t need a bunch of RAM but it takes less machines if it has more RAM. It’s a trade off that’s worth saying though
Your videos are really informative!!! Thank you for putting up such great and helpful content!
I don't understand the point of this. You are trying to design it too perfectly. This is impossible to do without prior knowledge in less than 45 minutes. You should have dumbed it down and just powered through your presentation. Here are the features, this how I will implement it.
that was an amazing explination thank you for your time <3
I think what exactly is “tweet” needs to be defined first ; some aspect of it will come in sorting
See this is very intuitive and makes a lot of sense. And this is also the reason why most people does not understand agile. In agile, the best thing to do is just start by building and getting a quick feedback from the interviewer stating this was not what he wants.
Quite boring and bs.
You cannot say he/his for a server, the correct way would be it/its.
Thanks for the Video. I have one doubt what happens to the messages when one of the servers dies and queues are also lost?
Have I gone mad or this man really looks like Tyrion Lannister from Game of Thrones
Thanks a million!
The actual interview you get at Amazon will not be anything like this. All the videos and books I went through prepared me 0% for what they asked, as they would just ask something not even close to overall system design. Not helpful at all
Thanks! :)
Sorry, but you didn't do any system design, nevertheless a good discussion, but it was not what I was searching for.
Is this considered system design? I thought it was about nodes, load balancing, databases, caching , sharding etc.
This an Object Oriented Design question. Different from System Design.
The starting was so hyped up, I was expecting a lot more in the design part.
lmao...if they ask this question of a game dev. love to see the interviewers face when we start talking vehicle physics, pathfinding and collision geometry. how detailed do you want this sim to get?
Hi, which architecture tool are you using
This material is for freshers and juniors.
Great video! thank you!! - one note though, and pls correct me if I'm wrong, two applications (servers) can listen to the same port at the same server instance as you mentioned 3:20
You are talking about Service based architecture. Not servicd oriented architecture. Those are differentZ
It seems a bit strange that he didn't address permanent storage of tweets. 🤔
I don't understand where the stacks would be used here. Because i don't suppose we would be getting all the data to the application layer. But won't we create indices on spotType and state columns and can we not just do - SELECT TOP 1 FROM SPOTS WHERE SPOTTYPE IS "TRUCK" AND VACANT; - won't this be a Log N operation? if this returns 0 records, we can check for the next bigger vehicle's spot. Or do @Success in Tech means that we simply need to separate our db to store different tables based on vehicle type and spot state (say vacant truck spots, occupied truck spots)? Thanks for the video!
it CQRS at its best basically... ps. Great video, thanks for sharing :)
question : in the findSpot() method , can i use a key-value hashmap<type,spot> , where you can map the available spots using the vehicle type , and i think that you can have one key and multiple values , but still O(n) since you need to traverse all the linked-list of the specific key
Brilliant video on Twitter news feed generation. But storage of tweets was not discussed. Since 100 million tweets are created per day. Would have been interesting to know how this massive volume of tweet are stored and scaled. Thanks for video.
WebSocket should have been mentioned
What is difference berween L4 and L7 if both are routing based on clientIp, just that L4 maintains ip tables and L7 hashes client IP ? So won't both doing same thing eventually ?
Honestly, I don't think this is a good approach at all. Because realistically, what you described is not how people use the parking lot. When I enter a parking lot, I park in an empty spot that I like, there is no supernatural force place my car in a spot that's determined by some stack data structure.
I love it when the obnoxious European guy with the goat eyes starts blasting his dubstep.
I assumed it to he HighLevel design question, but 10 min into the video I felt it's a LowLevel Design.
I think you're missing out the application servers that handles requests from Load Balancer. It won't go to Redis without a help of application servers that builds the chronological tweets
The beauty of Geo-hashing (telescoping) is that for places that are close to each other, their hash values are also similar and have a common prefix. So we can store the hashes for places (restaurants, etc.) in a Trie data structure. Then after we compute the hash for the user, we can go down the Trie and in each step we get closer to a subtree that contains all places that are close to the user, and we can return all of those as the search result.
your every word is useful and informative!!!
This is fresh grad or junior engineer level explanation
His face looks like a shark
I once received the problem "Design a coffee shop" at Oracle and the interviewer stubbornly refused to clarify exactly what did he want - a POS system, etc? It was terrible.
Thank you for the video, Sir! May I ask why you choose to mix the implementation details with the design, is it the standard practice? For instance, you mentioned Redis as a in memory DB in the diagram. Why not just leave it at "in memory DB"(the design) and leave out the Redis (the details). Much thanks!
Thanks for the great video bro, stright to the point (= Keep up sharing the great work with us. Looking forward to new videos. All the best from Sweden.