Course
Database Design
Requirement-to-schema design for reliable, scalable, API-oriented databases with integrity, migrations, indexing, auditability, and clear naming.
Start coursebasic to advanced / 14 lessons
Log in to track your progress through this course.
About this course
Who it is for
This course is for developers who can write SQL and now need to design the database for a new application, and for students working on a project or a system-design interview. Familiarity with tables, keys and joins is assumed.
What it covers
It starts with tools for drawing entity-relationship diagrams and a step-by-step workflow from written requirements to a schema: finding entities, relationships and cardinality. The schema quality module covers when to normalize and when to denormalize, naming standards and data integrity. Operational design covers audit fields, soft deletes, versioning and planning migrations. The final module covers indexing strategy and designing databases that serve APIs at scale.
How to use it
Each lesson includes worked examples, common mistakes, an exercise, a quiz and interview questions. Pick a project you know, such as a shop or a college portal, and design its schema step by step as you go through the lessons. By the end you should be able to explain why every table, key and index in your design exists, which is what reviewers and interviewers ask about.
Course roadmap
Your Database Design journey
- Milestones
- 4
- Topics
- 14
Milestone 1From Requirements to Model5 topics
Milestone 2Schema Quality3 topics
Milestone 3Operational Design4 topics
Milestone 4Scale and API Design2 topics