Loading...
Define the APIs expected from the system. This is your chance to analyze and define the read and write paths so that you can come up with the high-level design...
POST /api/v1/shorten
Body : {"long_url" : "https://..." }
Response: { "short_code": "abc123", "short_url": "http://tinyurl.com/abc123" }
GET /api/v1/{short_url} Response: 301 Redirect to original long URL
Describe the overall system architecture. Identify the main components needed to solve the problem end-to-end. Use the diagramming tool to create a block diagram.
Deep dive into 2-3 key components. Explain how they work, how they scale, discuss tradeoffs, capacity, and any relevant algorithms or data structures.