Design Face Recognition

Hard45 min
1 / 30
understanding9 min read

Problem Statement: Enterprise Face Recognition Platform

Problem Statement: Enterprise Face Recognition Platform — face recognition interview depth

Biometric face platform at Apple/Google/Amazon scale

Design a face recognition platform that supports 1:1 verification (is this the same person?), 1:N identification (who is this among millions enrolled?), and watchlist screening with strict privacy controls. Apple interviews stress on-device templates and liveness; Google Photos stresses clustering at billion-image scale; Amazon Rekognition stresses multi-tenant galleries and auditability.

Personas

  • Mobile unlock: on-device embedding, Secure Enclave, no raw face leaves phone
  • Enterprise KYC: cloud verify against government ID portrait with liveness
  • Physical security: camera NVR streams → edge box → central gallery match
  • Consumer photo app: unsupervised face grouping with user consent toggles

Core pipeline every interviewer expects

  1. Detect face bounding boxes (MTCNN/RetinaFace)
  2. Align to canonical pose (similarity transform on landmarks)
  3. Embed 512-d ArcFace-style vector
  4. Score cosine similarity vs threshold calibrated to FAR/FRR
  5. Policy: consent ledger, retention TTL, jurisdiction flags

Scale anchors (state aloud)

  • 800M 1:1 verifications/month (~310 avg QPS, 12k peak)
  • 120M enrolled identities across tenant galleries
  • 40k 1:N search QPS peak for access-control customers
  • Target FAR 1e-6 at FRR 0.3% for banking-grade verify
javaOne Dark Pro
1public record FacePlatformContext(String tenantId, String subjectId, String galleryId, double matchScore) {}
pythonOne Dark Pro
1@dataclass(frozen=True)
2class FacePlatformContext:
3 tenant_id: str
4 subject_id: str
5 gallery_id: str
6 match_score: float
typescriptOne Dark Pro
1export interface FacePlatformContext {
2 tenantId: string;
3 subjectId: string;
4 galleryId: string;
5 matchScore: number;
6}

Why interviewers care

Face Recognition interviews reward crisp scope, explicit trade-offs, and failure stories—not generic microservice diagrams.

Interview checkpoint

Name one failure story for Problem Statement: Enterprise Face Recognition Platform that proves you understand real outages, not happy-path diagrams.

Key Highlights

  • Anchor sec-01 on FAR/FRR and gallery sharding
  • Keep policy engine outside the neural graph
  • Quote 12k peak verify QPS before GPU SKU selection
Interview insight
Problem Statement: Enterprise Face Recognition Platform: mention liveness + threshold calibration — not only CNN architecture.
Avoid
Do not store only cosine score without template_version and consent_id in sec-01.

Section Rescue Kit

Buzzwords to use:

FAR/FRRHNSW

Safe statements:

  • "For sec-01, I will separate detect/align/embed from policy enforcement and quote FAR/FRR before picking GPU counts."
  • "I'll treat gallery sharding and erasure cascades as first-class — embeddings are not reversible but still regulated."
Design Face Recognition - System Design | WinJob | WinJob