Field Notes
Notes from the work
Short decision narratives from real engagements — recurring architectural choices, and how we worked through them. If one of them maps to where you are, you can take the thread further with Lumo.
Scaling a multi-tenant database: sharding, or active-active multi-master?
Horizontal sharding (PostgreSQL/Citus) or active-active multi-master (MariaDB/Galera) for a multi-tenant database — a workload-grounded look at the tradeoffs.
Read the note →One data platform, or a NoSQL store alongside it?
When does JSON document data justify a separate NoSQL store, and when is the relational database you already run — Postgres with JSONB — the better home for it?
Read the note →Foreign keys are not a substitute for discipline
When are foreign keys worth their cost, and when do they become the obstacle to scaling or sharding a database? Why disciplined code can beat an automatic safety net.
Read the note →Choosing the API Runtime: Matching the Language to the Workload
Matching an API's language and runtime to the workload and team: where Python/FastAPI fits, when Rust/Axum is worth its cost, and how to blend the two with PyO3.
Read the note →