had my system design round at Bain last month for a senior/staff SWE position. since i couldn't find much specific info before going in, writing it up.
first thing to know: Bain's eng team is relatively small and the system design round feels more like a working session than a grilling. one interviewer, occasionally two. they gave me an open-ended prompt: 'design a notification delivery system for a global enterprise client with SLAs around reliability and latency.'
what they cared about: clarifying requirements before jumping in. they stopped me when i didn't ask enough upfront. this is apparently a real signal for them. trade-off reasoning. they'd ask 'why not just use X' when i described my approach. wanted to hear actual reasoning, not just 'i've used this before.' failure modes. they spent a lot of time on 'what breaks at scale' and 'how do you detect it.' felt like they wanted SRE-level thinking even for a pure SWE role. familiarity with managed cloud services. i mentioned Kafka, they pushed back: 'would you build or buy?' i said buy (MSK or Confluent) and they seemed happy with that framing.
what they didn't care about: drawing every microservice on a whiteboard for 40 min before talking memorized estimates for QPS/storage (they gave me rough scale parameters) any Bain-specific internal tooling knowledge
70 minutes felt just long enough. last 10 minutes is Q&A. ask about the eng culture and how teams interface with the consulting side. they light up.
didn't get the offer in the end but the round itself was genuinely one of the better system design interviews i've done. structured without being rigid.