the team maintains a separate Markdown file that is often out of date 3. **Synchronous only** -- under load, the server blocks on I/O operations 4. **Manual serialization** -- converting between database records and JSON requires manual field mapping