Katkat

Implement a RESTful Q&A service

RipplingSoftware Engineer · Onsite

Last updated

This question evaluates a candidate's ability to design and implement a RESTful web service, covering HTTP API design, CRUD operations, data modeling and persistence choices, input validation, pagination/sorting, and basic testing and documentation practices.

You are asked to build a small REST service (in any language/framework you choose) that resembles a minimal Stack Overflow-style Q&A system.

Design and implement an HTTP API that supports at least:

  • Posting a new question (title + body; optionally tags, author)
  • Querying/searching questions (e.g., by keyword in title/body, optionally by tags)
  • Fetching a question by id

Clarify and decide reasonable defaults for:

  • Data persistence (in-memory vs database)
  • Pagination/sorting for queries
  • Validation and error handling (e.g., missing title/body, invalid id)
  • Basic non-functional expectations (readability, tests, documentation, how to run)

Provide a brief README explaining how to run the service and example requests/responses.