Translate an ambiguous problem statement into CONCRETE one. Articulate design decisions THROUGHOUT the discussions. Know the pros and cons of different approaches. Get comfortable with white drawing tools. Give mocks. Hyper Aware of time management. Think out loud. Focus on broader tradeoffs rather than low level designs.
I have been around the block and find those interviews have gone overboard in recent years. I have never seen any architects being asked software development questions.
I wish I had seen this before interviewing with SpaceX. They don't do too much Leetcode coding challenge but rather they emphasize on system design, the first phone interview is right on system design.
Just came here directly after getting asked system design in the first interview... The recruiter didn't even mention it in the preparation email, and this is an intern position, so I was kind of shocked.
They have a paid course "System Design Interview" - which is a series of 30 very in-depth articles on general topics and most asked interview questions (like "design youtube", "design url shortener", etc.) Each of these articles follows strict framework of presenting your interview answer. Some of these 30 articles are free btw, so you can check them out.
Just directly study the distributed systems course, it's a free/open online class and will teach you everything from a practical aspect, not these gimmicky jargons.
🎯 Key Takeaways for quick navigation: 00:36 🏗️ A system design interview assesses your ability to translate ambiguous problems into technical requirements, craft an architecture, and defend your design decisions. 01:44 💼 Success in a system design interview can determine whether you land a senior engineer position, making it essential to prepare seriously. 02:50 📝 To prepare for system design questions, practice by designing real-world applications, understand common design patterns, and anticipate questions related to your design choices. 04:53 🖌️ Become proficient in using whiteboards and diagramming apps to effectively communicate your design during interviews. 05:22 🔄 Regular mock interviews are crucial for practicing under realistic conditions, including time management and communication skills. 06:04 🕐 Manage your time wisely during interviews, understanding that design time is limited, and prioritize core requirements and scope. 06:32 🗣️ Explain your thought process, rationale, trade-offs, and decisions clearly during the interview, and document key aspects on the whiteboard for the interviewer to follow. 06:58 🤔 If you get stuck, stay calm, ask clarifying questions, and think incrementally to overcome obstacles and make progress in your design. 07:41 🛠️ Focused practice and using a structured approach can help you consistently succeed in system design interviews. Made with HARPA AI
I've done many SD interviews and can't ever feel like I have done well despite getting many things right. It isn't even that I am bad at this - I lead a team building prod grade ML/AI and data systems for paying customers. I deal with this kind of stuff everyday and yet the interview is always challenging. We need a better proxy for how SWEs / SEMs can do well on the job but until then this seems to be the way to do it
🎯 Key Takeaways for quick navigation: 00:21 🎯 System design interviews test your problem-solving, architecture, and communication skills. 01:30 💼 Success in these interviews impacts your job level significantly. 03:03 📝 Prepare by designing real apps, understanding components, and interactions. 04:13 🧩 Study design patterns, balancing, sorting, caching, and pros/cons. 05:22 🔄 Practice mock interviews to enhance your skills and time management. 06:04 🕒 Manage time wisely, think aloud, and explain decisions. 07:13 🚧 Overcome challenges with a structured approach. Made with HARPA AI
00:36 🏗 A system design interview assesses your ability to translate ambiguous problems into technical requirements, design architecture, and defend your decisions. 01:30 📈 Your performance in a system design interview can impact whether you land a senior engineer position or a more junior role. 03:03 🖌 Practice by designing real-world applications like Instagram or Uber, sketching out core components and interactions. 04:13 🔄 Study common design patterns, know their pros and cons, and be prepared to justify your choices during interviews. 05:49 🗣 During interviews, ask targetedquestions to understand requirements, manage your time wisely, think out loud, and explain your design decisions clearly.
@@Dnylpz94 lel I failed my interview at metro bank Question: make a pin design system Me: asking about how the app works and how it connects to other parts of bank Interviewer: actuallyy you have to ask me about what APIS exist 🤓🤓🤓👆👆 me: oh ok wtf FAILED INSTANTLY
please recognize entry level should not expect that of you, and the engineering job is misclassified as mid-level or higher. It used to eat me up on the inside, but now that I am mid-level software engineer, I can hold that PoV
@@RebeccaDun yeah the problem is it was a "graduate role" and they asked me that - absolute torture let me tell you that ive had a few more like that recently and its getting a bit stupid. Can't do much ive been trying to practice ever since I graduated but this market is a bit harsh. Can I ask you for advice, I got a final stage interview as a "Security and Compliance analyst" role but it is non technical and I don't know if it's worth it. The thing is that I can probably move to other roles with that skill (and I have no other options). What do you think? Just your honest advice. I really want a career as a Software Engineer, Data Analyst, Frontend or Security (you see the problem is my interests are wide and not deep I don't even know what I want)
@@RebeccaDun I am at senior level and even I rarely get asked these architecture questions... usually it's more like, a deep dive of a previous project i have led
Will be great if you can do a separate video for staff level system design interviews. There are still many resources or there such that anyone with few years of experience can do a decent job at system design. So it's important to differentiate.
I don't think you would need a dedicated video for staff level interview if you are skilled enough and I think it is up for the interviewer to assess that. In my opinion, this video caters to direction on how to do it generally.
Who typically has to do these kinds of interviews? Is it just devops people, or software engineers too? I am a senior level full-stack (front-end leaning) software engineer, and I have never done a system design interview in this depth. Usually i'll just be asked about a previous project I have led or created by myself, and we'll do a deep dive.
Thank you for all the hard work you've put into this. I truly appreciate the informative content and the approachable manner in which you presented it. On a related note, I'm curious - what tool or software do you use to create the animated infographics?
How do people handle these questions when you're attempting to narrow down the scope of the question, yet the interviewer really isn't giving you much. i.e. build new gym Clarifying questions, who is it for? What kind of gym? Where is the gym located? What constraints do we have? Interviewer doesn't give any good direction. I then make assumptions and then have to explain why, but during the interview this feels wrong
Hmm, I guess from a software perspective, you'd ask more software/application related questions. Are you building a website for the gym, or dedicated application, or both? If application, desktop, mobile, or both? What will the the primary use of the gym service? To let new clients register, to let employees manage administrative tasks, or both? Does it handle payment transactions? If so, how frequently, what discounts are offered, etc? For content, does it provide features for trainers and what type? Setting schedules, designing training programs? Do clients track their workouts and days attending? Do we send notifications/emails to clients when their next payments are near due? Things like that. At the end, you may get the following summary: * A desktop and mobile gym application for users and employees. * Users register in the app and make their weekly/monthly payments. * Each user has a unique QR code to scan for entering the gym. * Users get notifications when their subscription plans are about to expire, if they have not renewed it already. * Employees can view new employees, which plans they are on, as well as when their plans expire. * Employees can revoke or permit access for different clients using the application. * Etc Don't worry too much. In a 1 hour interview, it's usually fine to spend 3-8 minutes asking questions and clarifying or detailing features.
I'm not a programmer just a wannabe at this point but I think this a real-world scenario that you would face and they're trying to see how you would handle it. Most people don't know what they want until you show them a mockup, then they have all sorts of suggestions lol so they are testing to see if your thought process is recyclable /reusable and how you think forward and don't code yourself into a corner. Clients usually don't give you much to go on in the beginning so it's up to you to come up with a solution that is flexible and won't require "scorching the earth" to pivot in a new direction.
In hindsight, I think I only addressed a high level frontend side of it. Mostly because the question was "make a gym". Now if we were going into system level, you'd have to consider load balancers, databases, object stores, queues, caches, etc etc.
This is absolute perfection. I recently read a similar book, and it was absolute perfection. "Mastering AWS: A Software Engineers Guide" by Nathan Vale
I mean, if half of all the interviewees can perfectly design an instagram system, what are the big asses at FB with shiny titles sitting there for? If they can't, what's the point of the whole story telling?
My salary was reduced coz I couldn’t find the issues with a system design I’m a program manager not even an engineering resource to have such expectations , I feel it’s done to cover up inherent engineering team flaws , it’s all about whom to blame when the design fails. This salary reduction was done in one of the top 3 fortune companies
@@deonrobinson4293 Your comment is meaningless. The majority of "senior engineer" work occurs on existing/established designs. You don't need to design youtube before you can do 99.99% of software engineering..
@@eyesopen6110but what if you need to change your job? People would challenge you, have you always been working on the same thing for past ten years? Have you never thought about if you start things over, how to make it better? If you need to revamp things bit by bit to achieve that state, how would you do that? In reality we all try to avoid scraping working system, but it's still an important skill. And you can't proof that you worth more than a junior/ mid level dev who has been working there for 3 years. They are way more familiar in that company's existing projects.
If you cant system design you should never become higher than a mid level engineer. You’re going to create BS and have everyone have to work around your mediocrity
Translate an ambiguous problem statement into CONCRETE one.
Articulate design decisions THROUGHOUT the discussions.
Know the pros and cons of different approaches.
Get comfortable with white drawing tools.
Give mocks.
Hyper Aware of time management.
Think out loud.
Focus on broader tradeoffs rather than low level designs.
I have been around the block and find those interviews have gone overboard in recent years. I have never seen any architects being asked software development questions.
Interview processes in the whole industry have gone to shit
Preach. I'm applying to a software dev position not a systems/solutions architect.
What about the oposite way? Do software developers get asked about design?
@@fanaccount6600 I have been through a few Software dev/engineer interviews recently and there has always been a stage about system design.
@fanaccount6600 did you listen for the video? ) it's all about developer interviews
I wish I had seen this before interviewing with SpaceX. They don't do too much Leetcode coding challenge but rather they emphasize on system design, the first phone interview is right on system design.
Just came here directly after getting asked system design in the first interview... The recruiter didn't even mention it in the preparation email, and this is an intern position, so I was kind of shocked.
This isn’t quite my domain yet. But I love getting the exposure. With these videos I learn what I need to learn.
You got this, and it will be your domain someday if you want it! I truly believe anybody with the motivation can learn this stuff.
I would really love to see in depth series on that topic. This one is just touching the surface
I recommend reading his System design Interview books they got all the content that you want
they wont do that on RUclips for free! These videos are mainly promo for paid product/service :)
They have a paid course "System Design Interview" - which is a series of 30 very in-depth articles on general topics and most asked interview questions (like "design youtube", "design url shortener", etc.)
Each of these articles follows strict framework of presenting your interview answer.
Some of these 30 articles are free btw, so you can check them out.
Just directly study the distributed systems course, it's a free/open online class and will teach you everything from a practical aspect, not these gimmicky jargons.
@@cariyaputta Can you give a link?
🎯 Key Takeaways for quick navigation:
00:36 🏗️ A system design interview assesses your ability to translate ambiguous problems into technical requirements, craft an architecture, and defend your design decisions.
01:44 💼 Success in a system design interview can determine whether you land a senior engineer position, making it essential to prepare seriously.
02:50 📝 To prepare for system design questions, practice by designing real-world applications, understand common design patterns, and anticipate questions related to your design choices.
04:53 🖌️ Become proficient in using whiteboards and diagramming apps to effectively communicate your design during interviews.
05:22 🔄 Regular mock interviews are crucial for practicing under realistic conditions, including time management and communication skills.
06:04 🕐 Manage your time wisely during interviews, understanding that design time is limited, and prioritize core requirements and scope.
06:32 🗣️ Explain your thought process, rationale, trade-offs, and decisions clearly during the interview, and document key aspects on the whiteboard for the interviewer to follow.
06:58 🤔 If you get stuck, stay calm, ask clarifying questions, and think incrementally to overcome obstacles and make progress in your design.
07:41 🛠️ Focused practice and using a structured approach can help you consistently succeed in system design interviews.
Made with HARPA AI
I've done many SD interviews and can't ever feel like I have done well despite getting many things right. It isn't even that I am bad at this - I lead a team building prod grade ML/AI and data systems for paying customers. I deal with this kind of stuff everyday and yet the interview is always challenging. We need a better proxy for how SWEs / SEMs can do well on the job but until then this seems to be the way to do it
What software did you use for preparing the video, it looks amazing and very clear for us to get understand.
🎯 Key Takeaways for quick navigation:
00:21 🎯 System design interviews test your problem-solving, architecture, and communication skills.
01:30 💼 Success in these interviews impacts your job level significantly.
03:03 📝 Prepare by designing real apps, understanding components, and interactions.
04:13 🧩 Study design patterns, balancing, sorting, caching, and pros/cons.
05:22 🔄 Practice mock interviews to enhance your skills and time management.
06:04 🕒 Manage time wisely, think aloud, and explain decisions.
07:13 🚧 Overcome challenges with a structured approach.
Made with HARPA AI
Hey Sahn, great tips (4:47 especially)! Thank you! 😎✌️
00:36 🏗 A system design interview assesses your ability to translate ambiguous problems into technical requirements, design architecture, and defend your decisions.
01:30 📈 Your performance in a system design interview can impact whether you land a senior engineer position or a more junior role.
03:03 🖌 Practice by designing real-world applications like Instagram or Uber, sketching out core components and interactions.
04:13 🔄 Study common design patterns, know their pros and cons, and be prepared to justify your choices during interviews.
05:49 🗣 During interviews, ask targetedquestions to understand requirements, manage your time wisely, think out loud, and explain your design decisions clearly.
Most Important tips not only for System Design Interview but also for any technical interview. He has shared.
Why am I expected to know this sht as someone who didn’t graduate yet applying for an entry level software eng job??
Well, you’re here, that’s a great start
@@Dnylpz94 lel I failed my interview at metro bank
Question: make a pin design system
Me: asking about how the app works and how it connects to other parts of bank
Interviewer: actuallyy you have to ask me about what APIS exist 🤓🤓🤓👆👆
me: oh ok wtf
FAILED INSTANTLY
please recognize entry level should not expect that of you, and the engineering job is misclassified as mid-level or higher. It used to eat me up on the inside, but now that I am mid-level software engineer, I can hold that PoV
@@RebeccaDun yeah the problem is it was a "graduate role" and they asked me that - absolute torture let me tell you that ive had a few more like that recently and its getting a bit stupid. Can't do much ive been trying to practice ever since I graduated but this market is a bit harsh. Can I ask you for advice, I got a final stage interview as a "Security and Compliance analyst" role but it is non technical and I don't know if it's worth it. The thing is that I can probably move to other roles with that skill (and I have no other options). What do you think? Just your honest advice.
I really want a career as a Software Engineer, Data Analyst, Frontend or Security (you see the problem is my interests are wide and not deep I don't even know what I want)
@@RebeccaDun I am at senior level and even I rarely get asked these architecture questions... usually it's more like, a deep dive of a previous project i have led
Great video! Some key points were highlighted that I hadn't heard anyone else discuss. Thank you!
Great video. could you help inform which app you are using to create the animated flow/diagram? thanks!
Sorry guys, i have the same issue...
Can you help us???
Great videos learnt lot of things from these videos . Btw just curious what tool do you use for the architectural diagrams ?
Will be great if you can do a separate video for staff level system design interviews. There are still many resources or there such that anyone with few years of experience can do a decent job at system design. So it's important to differentiate.
I don't think you would need a dedicated video for staff level interview if you are skilled enough and I think it is up for the interviewer to assess that.
In my opinion, this video caters to direction on how to do it generally.
Who typically has to do these kinds of interviews? Is it just devops people, or software engineers too? I am a senior level full-stack (front-end leaning) software engineer, and I have never done a system design interview in this depth. Usually i'll just be asked about a previous project I have led or created by myself, and we'll do a deep dive.
what software do you use for your animations ! very, very attractive ! 😊
skip to 2:38 to get to the actual "how to"
Can you please suggest the tool you used to create these designs?
this channel is awesome, loving the videos
Great!
Which to do you use to make this kind of video demostration
Hey Sahn, great video, I was wondering what software you use for the visuals?
Anyone know what type of presentation system he's using?
Thx for all you videos.
I have a question, what program u use to do all these animations? Canvas?
After Effects.
This content is exceptional.
Hey Master, what tool do you use for make this kind of presentations?
He won't tell you
Thank you for all the hard work you've put into this.
I truly appreciate the informative content and the approachable manner in which you presented it.
On a related note, I'm curious - what tool or software do you use to create the animated infographics?
It must be Blender, I guest.
Also interested with the tooling used.
so, how to crack'em? did you forget to explain?
This is what you have to do to be the most ideal candidate ever
I wish I were born 10 years earlier. 😢
Same here
Why?
@@MahmudAdem-j6y Because the system designs are much simpler 10-15 years ago, and you still make the same amount of money.
Worthed subscribed
Please please please proofread the captions instead of using the auto-generated ones...
Amazing video. Thank you so much for sharing this kind of information! It's so well structured.
Thanks for this great introduction
Thanks for explaining it so nicely I am always scard of System Design rounds. After seeing your video I have got some confidence
Thank you 🌼
That's good information. How do you design your videos?
Step 1: design youtube
@@dave6012 I meant how such animations are put in the video. What is that software to add those animations.
I think he used, Adobe After Effects and Adobe Illustrator
Very informative video, how to make such high-quality animation?
Yeah right like he's gonna tell you
Hare Krishna Hare Krishna Krishna Krishna Hare Hare
Hare Rama Hare Rama Rama Rama Hare Hare ❤❤
Raadhe Raadhe ❤❤
Jai Shree Ram ❤❤❤
any suggestions for mock interview? I mean how can I attend?
pramp has mock system design interviews
@@eddanapudir what is pramp?
@@shasha6538It's a website where you can practice interviews so as to get used to the process beforehand.
@@shasha6538 dude wants to be an SWE but can't even bother googling
Thank you sir! I have subscribed.
I love you man ❤
be prepared !!!!!!!!
amazing videos
Thanks for sharing
Thanks a lot 👍
there is no perfect solution ❤
Tako je
How do people handle these questions when you're attempting to narrow down the scope of the question, yet the interviewer really isn't giving you much.
i.e. build new gym
Clarifying questions, who is it for? What kind of gym? Where is the gym located? What constraints do we have?
Interviewer doesn't give any good direction.
I then make assumptions and then have to explain why, but during the interview this feels wrong
Hmm, I guess from a software perspective, you'd ask more software/application related questions.
Are you building a website for the gym, or dedicated application, or both? If application, desktop, mobile, or both? What will the the primary use of the gym service? To let new clients register, to let employees manage administrative tasks, or both?
Does it handle payment transactions? If so, how frequently, what discounts are offered, etc?
For content, does it provide features for trainers and what type? Setting schedules, designing training programs? Do clients track their workouts and days attending? Do we send notifications/emails to clients when their next payments are near due?
Things like that. At the end, you may get the following summary:
* A desktop and mobile gym application for users and employees.
* Users register in the app and make their weekly/monthly payments.
* Each user has a unique QR code to scan for entering the gym.
* Users get notifications when their subscription plans are about to expire, if they have not renewed it already.
* Employees can view new employees, which plans they are on, as well as when their plans expire.
* Employees can revoke or permit access for different clients using the application.
* Etc
Don't worry too much. In a 1 hour interview, it's usually fine to spend 3-8 minutes asking questions and clarifying or detailing features.
I'm not a programmer just a wannabe at this point but I think this a real-world scenario that you would face and they're trying to see how you would handle it. Most people don't know what they want until you show them a mockup, then they have all sorts of suggestions lol so they are testing to see if your thought process is recyclable /reusable and how you think forward and don't code yourself into a corner. Clients usually don't give you much to go on in the beginning so it's up to you to come up with a solution that is flexible and won't require "scorching the earth" to pivot in a new direction.
In hindsight, I think I only addressed a high level frontend side of it. Mostly because the question was "make a gym".
Now if we were going into system level, you'd have to consider load balancers, databases, object stores, queues, caches, etc etc.
As it was mentioned, one should practice making stuff. Instagram, google etc. More practice, less questions and more answers...
Very helpful one
Tnkunso much
This is absolute perfection. I recently read a similar book, and it was absolute perfection. "Mastering AWS: A Software Engineers Guide" by Nathan Vale
Why does our bro speak in 0.5x?
I mean, if half of all the interviewees can perfectly design an instagram system, what are the big asses at FB with shiny titles sitting there for? If they can't, what's the point of the whole story telling?
0:45
Jestem od Grzesia!
The % of this video spent explaining why system designs interviews are important was too large.
"the square hole"
Software engineer software system design 2024
"System Design" is your BS product. Now a useless part of every interview. It has absolutely NOTHING to do with the actual job...WAKE UP everyone..
shut the f up when you don’t know anything
My salary was reduced coz I couldn’t find the issues with a system design I’m a program manager not even an engineering resource to have such expectations , I feel it’s done to cover up inherent engineering team flaws , it’s all about whom to blame when the design fails. This salary reduction was done in one of the top 3 fortune companies
That’s insane if you can’t system design you should never become a senior engineer. 😂
@@deonrobinson4293 Your comment is meaningless. The majority of "senior engineer" work occurs on existing/established designs. You don't need to design youtube before you can do 99.99% of software engineering..
@@eyesopen6110but what if you need to change your job? People would challenge you, have you always been working on the same thing for past ten years? Have you never thought about if you start things over, how to make it better? If you need to revamp things bit by bit to achieve that state, how would you do that?
In reality we all try to avoid scraping working system, but it's still an important skill. And you can't proof that you worth more than a junior/ mid level dev who has been working there for 3 years. They are way more familiar in that company's existing projects.
If you cant system design you should never become higher than a mid level engineer. You’re going to create BS and have everyone have to work around your mediocrity
Love your attitude about this bag and not caring about what people will say. kislux You are right keep your head up and no your priorities.