This project shows my understanding of backend architecture and performance.
Each company had a different situation, and my goal was to pick the best design that fits it .simple, logical, and efficient.
project/
│
├── analysis_report.pdf # Main report with my choices and reasoning
│
├── implementation_sketches/
│ ├── company_a_solution.py # Chat app (Single-threaded WebSocket)
│ ├── company_b_solution.py # Image processing (Multi-threaded)
│ └── company_c_solution.py # API Gateway (Multiplexing)
│
├── performance_calculations.md # Detailed performance breakdown
└── README.md # This file
| Company | Type of Work | Pattern | Why |
|---|---|---|---|
| A – Chat | Mostly I/O (real-time) | Single-threaded (Node style) | Fast and scalable for many WebSocket users |
| B – Image Processing | CPU-heavy | Multi-threaded | Fully uses all cores and GPU power |
| C – API Gateway | I/O + network calls | Multiplexing (HTTP/2) | Best for parallel downstream requests |
- Start with
analysis_report.pdf– it explains the architecture choices. - Then check
performance_calculations.md– quick look at results. - Finally, explore the
.pysketches to see how each system could be built.