Got the rejection email three weeks ago. Took a while to actually sit down and be honest with myself about what happened. Posting because I wish someone had done this before my loop.
Background: senior SWE applying for a backend infrastructure role in 2026, 8 YOE, came out of a large-scale distributed systems background at a FAANG. Should have been a reasonable fit on paper.
What happened in each round:
Phone screen with hiring manager: went fine. I asked good questions, they seemed interested. No red flags.
Technical phone screen: Leetcode-medium graph traversal problem. I got a working solution but spent too long on it and didn't have time to walk through the complexity analysis cleanly. Mistake number one.
Onsite system design round: I designed a payments ledger with strong consistency guarantees. In retrospect I over-indexed on CAP theorem in theory and didn't talk enough about what Coinbase actually cares about, which is auditability, idempotency, and chain-of-custody for financial records. I was designing for a generic distributed database problem. They were thinking about regulated money movement. That's a real difference and I missed the framing.
Behavioral round: I've since heard from other candidates that Coinbase leans pretty hard on their cultural principles in behavioral. I hadn't specifically prepped the "clear communication" and "act like an owner" themes. I defaulted to generic "here's a problem I solved" answers instead of mapping my examples to what they explicitly say they value.
What I'd change:
First, spend real time on Coinbase's stated values and leadership principles. They're not window dressing. The behavioral interviewers apparently score against specific criteria.
Second, for system design: frame everything through the lens of financial correctness. Not just "eventual consistency is fine" for a crypto exchange. Think about idempotent writes, double-spend prevention, audit logs, reconciliation. These are the actual hard problems they're solving.
Third, on the DSA side. I was rusty on graph algorithms. I hadn't done hard Leetcode in 8 months. I thought my experience would carry me. It did not. Do the problems.
Feedback from the recruiter was sparse: "we decided to move forward with candidates whose experience is more aligned." Classic. But based on my own analysis, the system design round is where I lost it.
Failing this one stung because I genuinely wanted the role. Not just posting to vent, hoping this saves someone else the same mistakes.