Over two years, the Order Management Team built and migrated to a new Workflow System, motivated by some reasons which I explain in an earlier post:
Microservices to Workflows: The Evolution of Jet.com Order Management System
TLDR: Expressing business domains as workflows simplifies development and improves the overall maintainability. Read the previous post for more details :).
This post goes into the details about how we use F# to model our workflows as a DSL.