When I seeded my backend with 600,000 car records and 1,000,000 posts to simulate real traffic, my API nearly fell over. 54% of requests were failing. The p95 latency on the car listing endpoint was 30 seconds . Throughput was sitting at a painful 2 req/s .
Eight weeks later: 807 req/s , 79ms p95 latency , 0.26% error rate .
This is the story of how I got there.
What I Was Building
GearUp is a Facebook Marketplace-style platform for cars. The feature set is fairly complex:
KYC verification flow β users upload passport/national ID documents, admins review and approve them, which upgrades a user's role to "Dealer"
Car listings β dealers upload VINs, license plates, and car details for admin approval
Posts & social feed β dealers advertise their approved cars through posts; customers browse, like, and leave nested comments
Appointment booking β customers schedule viewings with dealers
Reviews β customers rate dealers after a visit
Admin dashboard β for managing KYC approvals, car approvals, andβ¦