
Problem
Long-running work needs DAG execution, scheduling, retries, and durable state — not a fire-and-forget job queue.
What I built
A distributed workflow engine with cron scheduling, retries, asynchronous tasks, durable state, React Flow editing, and SSE execution monitoring.
Architecture
Go and NATS JetStream for event-driven execution, PostgreSQL for durable workflow state, Next.js and React Flow on the builder, Docker to run it.
My role
Built the workflow engine, event-driven execution path, and the React Flow + SSE monitoring UI.
Frames

