Learnings from System Design & Tech Interview Course
Scalability & Resiliency
- Introduction to Scalability: Understanding horizontal and vertical scaling
- Failover Strategies: High availability and disaster recovery mechanisms
- Sharding Databases / NoSQL: Partitioning strategies for handling large data
- Data Lakes: Managing and processing large-scale unstructured data
- ACID Compliance & CAP Theorem: Trade-offs in distributed databases
- Using CAP to Choose a Database: Consistency, Availability, and Partition Tolerance considerations
Caching & Content Delivery
- Caching Introduction: How caching improves performance
- Caching Technologies: Memcached, Redis, and other solutions
- Eviction Strategies: LRU, LFU, FIFO, and other caching policies
- Content Distribution Networks (CDNs): Enhancing web performance and scalability
Distributed Storage & Big Data
- Introduction to Scaling Data: Challenges and best practices
- Distributed Storage Solutions: HDFS, Amazon S3, Google Cloud Storage
- HDFS Architecture: How Hadoop Distributed File System works
- Apache Spark: Big data processing framework overview
- Cloud Computing Overview: Fundamentals of cloud-based architectures
Algorithms & Data Structures
- Linked Lists: Concepts and implementations
- Graphs & Graph Traversal: BFS, DFS, and their applications
- Search Algorithms: Binary search, linear search
- Sort Algorithms: Quick sort, merge sort, bubble sort
- Information Retrieval: Indexing and searching techniques
System Design Interviews
- Defining Requirements: Clarifying business and technical needs
- Design Strategies: Layered architecture, microservices, event-driven design
- Mock Interviews: Practicing real-world system design scenarios
System Design Case Studies
- URL Shortening Service: Architecture and implementation
- Restaurant Reservation System: Handling bookings and availability
- Web Crawler: Designing scalable web scraping solutions
- Top-Sellers System: Tracking and ranking best-selling items
- Video Sharing Service: Handling video uploads, streaming, and distribution