What is the DB you are using in the solution? Redis is good for caching. but there should be something to store all the tweets..thats missing here
@vosvodin4 ай бұрын
As an interviewer I wouldn't let this approach to pass. Why? Because if you have limited time, and cannot desgin the whole system you should start from doing most important part. In this case we can asume that 90% of vehicles in a parking lot are cars, so actually this design is just about the 10% of the problem. Moreover, if you want to keep track of the cars you can just use numbers. Just intoduce 4 integers which counts the empty space for each type, you don't have to know which car is where, and in reality most of the parking lots don't have this information. The important things you should have mentioned are how to record the car at the entrance, how to charge the car when leaving, how the user makes the payment, and what the security issues are.
@ThackerayQueena4 ай бұрын
Wuckert Way
@6647-v3p5 ай бұрын
How are you going to manage the environments you are creating for customers? You will have hundred thousands of them
@儒雅随和带带大师兄5 ай бұрын
Why do we need 3 redis here?
@szyulian7 ай бұрын
Watched. --
@useratuserat7 ай бұрын
Really fascinating, many thanks. Hardly in the Internet can you find such content 🎉
@BillyOGrady7 ай бұрын
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!
@skumakerguitar87088 ай бұрын
I don’t get it how redis can maintain relationships data , how does redis know who follow who?
@demogyani24198 ай бұрын
This looks more like SRS then system design. You have to put up DB first class hierarchy comes secondary
@prashantsalgaocar9 ай бұрын
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.
@quirkyquester9 ай бұрын
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!
@punstress11 ай бұрын
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.
@HarryTuttleHeatingEngineer11 ай бұрын
It sounds like you keep saying PUI's but do you mean POI (point of interest)? The transcript didn't clarify.
@hassankhalil5372 Жыл бұрын
Well done, thank you. This was very useful.
@fartzy Жыл бұрын
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.
@ThatoulahYT2 жыл бұрын
You cannot say he/his for a server, the correct way would be it/its.
@rajanchauhan24252 жыл бұрын
Thanks for the Video. I have one doubt what happens to the messages when one of the servers dies and queues are also lost?
@GurankitSinghBehal2 жыл бұрын
Have I gone mad or this man really looks like Tyrion Lannister from Game of Thrones
@rishiraj25482 жыл бұрын
Thanks a million!
@christowndotcom2 жыл бұрын
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
@quantlfc2 жыл бұрын
Thanks! :)
@hristianiliev79792 жыл бұрын
Sorry, but you didn't do any system design, nevertheless a good discussion, but it was not what I was searching for.
@sqwale72 жыл бұрын
Is this considered system design? I thought it was about nodes, load balancing, databases, caching , sharding etc.
@OrphanedZombie7 ай бұрын
This an Object Oriented Design question. Different from System Design.
@Alpha-kt6hc2 жыл бұрын
The starting was so hyped up, I was expecting a lot more in the design part.
@BuffNerdInCa2 жыл бұрын
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?
@rakeshram21992 жыл бұрын
Hi, which architecture tool are you using
@manhuynhkha2 жыл бұрын
This material is for freshers and juniors.
@bzaruk2 жыл бұрын
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
@mikerico61752 жыл бұрын
You are talking about Service based architecture. Not servicd oriented architecture. Those are differentZ
@derek.morrison2 жыл бұрын
It seems a bit strange that he didn't address permanent storage of tweets. 🤔
@superwemanhella62402 жыл бұрын
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!
@reheitube2 жыл бұрын
it CQRS at its best basically... ps. Great video, thanks for sharing :)
@wassimboussebha25612 жыл бұрын
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