Рет қаралды 805,687
Systems design is the use of computer engineering principles to build large scale distributed systems. It involves converting business problems and requirements into technical solutions. Senior engineers use system design patterns to make reliable, scalable and maintainable systems.
We mention 10 tips/terms used by engineers when designing systems:
00:00 Intro
00:38 Vertical scaling
01:07 Preprocessing using cron jobs
01:31 Backup servers
02:12 Horizontal scaling
02:37 Microservices
04:00 Distributed Systems
05:24 Load Balancing
06:39 Decoupling
07:15 Logging and metrics calculation
07:45 Extensibility
08:38 Low-level system design
Looking to ace your next interview? Try this System Design video course! 🔥
interviewready.io
Course chapters:
1) Design an email service like Gmail
2) Design a rate limiter
3) Design an audio search engine
4) Design a calling app like WhatsApp
5) Design and code a payment tracking app like Splitwise
6) Machine coding a cache
7) Low-level design of an event bus
The chapters have architectural diagrams and capacity estimates, along with subtitled videos. Use the coupon code of 'HELLOWORLD' to get a 20% discount!
References:
Scalability Basics: • System Design BASICS: ...
Load Balancing: • What is LOAD BALANCING...
Microservices: • What is a MICROSERVICE...
Single Point of Failure: • How to avoid a single ...
Backups: • Distributed Consensus ...
Health checks: • Service discovery and ...
Designing Data-Intensive Applications - amzn.to/2yQIrxH
System Design Playlist: • System Design Playlist
You can follow me on:
LinkedIn: / gaurav-sen-56b6a941
Facebook: / gkcs0
Quora: www.quora.com/profile/Gaurav-...
Twitter: / gkcs_
#DistributedSystems #SystemDesign #Microservices