cswork / libraryOpen practice workspace

Interview questions · Meta

Build a FastAPI summarization service

This question evaluates web API development and backend engineering competencies, including FastAPI usage, Python type hints, Pydantic-based request/response validation, error handling, in-memory state management, and modular router/service/model layering, and it belongs to the Coding & Algorithms category with a focus on backend web service and API design. It is commonly asked to assess practical ability to deliver production-ready REST endpoints with proper validation and error handling under constrained resources, and the level of abstraction required is primarily practical implementation with attention to architectural design.

Implement a minimal but production-ready FastAPI service for text summarization.

Requirements:

  • Expose an endpoint POST /summarize.
  • The request body is JSON: { "text": string }.
  • The response body is JSON: { "summary": string }.
  • The summarization logic can be a placeholder function; you do not need to call a real model.
  • Store each request and response pair in memory.

Engineering requirements:

  • Use a clean structure with separate router, service, and model layers.
  • Use type hints throughout.
  • Use Pydantic models for request and response validation.
  • Handle invalid input and unexpected errors properly.
  • Keep the code modular, readable, and simple.
  • Do not use a database; in-memory storage is sufficient.

What to provide:

  • Show the proposed file structure.
  • Then provide the code for each file.

Community answers

Nothing here yet.

Join in on CSWork →