PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCoaches
|Home/System Design/Coinbase

Design scheduled payments and cancellation

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's ability to design a reliable scheduled‑payments backend, testing competencies in distributed systems architecture, data modeling, idempotent API design, concurrency control, and operational reliability with strong ledger correctness.

  • hard
  • Coinbase
  • System Design
  • Software Engineer

Design scheduled payments and cancellation

Company: Coinbase

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Take-home Project

Design a scheduled payments service that lets users create, list, execute, and cancel future-dated payments. Specify REST/gRPC APIs, idempotency keys, authorization, and validation. Propose a scheduler architecture (e.g., time-indexed buckets, distributed delayed queues) that ensures exactly-once execution and ledger correctness. Address time zones and daylight savings, retries with backoff, race conditions between execution and cancellation, deduplication, poison message handling, monitoring/alerting, and backfilling missed jobs after outages. Provide the data model and concurrency control strategy.

Quick Answer: This question evaluates a candidate's ability to design a reliable scheduled‑payments backend, testing competencies in distributed systems architecture, data modeling, idempotent API design, concurrency control, and operational reliability with strong ledger correctness.

Related Interview Questions

  • Design Crypto Order Routing - Coinbase (hard)
  • Design a crypto trading web frontend - Coinbase (hard)
  • Design query pagination for large datasets - Coinbase (medium)
  • Design a food delivery system - Coinbase (medium)
  • Design real-time crypto prices homepage - Coinbase (hard)
Coinbase logo
Coinbase
Sep 6, 2025, 12:00 AM
Software Engineer
Take-home Project
System Design
2
0

System Design: Scheduled Payments Service (Take‑home)

Context

You are designing a backend service for a consumer payments platform that supports one‑off, future‑dated payments. The system must maintain strong ledger correctness and provide operational reliability at scale.

Assume there is an existing Ledger/Transfer service that performs actual debits/credits atomically and supports idempotency. You will design the Scheduled Payments service and its scheduler/executor.

Requirements

  1. Functionality
    • Create a future‑dated payment (one‑time only).
    • List and get details of scheduled payments.
    • Execute the payment at or after its due time.
    • Cancel a scheduled payment if it has not executed.
  2. Interfaces
    • Specify REST and gRPC APIs (endpoints/RPCs, request/response fields, error codes).
    • Idempotency keys for write operations and exact semantics.
    • Authorization model (user vs. internal services).
    • Input validation rules.
  3. Architecture
    • Propose a scheduler design (e.g., time‑indexed buckets, distributed delayed queues) that ensures exactly‑once execution from a ledger perspective.
    • Address time zones and daylight savings transitions.
    • Retries with backoff and jitter; classify transient vs. permanent failures.
    • Handle race conditions between execution and cancellation.
    • Deduplication and poison message handling.
    • Monitoring, alerting, and operational dashboards.
    • Backfilling missed jobs after outages.
  4. Data and Concurrency
    • Define the data model (tables/entities, key fields, indexes).
    • Concurrency control strategy and state machine; include how you prevent double execution.

Deliverables

  • REST/gRPC API specifications with idempotency and auth.
  • End‑to‑end architecture of scheduler and executor ensuring exactly‑once ledger effects.
  • Policies for time zones/DST, retries, races, dedup, poison messages, monitoring, and backfill.
  • Data model and concurrency control plan.
  • Clearly state assumptions where necessary.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Coinbase•More Software Engineer•Coinbase Software Engineer•Coinbase 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.