Cracking the Low Level Design Interview
What is a Low Level Design (LLD) ?
Low Level Design as the name suggests talks about the low level details of the system we are designing. It provides the detailed implementation logic for every component of our system that we outline in the High Level Design(HLD). It is very useful for writing the unit test plan and the specification of our system.
Expectations in an LLD Interview?
From the definition of LLD, it is evident that it is a very useful skill to create any backend system, even before you start coding we should have an idea and details regarding how our system will work at a low level. The Interviewer will try to gauge your knowledge of creating a scalable, flexible, and maintainable piece of software.
We can use and apply the design patterns and Object-Oriented Design Principles to come up with such a design. The interviewer can ask you to design any of the real-world systems like “Design a Parking lot system”, “Design Book my Show”. As with any system design interview, the interview will be like a discussion rather than a monologue. There are no right or wrong answers, the key is to gather the requirements correctly, ask clarifying questions to the interviewer if needed and work your way up to build a system that fulfills the goal of the system.
How to crack the Low Level Design Interview?
In this series of articles regarding LLD, we will try to create a framework that will help you in cracking the Low Level Design Interview. We will use the same framework to discuss most of the commonly asked problems in the Low Level Design Interviews.