- processes shall be small, and start instantly
- always communicate via message bus (Redis, RabbitMQ)
- this is intended to avoid blocking IO like a slow HTTP request
- each process shall log to stdout
- it's not the responsibility of the app to route logs
- a process shall not maintain state
- avoid in-memory session ids, socket connections, etc