API and Interface Design for Distributed Services Questions

Designing the contracts between services and clients: REST, gRPC, and GraphQL tradeoffs, versioning and backward compatibility, pagination, rate limiting, and idempotent endpoints. Covers request/response modeling, error contracts, and API gateway responsibilities. Focuses on the interface layer that ties distributed components together, not internal data schemas.

MediumSystem Design
44 practiced

Describe how you would design API pagination and sync endpoints for a mobile app that must support partial offline sync. The endpoints should let the client reconcile local mutations with server state and fetch only deltas since the last sync point. Provide the high-level request/response contract and how you would surface conflicts to the caller.

MediumTechnical
42 practiced

Two clients read the same resource through your API, both submit an update, and the second write silently overwrites the first client's change without either client finding out. Design a request/response contract that prevents this kind of lost update, and walk through what the client sees when its update is rejected because the resource changed underneath it.

EasyTechnical
52 practiced

Design a REST API for listing and creating 'products' that supports pagination, filtering, sorting, and versioning. Specify the request/response shapes, your pagination strategy, your versioning approach, and how you would roll out a breaking change to both internal and external clients without a hard cutover.

MediumSystem Design
61 practiced

Design the pagination contract for a feed API where new items are frequently inserted at the head while a client is mid-page or has filters and sorting applied. Explain how the cursor or page token stays valid across those inserts, how you avoid returning duplicate or skipped items, and what the response needs to signal so the client can handle the change smoothly.

MediumSystem Design
45 practiced

Design an API and server-side protocol for resumable uploads supporting 10k concurrent clients, files up to 200MB, and intermittent mobile connectivity. Specify endpoints for initiating an upload, uploading chunks, resuming, validating integrity, and finalizing. Explain what server state you would persist, how idempotency applies at each step, and how you would handle abandoned uploads and abuse.

Unlock Full Question Bank

Get access to all 34 API and Interface Design for Distributed Services interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.