Contents

Engineering Craft

Testing

Checking that code works, automatically and repeatably.

Backend Engineer track

Junior

Write correct code, ship small changes safely, ask good questions.

Core: start here

  • API TestingCalling endpoints and checking status codes, bodies and side effects.
  • Integration TestA test of several components working together.
  • MockA test double that verifies how it was called.
  • Regression TestA test ensuring a fixed bug doesn't come back.
  • Test CoverageThe share of code executed by tests, and why 100% isn't the goal.
  • Test Runner / Test FrameworkTools like pytest, JUnit, Jest or Vitest that find, run and report tests.
  • Unit TestA fast test of one small piece of code in isolation.
11 more junior concepts

Mid-level

Own a feature end to end without hand-holding.

Core: start here

15 more mid-level concepts

Senior

Own a system, its failure modes, and its trade-offs.

  • Contract TestingVerifying that services agree on the API contract between them.
  • FuzzingFeeding random inputs to find crashes and vulnerabilities.
  • Mutation TestingChanging code on purpose to check that the tests notice.
  • Property-Based TestingGenerating many inputs to check that properties always hold.
  • Soak TestRunning under load for hours to find leaks and slow degradation.
  • Stress TestingPushing beyond capacity to find the breaking point.
  • Testing in ProductionValidating safely with real traffic using flags, canaries and monitoring.

Staff

Shape how many teams build, across systems.

Nothing here yet.

Principal

Set technical direction for the organization.

Nothing here yet.

Data Engineer track

Junior

Build and fix pipelines from clear specs; write correct SQL.

Core: start here

  • API TestingCalling endpoints and checking status codes, bodies and side effects.
  • Integration TestA test of several components working together.
  • MockA test double that verifies how it was called.
  • Regression TestA test ensuring a fixed bug doesn't come back.
  • Test CoverageThe share of code executed by tests, and why 100% isn't the goal.
  • Test Runner / Test FrameworkTools like pytest, JUnit, Jest or Vitest that find, run and report tests.
  • Unit TestA fast test of one small piece of code in isolation.
11 more junior concepts

Mid-level

Own pipelines and models end to end, including their quality.

Senior

Design the platform's storage, processing and modeling choices.

  • Contract TestingVerifying that services agree on the API contract between them.
  • FuzzingFeeding random inputs to find crashes and vulnerabilities.
  • Mutation TestingChanging code on purpose to check that the tests notice.
  • Property-Based TestingGenerating many inputs to check that properties always hold.
  • Soak TestRunning under load for hours to find leaks and slow degradation.
  • Stress TestingPushing beyond capacity to find the breaking point.
  • Testing in ProductionValidating safely with real traffic using flags, canaries and monitoring.

Staff

Shape how the whole organization produces and uses data.

Nothing here yet.

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.

Core: start here

17 more junior concepts

Mid-level

Own a feature end to end without hand-holding.

Core: start here

14 more mid-level concepts

Senior

Own an app's architecture, performance, and failure modes.

Core: start here

7 more senior concepts
  • FuzzingFeeding random inputs to find crashes and vulnerabilities.
  • Load TestingMeasuring behavior under expected traffic.
  • Mutation TestingChanging code on purpose to check that the tests notice.
  • Property-Based TestingGenerating many inputs to check that properties always hold.
  • Soak TestRunning under load for hours to find leaks and slow degradation.
  • Stress TestingPushing beyond capacity to find the breaking point.
  • Testing in ProductionValidating safely with real traffic using flags, canaries and monitoring.

Staff

Shape how many teams build, across apps.

Nothing here yet.

Principal

Set technical direction for the organization.

Nothing here yet.