PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCoaches
|Home/System Design/Databricks

Design CRUD APIs with async jobs

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's ability to design backend services that combine CRUD operations with asynchronous background job processing, emphasizing data modeling, API design, idempotency, and fault-tolerant job workflows.

  • hard
  • Databricks
  • System Design
  • Software Engineer

Design CRUD APIs with async jobs

Company: Databricks

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Onsite

## Scenario Design a small backend service that manages a core entity with **CRUD** operations and also supports an **asynchronous background job** triggered by user actions. To make the problem concrete, assume the core entity is a **Document** that a user can create/update/delete and optionally request an **Export** (a long-running job that generates a downloadable file). ## Requirements ### Functional 1. **CRUD Documents** - Create a document (title + body) - Read/list documents (filter by owner) - Update a document - Delete a document 2. **Async Export Job** - User requests an export for a document. - Export runs asynchronously (may take minutes). - User can query job status. - When done, user can fetch a download URL (or a reference to the exported file). ### Non-functional - Multi-tenant: documents belong to a user/account. - Avoid duplicated exports when users retry the request. - System should be resilient to worker crashes and support retries. ## Deliverables 1. Propose a relational schema (tables, key fields, indexes). 2. Define REST APIs (endpoints, request/response, status codes). 3. Describe the async job workflow (queue, worker, retries, idempotency). 4. Call out important edge cases and operational considerations.

Quick Answer: This question evaluates a candidate's ability to design backend services that combine CRUD operations with asynchronous background job processing, emphasizing data modeling, API design, idempotency, and fault-tolerant job workflows.

Related Interview Questions

  • Design a Book Price Aggregator - Databricks (medium)
  • Design a stock order manager - Databricks (medium)
  • Design an Online Bookstore - Databricks (hard)
  • Design a Hierarchical File System - Databricks (hard)
  • Design a Visa-like payment processing system - Databricks (hard)
Databricks logo
Databricks
Jan 7, 2026, 12:00 AM
Software Engineer
Onsite
System Design
16
0
Loading...

Scenario

Design a small backend service that manages a core entity with CRUD operations and also supports an asynchronous background job triggered by user actions.

To make the problem concrete, assume the core entity is a Document that a user can create/update/delete and optionally request an Export (a long-running job that generates a downloadable file).

Requirements

Functional

  1. CRUD Documents
    • Create a document (title + body)
    • Read/list documents (filter by owner)
    • Update a document
    • Delete a document
  2. Async Export Job
    • User requests an export for a document.
    • Export runs asynchronously (may take minutes).
    • User can query job status.
    • When done, user can fetch a download URL (or a reference to the exported file).

Non-functional

  • Multi-tenant: documents belong to a user/account.
  • Avoid duplicated exports when users retry the request.
  • System should be resilient to worker crashes and support retries.

Deliverables

  1. Propose a relational schema (tables, key fields, indexes).
  2. Define REST APIs (endpoints, request/response, status codes).
  3. Describe the async job workflow (queue, worker, retries, idempotency).
  4. Call out important edge cases and operational considerations.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

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