Choose SQL when: You need ACID transactions, complex joins, or your schema is well-defined. Banking, e-commerce orders, inventory.
Choose NoSQL when: You need horizontal scale, flexible schemas, or specific access patterns. Social feeds, real-time analytics, caching.
Many systems use both. SQL for transactions, NoSQL for caching and analytics. In interviews, explain WHY you chose each database. "I'm using PostgreSQL for orders because I need ACID transactions, and Redis for session caching because it's fast and sessions don't need durability."