Data Modeling for Analytics
Shaping data so it's easy and correct to query.
Backend Engineer track
Junior
Write correct code, ship small changes safely, ask good questions.
Nothing here yet.
Mid-level
Own a feature end to end without hand-holding.
- Data ModelingDesigning how your data is structured and related.
- NormalizationOrganizing tables to reduce duplication: 1NF, 2NF, 3NF.
Senior
Own a system, its failure modes, and its trade-offs.
- DenormalizationDeliberately duplicating data for read performance.
Staff
Shape how many teams build, across systems.
Nothing here yet.
Principal
Set technical direction for the organization.
Nothing here yet.
Data Analyst track
Junior
Write correct SQL, build trusted dashboards, ask good questions.
Nothing here yet.
Mid-level
Own an analysis end to end, from vague question to recommendation.
Core: start here
- Star SchemaOne fact table joined directly to its dimension tables.
11 more mid-level concepts
- Conformed DimensionOne shared dimension used by many fact tables so numbers line up.
- Date Dimension / Date SpineA table with one row per day and its calendar attributes.
- DenormalizationDeliberately duplicating data for read performance.
- Dimension TableA table describing the who, what, where of facts, like customers or products.
- Dimensional ModelingKimball's approach: facts surrounded by descriptive dimensions.
- Fact TableA table of measurable events, like orders or page views, at a fixed grain.
- GrainWhat one row of a table represents; the first decision in any model.
- One Big Table (Wide Tables)Denormalizing everything into one wide table for simple, fast queries.
- SCD Types 1, 2 and 3Overwrite, add a versioned row, or keep a previous-value column.
- Slowly Changing Dimension (SCD)Handling attributes that change over time, like a customer's address.
- Star vs Snowflake SchemaSimpler queries vs less duplication.
Senior
Own experimentation and metrics design; call out bad numbers.
- Data VaultModeling with hubs, links and satellites for auditable, change-friendly history.
- Inmon vs KimballA normalized enterprise warehouse first vs dimensional marts first.
Staff
Shape how the organization measures and decides.
Nothing here yet.
Principal
Set measurement strategy across the company.
Nothing here yet.
Data Engineer track
Junior
Build and fix pipelines from clear specs; write correct SQL.
- Date Dimension / Date SpineA table with one row per day and its calendar attributes.
- Dimension TableA table describing the who, what, where of facts, like customers or products.
- Fact TableA table of measurable events, like orders or page views, at a fixed grain.
- GrainWhat one row of a table represents; the first decision in any model.
- Star SchemaOne fact table joined directly to its dimension tables.
Mid-level
Own pipelines and models end to end, including their quality.
Core: start here
- DenormalizationDeliberately duplicating data for read performance.
- Dimensional ModelingKimball's approach: facts surrounded by descriptive dimensions.
- SCD Types 1, 2 and 3Overwrite, add a versioned row, or keep a previous-value column.
- Slowly Changing Dimension (SCD)Handling attributes that change over time, like a customer's address.
- Star vs Snowflake SchemaSimpler queries vs less duplication.
- Surrogate Keys in the WarehouseWarehouse-generated keys that stay stable when source IDs change.
4 more mid-level concepts
- Data ModelingDesigning how your data is structured and related.
- NormalizationOrganizing tables to reduce duplication: 1NF, 2NF, 3NF.
- One Big Table (Wide Tables)Denormalizing everything into one wide table for simple, fast queries.
- Snowflake SchemaA star schema whose dimensions are normalized into sub-tables.
Senior
Design the platform's storage, processing and modeling choices.
Core: start here
- Conformed DimensionOne shared dimension used by many fact tables so numbers line up.
- Data VaultModeling with hubs, links and satellites for auditable, change-friendly history.
- Inmon vs KimballA normalized enterprise warehouse first vs dimensional marts first.
7 more senior concepts
- Bridge TableHandling many-to-many relationships in a dimensional model.
- Degenerate DimensionA dimension attribute, like an order number, stored directly in the fact table.
- Entity-Centric ModelingTables built around business entities with their full history and features.
- Factless Fact TableA fact table recording that something happened, with no measures.
- Junk DimensionGrouping small flags and indicators into one dimension.
- Role-Playing DimensionOne dimension used several ways, like a date as order date and ship date.
- Transaction, Snapshot and Accumulating FactsThree kinds of fact table for events, periodic states and processes.
Staff
Shape how the whole organization produces and uses data.
- Bus MatrixA planning grid of business processes and the dimensions they share.
Principal
Set data strategy and architecture across the company.
Nothing here yet.
Frontend Engineer track
Junior
Build UI that works, ship small changes safely, ask good questions.
Nothing here yet.
Mid-level
Own a feature end to end without hand-holding.
- Data ModelingDesigning how your data is structured and related.
Senior
Own an app's architecture, performance, and failure modes.
Nothing here yet.
Staff
Shape how many teams build, across apps.
Nothing here yet.
Principal
Set technical direction for the organization.
Nothing here yet.