Software Engineering Reference¶
A comprehensive reference guide for software engineering concepts, patterns, and practices. This repository covers everything from object-oriented principles to distributed systems design, making it ideal for interview preparation, skill development, and quick reference.
216 markdown files with 1,065 SVG diagrams — every concept is explained with visual diagrams, code examples, and interview discussion points.
How to Use This Reference¶
- Interview Preparation — Start with Data Structures & Algorithms for coding interviews, then move to Distributed Systems for system design interviews
- Skill Development — Work through sections sequentially, as they build upon each other
- Quick Reference — Use the table of contents to jump directly to specific topics
- Deep Dive — Each markdown file contains visual SVG diagrams, code examples, and interview discussion points
Structure¶
Software-Engineering-Reference/
├── 01. Object Oriented/
│ └── 01. Patterns and Principles/ # 21 files
├── 02. Languages/
│ └── 01. Java/ # 8 files
├── 03. Backend Frameworks/
│ └── 01. Spring/ # 7 files
├── 04. Data Structures and Algorithms/
│ ├── 01. Data Structures/ # 7 files
│ ├── 02. Algorithms/
│ │ ├── Search/ # 4 files
│ │ └── Sort/ # 5 files
│ ├── 03. Complexity Analysis/ # 5 files
│ └── 04. Interview/
│ ├── General/ # 1 file
│ └── Patterns/ # 16 files
├── 05. Distributed Systems/
│ ├── 01. Core Concepts/ # 11 files
│ ├── 02. Architectures/ # 10 files
│ ├── 03. API & Communication/ # 4 files
│ ├── 04. Data & Storage/ # 10 files
│ ├── 05. Cloud/
│ │ └── AWS/ # 21 files
│ ├── 06. Infrastructure & Operations/ # 4 files
│ ├── 07. Observability & Reliability/ # 7 files
│ ├── 08. Security/ # 7 files
│ ├── 09. Common Issues & Solutions/ # 8 files
│ ├── 10. Key Technologies/ # 11 files
│ ├── 11. Networking/ # 4 files
│ ├── 12. Advanced Topics/ # 8 files
│ └── 13. Design Interview/
│ ├── 01. Basics/ # 2 files
│ └── 02. Design References/ # 23 files
├── 06. Engineering Practices/ # 7 files
├── 07. Testing/ # 4 files
└── images/ # 1,065 SVG diagrams