Math for Programmers
The math that actually shows up in day-to-day engineering.
Backend Engineer
Junior
Write correct code, ship small changes safely, ask good questions.
- Binary and HexadecimalBase-2 and base-16 number systems.
- Boolean LogicAND, OR, NOT and De Morgan's laws.
- LogarithmsWhy repeatedly halving something gives O(log n).
- ModuloThe remainder after division; used for wraparound and hashing.
- Rounding and MoneyNever store money as a float; use integers or decimals.
- Bits and BytesThe basic units of data, and KB vs KiB.
Mid-level
Own a feature end to end without hand-holding.
- Statistics for EngineersMean, median, percentiles and variance.
- Percentiles (p50, p95, p99)The value below which a given share of measurements fall; the right way to read latency.
- Discrete MathLogic, sets, graphs and combinatorics: the math of computing.
- Set TheoryUnions, intersections and differences; the basis of SQL.
- CombinatoricsCounting arrangements and combinations, e.g. how many IDs a format allows.
- Probability BasicsReasoning about chance, for sampling, A/B tests and failure rates.
Senior
Own a system, its failure modes, and its trade-offs.
- Amdahl's LawThe speedup from parallelism is limited by the part that stays sequential.
- Linear Algebra BasicsVectors and matrices, the foundation of graphics and ML.
- Little's LawItems in a system = arrival rate × time each spends in it.
Data Analyst
Junior
Write correct SQL, build trusted dashboards, ask good questions.
Core: start here
- Statistics for EngineersMean, median, percentiles and variance.
2 more junior concepts
- Percentiles (p50, p95, p99)The value below which a given share of measurements fall; the right way to read latency.
- Probability BasicsReasoning about chance, for sampling, A/B tests and failure rates.
Mid-level
Own an analysis end to end, from vague question to recommendation.
- Simpson's ParadoxA trend that reverses when groups are combined.
- Sampling BiasWhen the data you see isn't the population you claim.
- Correlation vs CausationWhy related numbers don't prove one causes the other.
- Survivorship BiasConclusions drawn only from the winners that survived.
- P-valueHow surprising data is if nothing is going on.
- Confidence IntervalThe range a true value plausibly falls in.
- Statistical SignificanceWhether a result is real or plausibly chance.
Senior
Own experimentation and metrics design; call out bad numbers.
- Causal InferenceEstimating cause and effect from observational data.
- Experiment DesignSetting up a test so its result is trustworthy.
Data Engineer
Junior
Build and fix pipelines from clear specs; write correct SQL.
Core: start here
- Statistics for EngineersMean, median, percentiles and variance.
- Percentiles (p50, p95, p99)The value below which a given share of measurements fall; the right way to read latency.
6 more junior concepts
- Binary and HexadecimalBase-2 and base-16 number systems.
- Boolean LogicAND, OR, NOT and De Morgan's laws.
- LogarithmsWhy repeatedly halving something gives O(log n).
- ModuloThe remainder after division; used for wraparound and hashing.
- Rounding and MoneyNever store money as a float; use integers or decimals.
- Bits and BytesThe basic units of data, and KB vs KiB.
Mid-level
Own pipelines and models end to end, including their quality.
- Discrete MathLogic, sets, graphs and combinatorics: the math of computing.
- Set TheoryUnions, intersections and differences; the basis of SQL.
- CombinatoricsCounting arrangements and combinations, e.g. how many IDs a format allows.
- Probability BasicsReasoning about chance, for sampling, A/B tests and failure rates.
Senior
Design the platform's storage, processing and modeling choices.
- Amdahl's LawThe speedup from parallelism is limited by the part that stays sequential.
- Linear Algebra BasicsVectors and matrices, the foundation of graphics and ML.
- Little's LawItems in a system = arrival rate × time each spends in it.
Frontend Engineer
Junior
Build UI that works, ship small changes safely, ask good questions.
- Binary and HexadecimalBase-2 and base-16 number systems.
- Boolean LogicAND, OR, NOT and De Morgan's laws.
- LogarithmsWhy repeatedly halving something gives O(log n).
- ModuloThe remainder after division; used for wraparound and hashing.
- Rounding and MoneyNever store money as a float; use integers or decimals.
- Bits and BytesThe basic units of data, and KB vs KiB.
Mid-level
Own a feature end to end without hand-holding.
- Statistics for EngineersMean, median, percentiles and variance.
- Percentiles (p50, p95, p99)The value below which a given share of measurements fall; the right way to read latency.
- Discrete MathLogic, sets, graphs and combinatorics: the math of computing.
- Set TheoryUnions, intersections and differences; the basis of SQL.
- CombinatoricsCounting arrangements and combinations, e.g. how many IDs a format allows.
- Probability BasicsReasoning about chance, for sampling, A/B tests and failure rates.
Senior
Own an app's architecture, performance, and failure modes.
- Amdahl's LawThe speedup from parallelism is limited by the part that stays sequential.
- Linear Algebra BasicsVectors and matrices, the foundation of graphics and ML.