WW

Work case study · Data Platforms

Data Platforms · developer infrastructure

Declarative Data Orchestration

Impact

Teams can express dependencies and parallel branches in one pipeline definition while pipelines without TaskSets retain the serial path they already use.

  • Explicit task graph
  • Serial compatibility
  • Opt-in parallel work

01 · Problem & operating context

Independent maintenance was waiting behind a revision it did not depend on.

One Kafka-to-Unity streaming table had a serial revision chain: a sensor, checks, a revision write, and optimization. Its retention work, Delta-log cleanup, and vacuum tasks touched older data in a fixed window, so they could run independently, but the generic pipeline model forced all of them into one line.

A failed revision therefore held back unrelated maintenance. Splitting the work into separate DAGs would have added cross-DAG sensors and logical-date coordination, so the real need was to express the dependency graph inside one existing pipeline definition.

02 · My role & ownership

I added a compiler path rather than replacing the platform.

I implemented the TaskSets contract, client, and runtime compiler, including reference and cycle validation before Airflow dependencies are generated. The compiler can express explicit fan-out and fan-in while reusing the existing operator-building path.

The platform serves engineering teams through shared production workflows. That platform context is separate from personal ownership; my contribution is the opt-in graph path and its compatibility with existing serial workflows.

Implemented
TaskSets contract, client, and runtime compiler.
Designed
Reference/cycle validation with explicit parallel fan-in and fan-out.
Scope limit
Shared production workflows are team context, not a personal pipeline count.
Owned

Implemented the TaskSets contract, client, and runtime compiler.

Designed

Added reference/cycle validation and explicit fan-in/fan-out graph construction.

Contributed

Introduced parallel execution as an opt-in path alongside existing serial workflows.

Team context

Shared production workflows across engineering teams describe the platform surface.

03 · System architecture

The compiler makes a graph before Airflow sees edges.

A TaskSets definition passes through the client to the runtime compiler. The compiler validates references and set-level cycles, builds a graph of serial or parallel stages, and only then wires the corresponding Airflow dependencies.

A pipeline that does not declare TaskSets still returns to the established serial path. That two-path behavior lets a team adopt the graph where it helps without altering a stable workflow that has no parallel requirement.

Contract
TaskSets client carries task references, dependencies, and execution intent.
Compiler
Runtime compiler validates references/cycles and constructs the dependency graph.
Execution
Airflow runs explicit fan-out/fan-in for opted-in TaskSets or preserves serial behavior.
TASKSETS TO AIRFLOW

04 · Decisions & trade-offs

Compatibility mattered more than a universal new model.

I chose an opt-in contract instead of converting every generic pipeline to a parallel abstraction. A team declares a TaskSet when its work has real branches or joins; otherwise, the runtime keeps the serial chain it already understands.

Validation happens before dependency wiring so an unknown reference or set-level cycle fails as a graph problem rather than a half-running DAG. The cost is maintaining two code paths and a richer contract, but it gives teams a gradual adoption path.

Chosen approach

Introduce TaskSets as an opt-in parallel compiler path while preserving existing serial behavior.

Rejected alternative

Require every existing pipeline to migrate before it can use a parallel graph.

Why

Teams can adopt fan-out and fan-in where useful without rewriting stable serial workflows.

Cost introduced

The contract, validation, compiler, and two compatibility paths need ongoing maintenance.

OPT INTO PARALLEL WORK

05 · Failure modes & recovery

A bad graph should fail before it starts work.

The compiler rejects unresolved task references and set-level cycles before it generates Airflow dependencies. The workflow owner gets a bounded configuration problem to fix instead of discovering a broken relationship after tasks have started.

Once the definition is corrected, the compiler rebuilds only that graph. Existing serial pipelines remain on their established route, which keeps a TaskSets error from changing unrelated workflows.

Failure signal
A TaskSet has an unresolved task reference or a dependency cycle.
Attribution
The runtime compiler identifies the graph error before dependency generation.
Response
Reject the bounded contract, fix the graph, and compile it again.
Authority
The TaskSets contract and runtime compiler own graph validity.
Recovery check
The generated Airflow dependencies show the corrected fan-out or fan-in graph.
REJECT INVALID GRAPH BEFORE RUNTIME

06 · Evidence & boundaries

Evidence & boundaries

Verified result
TaskSets validates graph references and cycles, then adds opt-in parallel execution without replacing serial workflows.
Contribution scope
I implemented the TaskSets contract, client, and runtime compiler, including reference/cycle validation and parallel fan-in/fan-out.
Metrics not established by public material
No public migration count, deployment-time reduction, or failure-rate delta is established.
TOTAL VIEWS—
TODAY'S VIEWS—