Just wrapped my Wells Fargo system design round for a Senior SWE role (they don't use L-numbers publicly but internally it maps roughly to L5/senior IC). Wanted to write this up while it's fresh because I found basically nothing specific when I was prepping.
The round was 60 minutes with two engineers, one of whom was the hiring manager. Format: 45 min design, 15 min for Q&A. No LeetCode, pure design.
The prompt I got was something like: design a transaction notification system that handles high-volume alerts across multiple channels (SMS, email, push) with guaranteed delivery and deduplication. Very on-brand for a bank. They care a lot about reliability and consistency over raw throughput.
What they pushed on: How do you handle duplicate notifications if the same transaction triggers your service twice? They wanted idempotency keys explicitly. What's your DB schema for tracking delivery state? They asked me to walk through the actual table columns. How do you scale the fan-out when 50 million customers all log in after a service outage? (Basically: backpressure, queue depth, shed load gracefully.) Compliance angle: can you prove to a regulator which messages went out and when? Audit log design.
I drew on a whiteboard in person (Charlotte office). Bring your own markers if you care about color.
One thing that surprised me: they spent real time on failure modes, not just happy path. I think because this is financial infrastructure, they want you to be paranoid by default. If you're coming from a startup where "we'll add retries later" is acceptable, adjust your framing before this interview.
Salary target I mentioned was $175k base. Recruiter didn't flinch. We'll see if an offer materializes.
Happy to answer questions.