SeniorSystem Design

Design secret management for 40 services across 3 environments, with an audit requirement.

What they are really testing: Whether you design for the lifecycle rather than for storage. Anyone can name a vault; the interesting parts are distribution to workloads, rotation, and proving who read what.

A real interview question

Design secret management for 40 services across 3 environments, with an audit requirement.

What most people say

drag me

Put everything in a vault and give each service a token to read what it needs.

It solves storage and leaves the hardest problem untouched: how the service gets its token. A long-lived token in an environment variable is just a secret protecting secrets, and it recreates the original problem one layer down.

The follow-ups they ask next

  • The secret store is down. What happens to your 40 services?

    They should keep running on cached credentials rather than failing, so caching with a sensible TTL is a resilience requirement. Only new pods and expiring leases are affected, which bounds the blast radius.

  • How do you handle secrets for something outside the platform, like a CI runner?

    Federated identity from the CI provider exchanged for a short-lived credential, same principle. If truly impossible, a scoped long-lived credential with tight permissions, short rotation, and alerting on use from unexpected sources.

What the interviewer is listening for

  • Identifies bootstrap as the hard problem
  • Uses workload identity to avoid a token
  • Treats store availability as a resilience concern

What sinks the answer

  • Long-lived token per service
  • No rotation story
  • Audit as an afterthought

If you genuinely do not know

Say this instead of freezing. Reasoning out loud from what you do know beats silence every single time, and a good interviewer is listening for exactly that.

The hard part is [the bootstrap, not storage], so [workloads authenticate with platform identity, no long-lived token]. Policies are [scoped per service and environment]. Prefer [dynamic credentials with short leases so rotation is continuous]. Audit is [every read logged with identity and time, in a store we cannot edit]. Plus [caching so the store is not in the hot path].

Keep going with system design

All 87 devops engineer questions

Knowing the answer is not the same as recalling it under pressure

Sign in to send the questions you fumble to spaced recall, so they come back right before you would forget them, and learn the concepts behind them with hands-on labs.

Start free