#system_design ⭐️⭐️⭐️
Asking a lot of questions, disambiguating the problem statement, and defending your answer are important in a System Design interview.
Today I was thinking about structuring the interview flow and came up with this:
Topics to discuss:
Clarify functional requirements and non-functional requirements:
1. Frontend (functionality, components) — Web, Mobile (native, cross-platform, PWA=progressive web app)
2. Backend (micro-services, REST & GraphQL API, database (NoSQL, SQL, special types), message queue=polling & streaming, caching, rate limiting) — Redis, RabbitMQ, Celery, Kafka
3. Infrastructure (regions, no. of users, latency, throughput, availability=redundancy, scalability & elasticity, workers, load balancing, database replication & sharding) — AWS
4. Monitoring and logging — metrics, can be used to decide when to scale out and down the system
Other topics to discuss:
1. CI/CD — Testing (functional and non-functional), K8s, Cloud (IaaC), feature flags, deployment strategies
2. System risks
I believe, based on these topics, you can come up with new questions during the interview.
Asking a lot of questions, disambiguating the problem statement, and defending your answer are important in a System Design interview.
Today I was thinking about structuring the interview flow and came up with this:
Topics to discuss:
Clarify functional requirements and non-functional requirements:
1. Frontend (functionality, components) — Web, Mobile (native, cross-platform, PWA=progressive web app)
2. Backend (micro-services, REST & GraphQL API, database (NoSQL, SQL, special types), message queue=polling & streaming, caching, rate limiting) — Redis, RabbitMQ, Celery, Kafka
3. Infrastructure (regions, no. of users, latency, throughput, availability=redundancy, scalability & elasticity, workers, load balancing, database replication & sharding) — AWS
4. Monitoring and logging — metrics, can be used to decide when to scale out and down the system
Other topics to discuss:
1. CI/CD — Testing (functional and non-functional), K8s, Cloud (IaaC), feature flags, deployment strategies
2. System risks
I believe, based on these topics, you can come up with new questions during the interview.
#system_design System Design Example
Cracking the System Design Interview - Azimjon Pulatov
UZ: https://youtu.be/A3AIaWhxb4s
Cracking the System Design Interview - Azimjon Pulatov
UZ: https://youtu.be/A3AIaWhxb4s
#system_design System Design Example
Amazon System Design Preparation
EN: https://youtu.be/gf8R7sgme6o
Amazon System Design Preparation
EN: https://youtu.be/gf8R7sgme6o
@Rustam-Z⚡️ pinned «#system_design ⭐️⭐️⭐️ Asking a lot of questions, disambiguating the problem statement, and defending your answer are important in a System Design interview. Today I was thinking about structuring the interview flow and came up with this: Topics to discuss:…»
#system_design ByteByteGo - Alex Xu
I started reading the "System Design Interview" book today, after finishing SystemsExpert from AlgoExpert.
ByteByteGo has a nice blog and YouTube channel. I watched some videos, they are coooool.
The book has two editions. The second edition is not available as pdf.
I started reading the "System Design Interview" book today, after finishing SystemsExpert from AlgoExpert.
ByteByteGo has a nice blog and YouTube channel. I watched some videos, they are coooool.
The book has two editions. The second edition is not available as pdf.
#system_design
System Design Interview Samples
https://www.youtube.com/playlist?list=PLrtCHHeadkHp92TyPt1Fj452_VGLipJnL
System Design Interview Samples
https://www.youtube.com/playlist?list=PLrtCHHeadkHp92TyPt1Fj452_VGLipJnL
👍1
#system_design
Availability, Resilience & Reliability, and Consistency.
Availability = uptime, ability to respond to requests. Availability refers to the ability of a system or service to be operational and accessible when needed. In other words, it is the measure of how often a system is available for use.
Resilience/reliability = ability to handle failures and continue to function. Refers to the ability of a system to perform its intended functions under specified conditions for a specified period of time. A reliable system is one that can be counted on to work consistently and dependably, without failing or producing errors. Reliability is the outcome and resilience is the way you achieve the outcome.
Consistency = ability to maintain the same level of performance or behavior over time, refers to the ability of a system or service to provide the same results every time it is used, under the same conditions. In other words, it is the measure of how predictable a system is.
Availability, Resilience & Reliability, and Consistency.
Availability = uptime, ability to respond to requests. Availability refers to the ability of a system or service to be operational and accessible when needed. In other words, it is the measure of how often a system is available for use.
Resilience/reliability = ability to handle failures and continue to function. Refers to the ability of a system to perform its intended functions under specified conditions for a specified period of time. A reliable system is one that can be counted on to work consistently and dependably, without failing or producing errors. Reliability is the outcome and resilience is the way you achieve the outcome.
Consistency = ability to maintain the same level of performance or behavior over time, refers to the ability of a system or service to provide the same results every time it is used, under the same conditions. In other words, it is the measure of how predictable a system is.
#advices
There are a lot of resources on the Internet, believe me, you can’t master everything and you can't finish all of them 🥲, choose some you like and just focus on them!
There are a lot of resources on the Internet, believe me, you can’t master everything and you can't finish all of them 🥲, choose some you like and just focus on them!
#system_design System Design Interview Template
https://workat.tech/system-design/article/system-design-interview-template-sxk5oafe1oty
https://workat.tech/system-design/article/system-design-interview-template-sxk5oafe1oty
👍3
Finished reading the "System Design Interview" book! Watching SystemsExpert really helped me finish this book faster.
Moreover, thanks to ChatGPT for answering all my obscure and stupid questions.
Now I feel like I don't know anything. Even simple concepts that I thought I knew are sometimes unclear to me. Yes, there is much to learn, much, much. I want to learn how things really work, and why.
I only focused on coding my pet projects in my language. But now I really feel that coding is nothing. Creating a service/product through programming that solves some problems is much more important.
So I think it's a great moment to start again as a junior but with a cooool team, with really experienced guys who are always ready to share their knowledge and answer all your questions.
Moreover, thanks to ChatGPT for answering all my obscure and stupid questions.
Now I feel like I don't know anything. Even simple concepts that I thought I knew are sometimes unclear to me. Yes, there is much to learn, much, much. I want to learn how things really work, and why.
I only focused on coding my pet projects in my language. But now I really feel that coding is nothing. Creating a service/product through programming that solves some problems is much more important.
So I think it's a great moment to start again as a junior but with a cooool team, with really experienced guys who are always ready to share their knowledge and answer all your questions.
👍11🔥1
👍2
How to watch AlgoExpert videos?
1. Watch the problem description. Pause video. Try to understand the problem, inputs and outputs.
2. Solve by yourself similar problems in leetcode.
3. Watch AlgoExpert solution.
1. Watch the problem description. Pause video. Try to understand the problem, inputs and outputs.
2. Solve by yourself similar problems in leetcode.
3. Watch AlgoExpert solution.
❤2🔥1
How to watch SystemsDesign videos?
1. Take notes
2. Understand why and how any concept is used
3. Use ChatGPT and Google to get answers to your questions
I have my own template for answering to System Design question. The most important thing in System Design is scalability. Will share later.
1. Take notes
2. Understand why and how any concept is used
3. Use ChatGPT and Google to get answers to your questions
I have my own template for answering to System Design question. The most important thing in System Design is scalability. Will share later.
❤2🔥2