"Notes on Over-Engineering: A Project Post-Mortem"
summary
A reusable Django app is built to provide shared-database multi-tenancy with automatic tenant-specific queryset filtering, thread-local tenant selection middleware, DRF serializers and permissions, and comprehensive test coverage; months of engineering go into cross-database tests and async fixes yet the component is never used in production because gold-plating for generic reuse and insurance-driven security assumptions delays delivery and a front end performance snag leads management to scrap and later salvage the skeleton.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:10Project purpose and design
- 2:35Reusable multi-tenant app
- 4:24Implementation details
- 8:02Middleware and tenant tracking
- 10:52Testing philosophy
- 13:42Gold plating and premature optimization
- 15:28Management delays
- 17:34Performance bottleneck fixes
- 18:36Project salvage efforts
- 20:01Question and answer session begins
related talks
21mBuilding maintainable Django projects: the difficult teenage years
41mProduction Django: Building a Highly Scalable, Secure Django Site
01h 06mEffective Django
47mBuilding Scalable Web Apps
25mMultitenant applications: how and why
30mMulti-tenancy strategies with Django+PostgreSQL
26mDjango at
28mA thousand Djangoes within (or Django multi-tenant)
