Try Oz
By Over Alternative
12 Decisions that shaped, 4 Problems faced,
3 Alternatives considered
23 development events captured
How they built
Started by defining the core data model and backend before moving into the interface.
The initial approach changed after encountering performance issues in the processing flow.
Most implementation choices prioritized simplicity and correctness over premature scalability.
Decisions that shaped the build
12 total01 PostgreSQL over MongoDB
Needed strong relationships between users, projects and development events.
MongoDB was considered, but the relational model better matched the data being built.
View reasoning02 Moved processing to a background worker
The first implementation handled processing inside the request cycle.
After response times increased, the candidate moved the work outside the request.
View reasoning03 Kept authentication server-side
Chose server-managed sessions instead of storing authentication state entirely in the browser.
This kept revocation and access control close to the application data.
View reasoningProblems they worked through
4 total01 Processing slowed as event volume grew
Synchronous work made requests increasingly expensive. Moving enrichment to a worker restored predictable response times.
02 Session tests were hard to reproduce
A controlled clock made expiry behavior deterministic and removed timing-dependent failures from the suite.