SysPad › Lessons › orchestration lessons › AWS Step Functions

How AWS Step Functions works

Serverless workflow orchestration. Coordinates Lambda, ECS, and other services as a state machine. Standard workflows are durable and exactly-once; Express workflows trade durability for high throughput.

As soon as a process has more than a couple of steps, "Lambda calls Lambda calls Lambda" turns into a tangle of retries, error handling, and state nobody can follow. Step Functions pulls that logic OUT of your code into a visual state machine: it runs each step, remembers where you are, and handles failures, so your functions just do one job each.

What you will learn

Logic out of code, into a workflow

A Step Functions state machine is a workflow of states. Each state does one thing, often invoking a Task (a Lambda, an ECS run, another AWS API), then passes its output to the next state. Step Functions tracks position and data for you.

States: branch, parallel, iterate

Beyond Task states, there are Choice (branch on data), Parallel (run branches at once), Map (run a step over each item in a list), and Wait (pause). You compose these into the exact flow you need.

Crucially, the orchestration is declarative, the diagram is the logic, which makes complex processes visible and auditable.

⚓ Order processing, ETL pipelines, ML pipelines, human-approval flows, and any multi-step saga across services.

Built-in retries and catch

Each state can declare Retry (with backoff) and Catch (route to a handler state) for failures. You configure resilience instead of writing retry loops and try/catch glue in every function.

Standard vs Express workflows

Standard workflows are durable and long-running (up to a year), with exactly-once execution and full execution history, ideal for business processes and human-in-the-loop. Express workflows are for very high-volume, short-duration event processing (capped at 5 minutes per execution), cheaper per run, but with at-least-once semantics and limited history.

Flashcards

What does Step Functions move out of your Lambda code?
The orchestration logic: sequencing, branching, state, and error handling. Functions do one job; the state machine coordinates them.
Name the state types for branching, concurrency, and iteration.
Choice (branch), Parallel (concurrent branches), Map (iterate over a list); plus Task and Wait.
How do you handle a flaky step without writing retry code?
Declare Retry (with backoff) and Catch on the state; resilience becomes workflow config, not code.
Standard vs Express workflows, the headline difference?
Standard: durable, long-running (up to 1 year), exactly-once, full history. Express: high-volume, short, cheaper, at-least-once, limited history.
Why orchestrate instead of chaining Lambdas that call each other?
Direct chaining scatters retries, error handling, and state everywhere. A state machine centralises and visualises it, making complex flows reliable and auditable.

Sources

Open the SysPad canvas · Official AWS Step Functions documentation