hey guys welcome back to my channel this is riddhi datta and in this very video I am going to share my preparation strategy for low level design as well as machine coding which helped me to crack a couple of startups as well as top product based companies now before starting off this video I would just take you I'm not an expert in this I am still learning and evolving as I grow along as an engineer but I'm going to share my experience the strategy that I followed the things that I did uh the things which I learned I'm going to share all of that all of my preparation uh with you guys that kind of helped me as I said to crack these companies also one more thing I would like to point out is even freshers can watch this video till the very end because lld is asked in a couple of product based companies for them as obviously sd2 and above can definitely watch this video as well I am very sure this video is going to help you a lot so without any further Ado let's get started okay so the first thing that you need to know is the oops Concepts right the object oriented principles because without it you won't be able to understand a single thing of low level design the second thing which you need to learn is clean coding now even if you're not learning low level design or preparing for lld interview still I would highly recommend you to learn about clean coding oops Concepts before you actually start working for any company right otherwise whenever you would be raising your PRS you would be getting a lot of comments from senior developers and eventually you have to invite the qualities where you have to write a code in a certain way that is understood by other developers because let's say if you leave the company then you have to write the code in such a way that it is self-explanatory and it is understandable by other developers even if you are not there to explain it so for clean coding I would suggest one of the books one of the very famous books by Robert C Martin but if you have followed any other resource for clean coding principles uh you can comment down below again this is something that you will get better with experience but obviously you can get started with clean coding with the help of this book also you can read about solid patterns again that is going to help you a lot while you start your LED Journey next up uh would be design patterns right now there exists a lot of design patterns out there but I am going to tell you like a couple of the important design patterns that you should know before setting for early interviews obviously you're free to go and read about all the design patterns that exist but I don't think all of them would require at least for the lld interviews so I'm going to call them out what are the important design patterns topics that you should definitely know the first important design pattern that you should definitely definitely know even as a fresher is the Singleton design pattern and if you are preparing for sd2 interviews then make sure that along with the Singleton design pattern you also know that multi-threading part of it as well I have covered that in detail in one of my videos in my LED design pattern please go and watch that video If you haven't yet next is Builder pattern again I have explained Builder pattern Builder design pattern in depth and I was asked a lot of questions from Builder pattern one of my Goldman Sachs interview rounds and I've covered all of that and do go and check out my Builder pattern video as well next is Factory and Abstract Factory again these are two very important design patterns that you should definitely know next is adapter pattern and another one is decorated pattern for again for which I made a detailed video on another one is Observer pattern again there is a detailed video on it as well you can go and check out my LED playlist I am going to cover more and more videos on LED very very soon on my channel so do stay tuned to my channel And subscribe and press the Bell icon so that every time I upload such a video you get notified also if you want to know my DSA preparation strategy and how do I prepare DSA what are the topics that I require for DSA how do I revise DSA you can definitely go and check out my videos you can go and check out my DSA pattern videos where I've also made videos on different topics and the type of patterns and questions that you should do for each topic let's say I have made for binary search graphs interval problems and so on so you can definitely go and check it out I'm very sure it is going to help you a lot in your interview preparation so guys in my last preparation strategy video I had mentioned the importance of giving contest because it helps you to stay in touch and also helps you with the speed and efficiency in solving the problems keeping that in mind I am here to announce one of the coding contests that is happening this Saturday on 28th of January from 9 pm till 12 am it's a 3 our contest its code Rush X which is organized by Newton School it happens on a global scale where coding enthusiasts from all over the world would take part and compute to secure their position among the top coders and they get great rewards more on that later as of now code Rush has received over one lakh registrations and there are many more to go and let me tell you that there is no registration cost involved it's a free contest where you can participate but the rewards are exemplary and I would come to that very soon uh the questions are framed by ICPC World finalists and registrations as I said are free and open to all people both from coding and non-coding backgrounds now these guys have a reward pool of rupees 10 lakhs at least one problem you get a you have a very good chance of winning something so let's go to the prices because there are a lot of them so the first price is rupees one lakh second price rupees fifty thousand third price is rupees twenty five thousand uh fourth price fifteen thousand rupees fifth price ten thousand rupees then they have Amazon gift vouchers worth rupees 500 for top 500 coders Amazon gift browsers watch rupees 100 for coders rank between 500 1 to 2000 Amazon gave vouchers what rupees 100 for coders rank 2000 and above random thousand people solving at least one problem then you have goodies for top Indian coders top two gets airpods third generation ranks three to ten gets Amazon Eco fourth generation ranks 11 to 25 get both air drops one three one rank 26 200 get school C per on top of it the first and Indian solvers for every question gets an ergonomic keyboard from Newton school scholarships what rupees twenty thousand also awarded to top performers to kudos to Newton School for giving so many prizes and rewards and motivating the students and the professionals to take up competitive coding and you know practice DSA that would be helpful in turn to crack these companies ah the contest again is on this Sunday 28th of January uh registration is free there is a three hour contest it will commence on 9 pm and it will end at 12 am I will attach the registration link to the contest in the description down below so do go and check it out register for the contest and have a lot of fun and I really really wish you all the best test now let's continue with the video a couple of other design patterns also includes a null object adapter design patterns you already mentioned iterated design pattern strategy ah chain of responsibility and these things so a very good book of design patterns I would suggest is head first design patterns apart from that you have my lld playlist and also you have you can follow sudoko's YouTube channel as well that is again a great YouTube channel for design patterns if you want to do it in C plus plus then you can follow key this channels for design patterns as well uh apart from that again there are a couple of other good ah Christian ukravi I think is one of I think if I get the name correct that is one also one good YouTube channel which is basically based on the same book that I just mentioned that is head first design patterns so if you're not a bookworm then you can probably watch his channel because he has taken the examples on the book and explained it to you guys but his usual videos are usually very very long ah so yeah I mean if you have time definitely go for it also I was suggested to read a little bit about uml diagrams because sometimes you have to design the classes and all in LED interview with the help of uml so having a like a knowledge about uml diagrams definitely helps and these are the things these are very basic things so I think not only for elderly interviews even if you go and join a company you would be overrun by the code base because there you would see a lot of usage of these design patterns if you know these Concepts even as a fresher this will really really help you a lot if you are going to work in a big tech company uh or any company as for instance because you would see the solid principles clean coding design patterns and action over there as well so even if you're not preparing for any interviews please please feel free to start preparing these things right now now this was all about the basics now let's come to how does a lld interview goes now to be very honest very few companies will directly ask you to implement a design pattern or stuff like that yeah they might ask you a couple of questions around the same but mostly uh LED interviews are basically of two types right one is the classical LED interview which we are going to talk about in depth in this video and another one is machine coding which I'm going to touch on but I won't go much and depth on machine coding in this video because machine coding is a different wall game and I would you know make a separate video on that but normally what I would say is machine coding is asked in companies which are not big product based companies which are like mostly startups uh they ask you machine coding uh but normally big tech companies uh like Microsoft Amazon you know these they mostly ask you the classical LED way of you know questioning first of all they would throw your question you have to clarify the requirements which is this is going to be a very important step you should ideally take five to ten minutes to clarify the requirements then they would ask you to list down the classes uh the entities basically the methods uh or the behaviors of those entities uh how those entities are inspected to interact with each other and then maybe they would ask you to implement some of the methods or behaviors right so this is how a classical adult interview looks like and if it's a machine coding round then you have to implement all the code from scratch and you have to make sure that it's a running code if they throw some test cases at you the your code runs passing all those test cases but if it's an LED round then you're not expected to write end to end code so make sure encoding down is generally for a longer duration of time it is for around one and a half two hours while the acetylene interview is generally around one hour now I'm going to talk about the topics that you should prepare in an lld interview uh again uh you can go ahead and prepare as many topics as you can but these are the topics that I prepared and I really think these are very very important topics because generally the LED questions are revolved around this in most of the companies I would also give you the machine coding important topics as well but I am not going to cover machine coding or what are the things that you need to cover in machine coding in great detail over here I would make a separate video on that so the first important question or what I call the hello world of lld problem is the parking lot so parking lot can also be asked as a machine coding question as well and can also come as an lld question as well right next up is snakes and ladders again Snakes and Ladders a lot of variations of snakes and ladders ah but you be prepared with the basic one and again this can be asked both as a classical reality question as well as a machine coding question if one of the top Tech startups where I interviewed for I face mix and ladders in one of the machine coding rounds right ah so yeah Snakes and Ladders is a very common question which can be asked in like in both ways so be prepared with it and since I'm talking about snakes and ladders also be prepared with you know chess Ludo tic-tac-toe these basically fall under the game section of lld so I if you're prepared with one or two of the designs and the other designs I'm very sure you would able to come up or maybe you can like write the class design on your own right I would come up with these videos very soon on my LED playlist so yeah as I said stay tuned and give me some time to prepare for these videos next up is uh bookmyshow again book my show is basically an hld question but I would suggest that prepare it as an LED question as well because again I was asked this question as a lld in one of the starters were interviewed for and there I was asked to deal with concurrency so yeah I mean be prepared with both sides like both LED and hld if you're preparing for bookmyshow next is ATM and another very important question of LED round is elevator system so elevator system can also be asked as a machine coding question as well so be prepared with it next is vending machine design a vending machine is something that I have already covered in my LED playlist so feel free to go and check out that in that very video I've also used State design pattern to you know design a vending machine next is hotel management which is again a very very commonly asked LED question another very important identity question is carpooling like uber Ola and also car rental like zoom car also some of the very important LED questions include designing a type ad designing a file system designing cricbuzz designing a social media platform like LinkedIn designing jeera we actually asked by Microsoft to one of my friends and yeah this is mostly it for the classical LD part and there are a couple of questions which you need to prepare for machine coding for which one of them a very important question for machine coding is split wise it's one of the very famous question asked in most of the top tech companies if they're taking a machine coding round and another one is rate limited which is again a very very famous question asked by atlassian also there are two questions which are kind of hard I feel and you might not expect these if you are a fresher or if you are having less than four years of experience these two include designing a messaging queue which again can be asked as a hld question but it is very rare that you would get a machine coding question for designing a messaging queue and another one is designing a distributed cache again distribute Cache can be accessed the HTT question but lld question it is kind of rare but be prepared or or if you are curious to know please go and read about it also you can go and read about some designing an online auction system using the Observer design pattern The Observer design pattern have already covered in my lld playlist so that's mostly it about lld and the Machine coding topics that you need to prepare for however for machine coding there are a lot of other things that you need to prepare for as well which I would make a separate video on and talking about the resources for lld I would say it's kind of very few and far between ah when it comes to online LED resources you can go and check out Educators lld course again this is not a paid promotion by them but the problem is that their course is paid for free resources I mean you there is no one single resources of now as I said you can watch Keith's videos gaurav sense videos your pseudo codes videos uh there are a couple of other channels as well they already mentioned or the thing which I used to do was search for you know let's say I want to learn about zoom car LED design so I used to just search for it in Google or YouTube go through a couple of medium articles or a couple of YouTube videos and take the best out of all the things so basically that's how you should study design be it lld or hld you should read multiple resources that your knowledge kind of enriches and then you kind of take the design that kind of aligns with you or you feel that it is something that you would be able to explain in a better interview right but when it comes to lld or system design in general so there is no one correct solution it all depends on uh whether you're able to defend yourself in an interview so basically you come up with a design and if you're able to successfully defend that design and interview uh with against the interviewer then ah you can deem it as a successful interview so that's the way basically it goes so yeah keep preparing keep reading and I would come up with more lld topics ah in on my channel so make sure that you stay tuned with me and yeah that's it for the video guys I hope that this brought some value to you and will help you in your preparation having said that I I will bid at you to you guys over here and we'll see in the next video with some other similar topic till then stay safe and goodbye [Music]