Our motivation
We started Restate over our frustration about how hard it is to build any non-trivial piece of backend logic. Control planes, workflows, API orchestration. We were solving the same problems in the application logic again and again - retries, concurrency, carefully ordered updates - only to find the next person accidentally breaking the sensitive assumptions in the application.
When we built Apache Flink, one of the core ideas was to make stateful stream transformations a building block from which you could compose a wide range of streaming applications. We wanted something similar for the asynchronous, event-driven, long-running work that increasingly makes up our backends.
































