PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCoaches
|Home/System Design/Snowflake

Design resilient auth with flaky third-party tokens

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's ability to design resilient, secure authentication and authorization flows that tolerate unreliable third-party token services, testing competencies in distributed systems architecture, security engineering, reliability, API design, and operational engineering.

  • hard
  • Snowflake
  • System Design
  • Software Engineer

Design resilient auth with flaky third-party tokens

Company: Snowflake

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Onsite

A client must obtain a token from a third-party authorization service before calling your main API. The third-party service is unreliable and may return malformed responses or fail intermittently. Design a resilient, secure end-to-end request flow. Cover token acquisition, validation, caching and refresh, retries with exponential backoff and jitter, circuit breakers, request hedging, idempotency keys, fallback paths (e.g., degraded mode or cached permissions), quarantining/poison-pill detection for bad responses, observability (metrics, tracing, alerts), rate limiting, SLA/SLOs, and blast-radius containment across regions. Describe APIs, data models, and failure-mode playbooks.

Quick Answer: This question evaluates a candidate's ability to design resilient, secure authentication and authorization flows that tolerate unreliable third-party token services, testing competencies in distributed systems architecture, security engineering, reliability, API design, and operational engineering.

Related Interview Questions

  • Design a Cron Job Scheduler - Snowflake (medium)
  • Design a disk-backed KV store under contention - Snowflake (easy)
  • Design an ACL authorization checking service - Snowflake (hard)
  • Design an object store with deduplication - Snowflake (medium)
  • Design a distributed system end-to-end - Snowflake (hard)
Snowflake logo
Snowflake
Sep 6, 2025, 12:00 AM
Software Engineer
Onsite
System Design
6
0

System Design: Resilient, Secure Request Flow with Unreliable Third‑Party Authorization

Context

You are designing a multi‑region, HTTP/JSON API where clients must obtain an access token from a third‑party authorization service before calling your main API. The third‑party service is intermittently unreliable: it may return malformed responses, time out, or fail.

Assume:

  • Tokens can be JWTs (signed with rotating keys) or opaque tokens (requiring introspection).
  • Your system must operate in multiple regions with strict isolation to contain blast radius.
  • Clients perform both read and write operations against your API.

Task

Design an end‑to‑end request flow that is resilient and secure. Explicitly cover:

  1. Token acquisition patterns, validation, caching and proactive refresh.
  2. Retries with exponential backoff and jitter; bounded attempts.
  3. Circuit breakers and request hedging to the third‑party.
  4. Idempotency keys for client‑visible mutations.
  5. Fallback paths (e.g., degraded mode, cached permissions) under dependency failures.
  6. Quarantining/poison‑pill detection for malformed or dangerous responses.
  7. Observability: metrics, tracing, logs, and alerts.
  8. Rate limiting and abuse‑prevention controls.
  9. SLA/SLO objectives and error‑budget‑driven degradation.
  10. Blast‑radius containment across regions and tenants.
  11. Describe external and internal APIs and key data models.
  12. Provide failure‑mode playbooks for common outage scenarios.

Be explicit about security controls (key management, token handling, storage, and transport security), and call out trade‑offs and pitfalls.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Snowflake•More Software Engineer•Snowflake Software Engineer•Snowflake System Design•Software Engineer System Design
PracHub

Master your tech interviews with 7,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.