What's Included
Course Modules
- Concepts: Classes, Objects, Inheritance, Polymorphism, Encapsulation, Abstraction.
- Single Responsibility Principle.
- Open/Closed Principle.
- Liskov Substitution Principle.
- Interface Segregation Principle.
- Creational Patterns: Singleton, Factory, Abstract Factory, Builder, Prototype.
- Structural Patterns: Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy.
- Behavioral Patterns: Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method, Visitor.
- Use Case Diagrams, Class Diagrams, Sequence Diagrams.
- Activity Diagrams, State Diagrams, Component Diagrams, Deployment Diagrams.
- Fundamentals of Database Schema Design.
- Normalization, Denormalization, Indexing.
- RESTful APIs, Principles of Good API Design.
- Versioning, Authentication, Rate Limiting, Error Handling.
- Review common system design interview questions
- Hands-on practice with mock interviews
- Basics of Software Architecture, Design Patterns for HLD.
- Designing Scalable and Reliable Systems.
- Trade-offs in Architecture Design.
- Fundamentals of Distributed Systems.
- Communication Protocols, Fault Tolerance.
- Consensus Algorithms, Eventual Consistency.
- How DNS Works, DNS Records, DNS Security
- DNS Services, DNS Load Balancing
- Concepts and Algorithms (Round Robin, Least Connections, etc.)
- Implementing Load Balancers, Load Balancing Strategies
- Basics, Use Cases, Implementation.
- Understanding Consistency, Availability, Partition Tolerance.
- Types of Caches, Caching Strategies, Cache Invalidation.
- How CDNs Work, Benefits, Popular CDNs.
- Implementing a CDN, Edge Caching.
- ACID Properties, Transaction Isolation Levels.
- Distributed Transactions, Two-Phase Commit, XA Transactions.
- Differences, Use Cases, Strengths, and Weaknesses.
- Deep Dive: Relational Databases (MySQL, PostgreSQL) vs NoSQL Databases (MongoDB, Cassandra, etc.)
- Vertical vs Horizontal Scaling, Sharding.
- Techniques and Best Practices for Scalability.
- Introduction to Kafka, Use Cases, Architecture, Kraft-ZooKeeper Integration.
- Microservices Architecture, Benefits, and Challenges.
- Communication Between Microservices, API Gateway, Service Discovery.
- Implementing Security Measures: Encryption, Authentication, Authorization, Secure Communication.