Temporal Applications
This is a series of posts based on Temporal SDK. I am going to explore how Temporal helps us achieve reliable systems with a built-in event sourcing and message broker environment.
Personal Context
I have some experience trying to build systems and platforms for startups. After a while, I got into the microservices world and then into the event-driven architectures. Every developer will find the same problems throughout those applications. One of them: RELIABILITY.
From timeouts and retries to maintaining a stable state inside a big platform with multiple databases and applications is a nightmare. And you probably had the chance to do a database update in the middle of the night to adjust some wrong data in your system. Not cool.
Jumping to the end. I helped develop an architecture to improve reliability and enforce a stable state inside a platform. From that, I learned a lot about choreography, orchestration, kafka, event-driven, sagas, compensations and a lot of other buzzwords.
But one thing comes to me. What if I need to do that again? Do I need to implement everything again? What happened to DRY (Don't Repeat Yourself)?
The Answer
So I needed something open-source that could help me achieve the same level of reliability and versatility while avoiding a vendor lock.
My answer: Temporal.
It doesn't have the best performance but I think for the most purposes it will fit.
Temporal Series
I am going to explore this new world by developing some very common systems using Temporal technologies and posting here.
Hope it becomes useful for you.
Subscribe to my newsletter
Read articles from Lucas Katayama directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Lucas Katayama
Lucas Katayama
I am a self-taught, quick learner and highly motivated Full Stack JavaScript Developer with more than 10 years of experience developing, designing and managing web and mobile applications in a startup environment, seeking to develop skills to ensure software quality and reliability. Also seeking other challenges and learn new technologies.