Implementing a Reliable Workflow Engine in TypeScript

How to implement a reliable workflow engine in TypeScript - SFNode presentation

I had a great time presenting DBOS Transact at the SFNode Meetup in San Francisco on May 31, 2024. My presentation focused on why reliable workflows make many business problems easier to solve (for example when doing payments or reliable event processing), why they're hard to implement right now, and how the DBOS Transact open source durable execution library (Python and TypeScript) makes workflows easy to use.

Here are the slides I presented

There were some good questions from the audience:


Q: Why did we choose to implement DBOS Transact in TypeScript?
A: TypeScript's support for first-class functions and robust typing means we can implement workflows with durable execution at the library level, so developers can get their benefits without radically changing the way they code.

Q: How does DBOS handle application updates while workflows are actively in process?
A: Each workflow is versioned, so new requests go to servers hosting new application versions while old workflows can be processed in the background by a different server hosting an old version.

If you have questions about the slides or DBOS, feel free to ask them on the DBOS Community on Discord. I look forward to hearing from you.

Insights

Recent articles

The latest in durable execution, AI workflows & more.

How To
Apr 1, 2026

Async Python is Secretly Deterministic

How Python async functions work, and how to produce async workflows that execute steps concurrently, but with a deterministic, durable execution order.
Peter Kraft
Qian Li
How To
Mar 24, 2026

Running Durable Workflows from Postgres UDFs

Using the Postgres workflows client from DBOS to enqueue durable workflows and send messages to them directly via a SQL function.
Peter Kraft
Qian Li
How To
Mar 16, 2026

Bridging Languages with Postgres and Workflows

In this blog post we explain how services written in different languages can interoperate by using Postgres to exchange data through workflows, messages, events, and streams. 
Peter Kraft
Qian Li