Ultimate LLD and HLD Roadmap | System Design RoadMap | LLD & HLD Topics to be covered for Interview
Summary
TLDRIn this video, Shreyash Jain outlines the roadmap for his 'Concept Encoding' playlist, focusing on low-level design (LLD) and high-level design (HLD) for system design interviews. He emphasizes the importance of understanding OOPs concepts and SOLID principles for LLD, covering 23 design patterns and their application to interview questions. Jain also discusses the future content, including 'Split Twice Simplify Algorithm' and various system design components like microservices and caching. He invites feedback for improvement and announces an upcoming Spring Boot playlist, promising comprehensive and free system design education.
Takeaways
- đ The video is aimed at both newcomers and regular followers of the channel, focusing on system design.
- đŻ The prerequisite for low-level design is a solid understanding of OOPs concepts like inheritance, polymorphism, and abstraction.
- đ The video emphasizes the importance of the SOLID principles as the foundational step in system design.
- đ The presenter has covered all 23 design patterns, linking them to interview questions and real-world applications.
- đ The teaching approach is to integrate design patterns with problem-solving, rather than teaching patterns in isolation.
- đ The video outlines a roadmap for future content, including design patterns and system design questions that are frequently asked in interviews.
- đ The presenter encourages viewers to suggest additional topics or questions to cover, emphasizing the community-driven nature of the content.
- đ ïž The video mentions the importance of understanding high-level components and concepts for system design, such as TCP, WebSocket, and microservices.
- đ The content is structured to build from foundational concepts to more complex system design questions, ensuring a sequential learning process.
- đ The presenter announces the upcoming launch of a Spring Boot playlist, indicating a broadening of the channel's content scope.
Q & A
What is the prerequisite for learning low level design according to the video?
-The prerequisite for low level design is a solid understanding of OOPs concepts such as inheritance, polymorphism, and abstraction.
Why are SOLID principles important in the context of low level design?
-SOLID principles are important as they provide a foundational understanding of object-oriented design, which is crucial for tackling low level design problems.
How does the video presenter approach teaching design patterns?
-The presenter teaches design patterns by covering a few important ones and then solving related design problems, rather than covering all 23 patterns and then moving on to questions.
What is the significance of the green tick marks and question marks in the video?
-The green tick marks indicate that the design patterns have been covered, while the question marks represent topics that are yet to be covered in the playlist.
Can you explain the teaching method the presenter uses for design patterns and interview questions?
-The presenter uses a method where they cover important design patterns and then solve interview questions that can be directly addressed using those patterns.
What is the presenter's approach to selecting which interview questions to cover?
-The presenter selects interview questions based on their frequency in top product-based companies and includes questions submitted by viewers, ensuring the content is relevant and practical.
Why is 'Splitwise Simplify Algorithm' considered important in the video?
-'Splitwise Simplify Algorithm' is important because it is a common interview question that tests the candidate's ability to handle complex algorithmic problems from a low level design perspective.
What does the presenter mean by 'the sequencing of the videos' in the context of the playlist?
-The presenter refers to the order in which the videos will be released, which may change depending on priority and viewer feedback, but the teaching pattern will remain consistent.
How does the presenter plan to handle the difference between low level design and high level design in terms of content delivery?
-The presenter acknowledges the difference by structuring low level design content in a sequential manner without chapters, as there is no one correct answer, while high level design requires learning specific concepts before solving questions.
What is the presenter's stance on providing free system design education?
-The presenter is committed to providing free, high-quality system design education, as evidenced by the depth and breadth of the content, with the goal of making system design knowledge accessible to all.
What new initiative is the presenter working on, as mentioned in the video?
-The presenter is working on a Spring Boot playlist, which will be launched after outlining the sequential content, aiming to further assist viewers in their interviews.
Outlines
đ Roadmap for Low and High Level Design
Shreyash Jain introduces the video's focus on the future plan for the channel's playlist, specifically targeting low-level design (LLD) and high-level design (HLD). He outlines the prerequisites for LLD, emphasizing the importance of understanding OOPs concepts such as inheritance, polymorphism, and abstraction. The video will cover SOLID principles, design patterns, and interview-based questions that have been asked in top product-based companies. Shreyash also discusses his teaching approach, which involves covering design patterns and then solving related questions. He invites viewers to suggest additional topics or questions to be included in the playlist.
đ Detailed Breakdown of HLD and Upcoming Content
In the second paragraph, Shreyash delves into the specifics of high-level design, highlighting the need to understand foundational concepts before tackling design questions. He mentions topics such as TCP, WebSocket, HTTP, client-server architecture, CAP theorem, microservices, and consistent hashing, which are crucial for solving complex design problems. He has already covered some of these topics and plans to address others, such as back-of-the-envelope estimation, SQL vs. NoSQL, and rate limiters. Shreyash also announces his intention to cover more advanced components and techniques in future videos, without providing a specific timeline, emphasizing the importance of understanding these components for effective system design.
đ Expanding Content with Spring Boot and Future Plans
Shreyash concludes the video script by discussing his plans to expand the channel's content with a Spring Boot playlist. He is in the process of outlining the videos for this new series and aims to launch it soon. He assures viewers that the focus on LLD and HLD will not be compromised by this new initiative. Shreyash invites feedback from the audience to improve the content and expresses his commitment to providing free, high-quality system design education. He ends the video with a call to action for viewers to engage with the content and contribute to the community, wishing them a happy New Year.
Mindmap
Keywords
đĄLow Level Design (LLD)
đĄHigh Level Design (HLD)
đĄDesign Patterns
đĄSOLID Principles
đĄInterview Questions
đĄOOD (Object-Oriented Design)
đĄSystem Design
đĄDSA (Data Structures and Algorithms)
đĄConsistent Hashing
đĄMicroservices
đĄCAP Theorem
Highlights
Introduction to the concept of encoding with a focus on low-level design (LLD) and high-level design (HLD).
Emphasis on the importance of understanding OOPs fundamentals for LLD.
Solid principles as a prerequisite for LLD, with the first principle being particularly emphasized.
Coverage of 23 design patterns, with a teaching approach that integrates pattern learning with solving design questions.
Explanation of how design patterns are applied to solve specific interview questions like the notify me pizza system.
Revealing that the discussed questions are actual interview questions from top product-based companies.
Future plans for LLD include covering split twice, simplify algorithm, and DSA interview questions.
Invitation for viewers to suggest additional questions for the LLD playlist.
HLD requires understanding concepts like TCP, WebSocket, HTTP, and microservices before solving design questions.
HLD content includes topics like CAP theorem, microservices design patterns, and scaling strategies.
Introduction of back-of-the-envelope estimation as an important skill for system design interviews.
Upcoming HLD videos will cover advanced components like Kafka, CDN, and storage systems.
No fixed timeline for HLD content release due to dependency on bandwidth and priorities.
Announcement of a new Spring Boot playlist in development.
Assurance that the focus on LLD and HLD will not be deviated despite the introduction of the Spring Boot playlist.
Call for feedback from viewers to improve and enhance the content.
Conclusion with a mission statement to provide free and accessible system design education.
Transcripts
hello hey guys welcome to concept
encoding and this is shreyash Jain and
today's video is going to be very very
important for those who are new to this
Channel and for those who are already
following this channel for lld and hld
because today I am going to tell you
about the roadmap the future plan for
this playlist like what we have covered
what we are going to cover what are the
topics which we have to cover so let's
start with the low level design roadmap
So currently the prerequisite for the
low level design is definitely the oops
fundamental
right so if you aware of what is
inheritance polymorphism abstraction you
are good with the low level design right
any language C plus plus Java python all
are good any oopsy oops language is good
to go for the low level design right
second what is the second uh step after
of fundamental that which is the
prerequisite the second is start with
the solid principle
so if you are following my llt playlist
you will know that solid principle I
have protect number one
right so solid is always the number one
and it is give you a base right what is
exactly of principles
after that here comes our design
patterns
right so we have total 23 design
patterns and I have covered this all
green tick marks and this green text
Mark question marks I have covered so my
way of teaching is I don't want to cover
all 23 design patterns and then start
with the questions my way of teaching is
like I covered few important design
patterns and the questions can be solved
on top of it so there are certain
questions which can be solved directly
using the design patterns like notify me
pizza system right here if you see the
vending machine file system ATM so there
are certain question which can be solved
directly via patterns but there are
question in which you use those patterns
right so this is my way of teaching like
instead of putting all design patterns
and then go for questions I covered some
important design pattern and then solved
questions on top of it right and I will
follow the same for the rest of the
design patterns which are pending and
similarly the questions which are
pending I will use the design patterns
right as far as we cover
so till now if you see that the
questions which I have covered and one
more thing I want to tell you that these
questions are not something which I have
come up with myself
these questions these all questions has
been asked in an interview
I will refrain from taking the name of
the companies in which this question
asked but you can just search with the
name question name and see in which
companies it has been asked you will get
a lot all good product based companies
this question has been asked in any one
of the top product based companies some
of the question I got from you guys some
of the questions I have come up after my
analysis like in which company this
which company is asking what a lady
question
so if you see that notify me very
important Pizza Billing System parking
lot very important snake and ladder
elevator system car rental system
like logging system tic-tac-toe game
bookmyshow can see handing vending
machine ATM chess game
file system split twice very very
important so till now we have covered
all those things now what's the future
if you see that this is the up next
split twice simplify algorithm this is
very very important from l d perceptive
plus DSA interview question also we have
to implement also right so this is very
very important
then if you see that this is the list
of the questions which I am going to
cover please go through it
and any questions left or you think
there is another question which I
haven't included it feel free to ping me
on comment I will definitely go through
it and add it into the bucket list
right so this is something I have put in
the note
so what I have meant is like the
sequencing of the videos like here if
you see that the future videos what the
future in which this few videos I am
going to cover the sequencing might be
different like what I have listed here
so let's say listed after split twice
simplify algorithm I have put design
cricbuzz it is possible that I might
cover some other question before
cricbuzz depending upon the priority
let's say if anybody has certain
interview in some companies and
any question which has been frequently
asked and if the request like then I
should uh consider that let's cover
those first
so depending upon the bandwidth
depending upon the priority so the
sequencing to cover this question can be
changed so that just a heads up guys
so but my pattern of teaching will be
same I am going to cover some design
patterns and then I will solve our
questions on top of it okay so this is
low level design and one more thing guys
there is no codes for low level design
like we have in hld
right so actually low level design is
different from actually is like there is
no course chapter one chapter two
chapter three nothing
right so and there is no one correct
answer
so that's why I follow this structured
manner so that it can be learned in a
sequential Manner and important for the
interview also all from this all
everything is from the interview
perspective guys
so now let's come to the hld so as I
told you it is different from already
like why because here we have to first
learn some concept before even we are
able to solve the questions for example
you cannot if you don't know consistent
hashing you cannot come up with an
interview in something
similar to consistent hashing right you
have to know this technology before
so that's why the questions if you see
that the bigger questions certainly lies
at the bottom
of the high level design but if you see
that there are certain question which
lie at the top also
right so here if you see that certain
question lie on the top also so the my
pattern of teaching is same as soon as I
will cover the topics I will solve the
question based on it but if
certain topics are left which has to be
learned before solving the questions so
that's why questions are a little bit
bottom
so now in the hld this again green ones
I have covered right so here if you see
that these are base what is TCP
websocket http webrtc
client server and peer-to-peer
architecture what's the difference cap
theorem very important right
microservices design pattern here in
this Saga is very important
right and
stranglers sometimes are sometimes not
but Saga don't miss it
right this is very important scale from
zero to million user right so based on
top of it information we have done it
right and consistent hashing I have
taught so these are all the topics using
this I am teaching the topics and then
we will solve the question
right so back of the envelope estimation
is a very important many companies ask
this one like uh how many servers you're
gonna need how many memory you're gonna
need we need to know the calculation
dynamodb design key value store where we
use consistent hashing so that's why
it's a sequential
SQL versus no SQL which DB to use very
very important design WhatsApp again
very important rate limiter very
important so this is the upcoming video
here autocomplete system or we can also
say that iPad system
right but after that what you can expect
from the hld so we will cover the more
agility components right like Kafka cues
proxies of our CDN storage type block
storage file storage S3 raid file system
Bloom filters Markle Street gaussian
protocols right caching
so this is all the high level components
right or you can say that tax
which we have to know because in when we
will solve this question right we are
going to use this one
then how to scale database so horizontal
vertical partnering mirroring leader
election indexing all this thing we
should know then only we can be able to
solve this question right so again guys
here I will try I will not give any
timeline because it's depend upon my
bandwidth but I will try to cover as
soon as possible these things
but these are the roadmap which I am
following for the high level and low
level design but and I can pretty much
tell you that you will not find this
content on any of the paid contents also
this kind of breadth and this kind of
depth
right so I hope you are enjoying the
content and stay tuned and last those
who stay till now I want to tell you
that there is one more I want to tell
you that latest update or you can say
that news that I have started working on
a spring boot playlist man
I am listing down all the sequential
wise videos I have to cover and once I
am done with this most probably by Fab I
will be launching this playlist and I
hope that would help you more in your
interviews right but let's but again I
promise you that low level design and
high level design Focus will not going
to uh deviated because of the
springboard playlist it's all just I
have to manage but yes for sure these
are more priorities and I am totally in
line what we have to cover
okay guys now I hope you know little bit
how we are going
where we are going in 2023 what all you
can expect from this channel any
feedback you have for me if something
you have in your mind can be improved
please share in the comment section I
will definitely love to improvise like
any feedback I can definitely enhance my
content so I'm open for the feedback
guys so let's work together let's make
don't pay for system design system
design let it be what I say is like
system design for all system design is
free so let's continue work toward it
have a good day guys and happy New Year
bye
Voir Plus de Vidéos Connexes
System Design Interview: A Step-By-Step Guide
System Design Primer âïž: How to start with distributed systems?
What is system design process in software engineering ?
How to Answer System Design Interview Questions (Complete Guide)
Java Spring Boot 3 Years Experience Interview
System Design Mock Interview: Design Instagram
5.0 / 5 (0 votes)