Requirements
Functional Requirements
- User should be able to...
- Core Requirements + Below the line (out of scope).
- Only choose three to ensuring you stay focused and can execute in the limited time window.
Non-Functional Requirements
- The system should...
- Consider the following:
- CAP theorem: Does the system prioritize A or C?
- Read vs write ratio.
- Query access patterns: regular, or bursts during some events?
The Set Up
Defining the Core Entities
API or System Interface
- Provide simele API to start
High-Level Design
- When selecting a database, consider the following:
- Support for ACID transactions?
- Are you familiar with the technology?
Potential Deep Dives