Hi everyone,
I recently received the SDE II - Backend Round 1 assignment from Urban Company, and I thought of sharing it here for discussion and learning purposes. The task is to design and implement a modular Address Book service with in-memory storage and a clean API structure.
🔹 Problem Highlights
Build a modular address book service.
Support Create, Update, Delete, and Search contacts.
Storage should be in-memory (no external DB).
System should be scalable to millions of contacts.
Time & space complexity for search/update should be close to O(1).
Must strictly follow the given API contract.
Should run self-contained on port 5000.
🔹 Tech Guidelines
Allowed languages: Python, Node.js, Java, Go
Use lightweight frameworks like Flask, Express, etc.
Follow modular design:
Models
Controllers / Handlers
Business Logic
Storage layer
🔹 API Contract Overview
POST /create → Create contacts
PUT /update → Update contacts
DELETE /delete → Delete contacts
POST /search → Search contacts
(All requests & responses in JSON; UUIDs for IDs)
Compensation - 35 LPA (32 Base + 3 Joining Bonus)