Be aware of possible problems with SQLite on Production
Your architecture choice is the most important decision you'll make
How to correctly order messages in distributed systems
Cynefin framework - decide when to use Agile vs Waterfall