Layer 3 · Go deeper · 9 min
Go deeper
Size it, build it, then make the calls an interviewer will push you on.
Back of the envelope
Size it up
Tap through each step of the arithmetic.
What do two invoice IDs an hour apart reveal?
How many two-tenant tests cover 140 object-ID operations?
How many tenants can one bad deploy reach with 10 cells?
Build-up · 5 steps
Derive, carry, enforce
One GST invoicing request, from token to PDF in storage. The tenant is derived once and never re-read from anything the client can set.
Step 1 of 5
Derive it once
The gateway verifies the JWT and takes the tenant, t42, from its claim. A client-sent X-Tenant-ID header naming t77 is ignored; client values may only select among the user’s tenants.
4 interview moments
You’re the candidate
The interviewer pushes on the hard parts. Pick an approach and see how it holds up.
Deep dive 1 of 4
Interviewer
“A pooled invoicing app scopes every query by tenant_id in code. A bank’s reviewer asks what happens if someone forgets one.”
Your move. Pick an approach:
Deep dive 2 of 4
Interviewer
“A bank wants to sign, but needs its payment data kept in India and its own keys. Your platform is fully pooled.”
Your move. Pick an approach:
Deep dive 3 of 4
Interviewer
“Customers will run notebooks on your platform. Where does their code run?”
Your move. Pick an approach:
Deep dive 4 of 4
Interviewer
“Support engineers need to debug a customer’s issue. How do they see that tenant’s data?”
Your move. Pick an approach: