Question bank / Software Engineering, System Design, Advanced
How to answer: Design a multi-tenant collaboration service with enterprise permissions and audit logs.
Whether you design tenancy and permissions so that one customer can never see another's data.
What the interviewer is testing.
Identity, authorization, tenancy, auditability. Whether you design tenancy and permissions so that one customer can never see another's data.
An outline for this question.
- Clarify the tenants: a few huge companies or many small ones, and their compliance needs.
- Isolate data by tenant in every table and every query, and check the tenant on every request.
- Model permissions in layers: organisation, team, document, and roles with inheritance.
- Record an audit log of who did what and when, that cannot be edited, and decide how long it is kept.
The mistake to avoid.
Adding the tenant check in the application code only. One missed query leaks data across companies.
The general method: requirements, design, trade-offs.
The same shape works for most system design questions, whatever the topic.
- Pin down what the system must do, how many users, and what matters most (speed, cost, correctness).
- Sketch the main parts and how data moves between them, starting simple.
- Pick one or two parts to go deep on, and say what you gave up for each choice.
- Finish with how it fails and how you would know: monitoring, retries, limits.
Practice it, out loud.
Reading an outline is not the same as saying it. Answer this question in a mock interview, in your own words, then compare it with the outline above.
More to practice.
Tell me about yourself and why this role is the right next step.
Software Engineering, Behavioral
Given a string, return the first non-repeating character and explain the complexity.
Software Engineering, Coding
Design an LRU cache with O(1) get and put operations.
Software Engineering, Coding
Design a notification service for email, SMS, and push at large scale.
Software Engineering, System Design
This is a Replysis practice question. It is not a leaked or official question from any company, and the outline is a guide to structure, not a script. Use your own experience and facts.