# Jobs & Steps — CI/CD Fundamentals: Pipelines, Testing and Deployment

Source: https://www.skillbyai.com/en/cicd/cicd-gha-jobs-steps

> Understand GitHub Actions jobs that run in parallel and steps that run in order on one runner.

## Jobs run in parallel

A workflow can define multiple **jobs** (e.g. `lint`, `test`, `build`). By default they all start at once on separate runners, unless you use `needs` to make one wait for another.

## Steps run in order

Within one job, **steps** run one after another on the same runner, sharing the same filesystem. If a step fails, the remaining steps in that job are skipped by default.

## Workers with checklists

Jobs are like separate workers who can each start their own task at the same time. Steps are the checklist each worker follows top to bottom — they can't skip ahead to item 3 before finishing item 2.
