Principles: Encapsulation Inheritance Polymorphism Abstraction Design patterns: Singleton Factory Observer Strategy Adapter System design fundamentals: Scalability Cache Load Balancing Sharding