Problem Statement & Context
How Problem Statement & Context shapes architecture and interviewer follow-ups for Design Fraud Detection System.
Problem Statement & Context
You are designing a real-time fraud detection platform for card-not-present payments — the decision layer Stripe, PayPal, and Sift operate at authorization time. This section focuses on mission, stakeholders, and authorization-time constraints. Interviewers expect you to separate online scoring (must finish before auth timeout) from offline learning (labels, graph expansion, rule tuning).
- 1.1: score card-not-present auth in <100 ms p99
- 1.2: balance fraud loss vs false decline revenue
- 1.3: feed analyst queues without drowning SOC
Mechanism
Merchants send AuthorizationRequest events with PAN token, amount, device, billing/shipping signals. The platform returns allow | review | block plus reason codes. High-risk traffic routes to 3DS step-up; blocked traffic still logs features for chargeback defense.
Interview phrasing
Lead with numbers: 180K TPS peak, 85 ms scoring budget, <0.3% false-positive SLO, <2% traffic manual review ceiling. Mention PCI scope reduction via tokenization and that models never see raw PAN.
Failure mode to volunteer
During Black Friday, feature store lag hits 4 minutes; velocity rules misfire. You degrade to rules-only path, widen review band, and page feature platform—not payments.
| Signal | Target |
|---|---|
| Peak TPS | 180K TPS |
| Score p99 | 85 ms |
| False positive | <0.3% |
| Availability | 99.95% |
1 public record AuthContext(String txnId, String cardToken, long amountCents, String deviceId) {}
1 def decision_bucket(score: float, review_hi: float = 0.55, block_hi: float = 0.82) -> str: 2 if score >= block_hi: 3 return "block" 4 if score >= review_hi: 5 return "review" 6 return "allow"
1 export type FraudDecision = "allow" | "review" | "block"; 2 export interface ScoreResult { score: number; decision: FraudDecision; reasonCodes: string[]; }
Why interviewers care
Fraud Detection System interviews reward crisp scope, explicit trade-offs, and failure stories—not generic microservice diagrams.
Interview checkpoint
Name one failure story for Problem Statement & Context that proves you understand real outages, not happy-path diagrams.
Key Highlights
- •Problem Statement & Context: mission, stakeholders, and authorization-time constraints
- •Ops angle: feed analyst queues without drowning SOC
- •Metric anchor: 180K TPS / 85 ms
Section Rescue Kit
Buzzwords to use:
Safe statements:
- "For Problem Statement & Context, I state 180K TPS and 85 ms before boxes."
- "I separate synchronous scoring path from async analyst enrichment."