The video offers a sharp distinction between HLD and LLD, correctly identifying that architectural thinking is the only skill AI cannot yet automate. It is a necessary reality check for developers who mistake writing code for building scalable systems.
Deep Dive
Prerequisite Knowledge
- No data available.
Where to go next
- No data available.
Deep Dive
System Design Simplified ๐ | Why Everyone is Learning ItAdded:
Nowadays, AI can write code for you.
You'll ask to the chat GPT, "Can you create an order API?"
Boom, your code will be ready within 1 minute.
You need some SQL query?
AI will give it to you.
You need to design some front-end page?
AI generates that, too.
So, then why are companies still taking multiple interview rounds?
Why are they suddenly so interested in system design?
Because companies are slowly realizing something. Writing code is become easier nowadays, but building system that survive millions of user, that is still too hard, isn't it? So, well, hi everyone. Welcome back to Java Techie. Starting today, we're beginning a complete system design series from beginner to advanced level. And before you panic hearing the words scalability, distributed system, Kafka, DB sharding, scaling, all those things, first, relax.
In this series, we are not going to start with complicated architecture diagram. We'll first understand why system design exist, why companies are care about it, and why every back-end engineer should learn it. Okay? So, we'll go step by step. Now, first, let me ask you something.
Suppose tomorrow you want to create your own food delivery app. You have few friends, and somehow you design the application.
Initially, you're getting 20 or 50 people who are using your application, and you have one server that is enough to handle the traffic. You have one database that is enough for your project. Everything works perfectly fine. You feel like, "Bro, startup life is easy." But then one day, a famous influencer promotes your application, and suddenly you get 5 lakh users who open your application at the same time.
Now your backend server looks at you like, "Brother, why are you doing this to me?" Your application becomes slow, order fails, payments get stuck, your database crashes, and now suddenly your problem changed.
Earlier, your focus was how to write the API, how to develop the application, but now your focus becomes how to handle huge traffic, how to avoid crashes. How does Amazon survive Big Billion's Day?
How does WhatsApp handles millions of messages?
Why doesn't YouTube go down every Sunday evening? And that is where system design starts. You are not only writing the code, you are thinking like an engineer.
If I'll write the code in such a way, or if I'll design my application in such a way, then what could be the impact? So, system design is basically engineering thinking, not just how you write the code. But while design an application, you also need to think, can my system survive real-world problems? Because when you're learning some concept, we do follow some tutorial projects, right?
But if you'll compare that tutorial project with the real-time project, then both are completely different world.
For example, in tutorial project, we create two or three service, and each point to the single database. Okay? Each service has their own database. We usually use NoSQL or SQL DB, either one.
Then hardly for testing, two or five people logged into your application.
And hardly we do 10 to 15 call API call or Kafka event published for our testing. But real companies deal with millions of users. Fallback mechanism, failure handles, slow database, network issue, scalability problem.
Let's take one simple example to understand it.
Let's say during IRCTC Tatkal booking, everyone clicks at exactly 10:00 a.m.
Millions of user wants to travel through train and they are going with the Tatkal booking and all logged in, all open the app at same 10:00 a.m.
Now, imagine if their backend was designed like a college mini project, system would disappear in 3 seconds.
Or take another example, Big Billion Day. Let's say Flipkart is giving Big Billion Day and on the day of event, millions or trillions of user logged in at the same time.
Now again, if they design their application like a simple tutorial project and simply system will crash, right? And this is exactly why companies ask system design in interviews because nowadays, honestly, almost everyone can write crowd APIs. Even AI can generate them with better way.
But companies are not paying huge salaries for creating controller service repository pattern. They want engineers who can think. For example, anyone can build payment API.
But interviewer wants to know, can your payment system avoid duplicate transactions?
Can it survive server crash?
Can it handle 1 crore users?
What happen if database goes down? How will you scale the system? Basically, they are checking, can this person think like an engineer, not as a coder? Okay?
So, that's why system design is very important nowadays.
Now, you might think, okay, but somehow I convinced to start learning system design. I will start it from today.
But once people enter to the system design world, two dangerous term immediately attack them.
HLD and LLD.
HLD stands for high-level design. LLD stands for low-level design. And beginners usually pretend to understand them in a meeting. So, let's simplify this in the easiest possible way. What do you mean by HLD and what do you mean by LLD? Okay? So, it is very simple. You no need to confuse. Let me give you one simple and funny example to understand it.
Let's say your family gives you responsibility to build a dream house.
Now, what do you will do the first step?
You will not directly go to the shop and buy some colors. Or you will not buy the TV directly. Or you will not customize the sofa, right? First, what you will do? First, you will get the floor plan. Let's say this is your home. First, you need to think, okay, where will be the entry gate I will keep? This will be my entry gate. Something like this.
The next, you will think, okay, where should I keep my bedroom and guest room? Let's say you are keeping here. Okay?
This section is the bedroom. And this one is the guest room. Or you can just change it as per your design.
Now, once that is done, you will think about, okay, I also need to add some TV unit.
Let's say this is your TV unit.
Okay? And similarly, you also need to add some kitchen.
So, let's say you keep the kitchen this side.
Okay? Something like that. At high-level, you will think about the floor plan.
Okay? Once you are thinking about the floor plan, then you will think about, where should I keep the parking area? If this is my home, I should keep parking area something near close to my wall.
Then, where should I keep the garden?
Let's say I will keep the garden behind my home. Something like this.
Correct? Now, again, you need to think about overall structure. So, this is your high-level plan to design a home.
Okay? So, this big picture planning is called HLD, high-level design. So, I believe this is clear. While design a home, first you need to come up with the floor plan. Similar way to design any application, first you need to think about these things.
What all services you will use? Which database you will use?
Which cache you will use? Whether it is Redis or something else? Which type of communication you need to make between the services? Whether it is synchronous or asynchronous? How you will route the request? A pay gateway? How the communication flow will be happen between the services? Okay? How you will apply the authentication security? How you will apply the load balancer to distribute the traffic? All those things you need to think while design any application, same as while designing the floor plan. Okay? So, if you will compare this floor plan to understand HLD, then you can easily relate why I wrote those statements. Okay? So, this is what called HLD. HLD always you will think at high-level.
What all things I need to keep to design this particular scenarios or to design this particular application. Okay? Now, let's move to the LLD. LLD stands for low-level design. Now, you have this particular home. You have guest room, bedroom, TV unit, kitchen, garden, parking, everything.
Now, what do you mean by LLD in this particular building home scenarios?
Now, when you will keep the TV unit, where should you add the TV? Whether it is towards your entry gate or it should be back to the wall?
Okay? Now, if I will keep it here, where should I add the socket board?
Electronics board? Whether I need to add a wall here, partition here and add it or I should keep the TV unit in the backside and I will add it here somewhere here.
Okay? Now, kitchen. How can I make the kitchen here?
Which kind of a kitchen slab I need to apply?
Or how how can I design the kitchen drawer?
Okay?
Also, how can I get the gas pipeline connection to this kitchen?
Where should I add that meter? Or if I have washroom here in the guest room and bedroom, where should I keep the pipe connection? All these internal things like how can I add the colors? Which color I need to add in each wall? Which type of wallpaper I needs to apply?
All these internal things is called low-level design. Okay? And same thing, if you'll try to relate with the software term, classes, objects, methods, design patterns, schema design, all comes under LLD. Because LLD meant for implementation. HLD meant for high-level design. Okay? So, let's say you're designing something, inventory service.
Okay? So, to design inventory service, what classes I need to keep? I need to keep some classes, stock in service, stock out services, like that. What object I needs to define? Okay? Whether I should object at global level or method level or field level. Which types of methods I need to define? Static methods or instance method? Those kind of internal implementation or I should go for interface, abstract class? Which type of design patterns you will use for your project? Factory, singleton, there are different design pattern, right? Which design pattern you'll prefer to implement for your different scenarios while designing the inventory service?
How will you design the schema, the database schema? How many tables you will keep? How you will do the mapping between the tables? All those technically comes under low level design. Okay? So, in simple word, HLD stands for high level design, which will be a big picture architecture. And similar way, LLD stands for low level design, which is mostly internal implementation details. Okay? And trust me, this is just the beginning. What we will be discussing here, we'll understand each of them in details.
So, in this series, we'll slowly understand why Redis is everywhere, why Kafka becomes so popular, why companies use load balancer, how Netflix scales, how WhatsApp handles millions of messages, how Big Billion Days or Flash Sale system survive huge traffic, step by step from zero to advance. Okay? So, if you are preparing for product companies, learning back-end development, interested in scalable architecture, or curious how real-world system work, then this series is going to help you a lot. And don't worry, if you are a beginner, we're starting from absolute zero. In the next video, we'll deeply understand the common terminology, thought process, and standard approaches used in almost every system design discussion. We'll also learn the best practices engineers follow while designing scalable system from scratch.
So, subscribe to the channel and comment below, start the series. I'll see you in the next video.
Related Videos
Agentforce NOW AMA: Build with React and Salesforce Multi-Framework
SalesforceDevs
490 viewsโข2026-05-28
How agent o11y differs from traditional o11y โ Phil Hetzel, Braintrust
aiDotEngineer
450 viewsโข2026-05-28
WEB TECHNOLOGIES UNIT-2 | Degree 4th sem BCOM Computers web technologies unit-2 full explanation๐ฏโ
LearnwithSahera
1K viewsโข2026-05-29
More tests are always better? How to use AI to identify tests that bring little value
Alliance4Qualification
335 viewsโข2026-05-29
Search Algorithms Explained in 60 Seconds! ๐ค๐จ
samarthtuliofficial
218 viewsโข2026-06-01
People of Game of Thrones using JavaScript DOM
AltCampus
296 viewsโข2026-05-30
Introduction to Problem Solving Part - 1 | Lecture 1 | Intermediate DSA
ascensionix
107 viewsโข2026-05-29
So What's Odin Lang Even Good For
TechOverTea
131 viewsโข2026-06-01











