When is REST the wrong choice, and what would you use instead?
Assesses fundamental understanding of REST API Design conventions, runtime behavior, and memory/performance considerations.
Hiring managers look for precision, avoidance of ambiguous jargon, and ability to explain trade-offs under real production conditions.
REST excels at resource-oriented CRUD with cacheable, uniform interfaces and a broad tool ecosystem. It becomes awkward when:
- The domain is action-oriented or RPC-like, such as "recalculate rating" or complex algorithms where resource nouns feel forced.
- Clients need many different projections and REST forces over-fetching or many round trips; GraphQL lets the client shape the response.
- You need low-latency, strongly typed, bi-directional streaming between internal services; gRPC with HTTP/2 and protobuf is a better fit.
- You need real-time push; WebSockets or server-sent events are required since REST is request-response.
- You must perform large batches or long-running jobs synchronously.
The alternative is not always all-or-nothing. Many systems expose a REST or GraphQL edge to clients and use gRPC or messaging internally. Choose based on consumers, latency, payload shape and how naturally the domain maps to resources.
Candidate Response Strategy & Interview Tips
- Start with a concise one-sentence summary: Deliver a direct, confident answer first before expanding into nuances.
- Demonstrate real-world trade-offs: Discuss where this approach excels and when you would avoid it in production systems.
- Discuss complexity & edge cases: Proactively explain time/space complexity or boundary conditions (null values, scale limits).
- Prepare for interviewer follow-ups: Technical hiring panels frequently probe deeper into concurrency, backward compatibility, or alternative libraries.