Keeping saga workflows defined as code could make version control and reviews much easier. I'm curious how the approach handles failures and compensating actions across multiple services.
BPMN as Code: From a Text-Based Model to a Working Microservices Sagas
Valentine Shimanovsky
●5 ●33 ●86
calendar_today
• schedule5 min read
— Originally published at valentineshi.dev
2 Comments
Lennox
•
Valentine Shimanovsky
•
@[Lennox] Thanks for the question. Camunda does all this - retries, failures, compensations. The workflow to run this in Camunda is, as I described, Mermaid BPMN code -> BPMN XML -> deploy the Camunda stack -> provide the XML as process to it -> engineer implements the actual services executing the business logic -> call the start endpoint -> watch the process runs via Camunda UI and via logging.
Please log in to add a comment.
🔥 Join developers growing publicly
Share your knowledge, build in public, and grow your developer presence with a global community.
Please log in to comment on this post.
More Posts
- © 2026 Coder Legion
- Feedback / Bug
- Privacy
- About Us
- Contacts
- You Tube
- Tiktok
- Premium Subscription
- Terms of Service
- Early Builders
chevron_left
29Posts
52Comments
25Connections
Senior Backend / Full-Stack / Founding Engineer specializing in complex business systems. Node.js, T... Show moreSenior Backend / Full-Stack / Founding Engineer specializing in complex business systems. Node.js, TypeScript, LLM Decision Workflows and AI-augmented accelerated product development.
I own - design and build production backend systems end-to-end in collaboration with product and engineering teams: from requirements, system architecture and contract-first APIs (OpenAPI) to ingestion pipelines, async orchestration, deployment, observability.
I actively use AI-augmented development workflows and spec-driven engineering to accelerate delivery while preserving the code validity and effectively minimizing defects. I design and implement AI/LLM programmatic decision workflows with constrained outputs, controlled vocabularies, and deterministic validation to ensure reliable behavior and eventual correctness in systems.
I ship high-reliability, low-firefight backend platforms for startups and early scale-ups, from day one built to be easily evolvable and fully prepared for continuous product change.
I use the following tools for that:
- Extended Model-Based Engineering (C4, UML/PlantUML for domain, architecture and fine sequence/state modeling)
- Domain-Driven Design (DDD) with Hexagonal Architecture
- Contract-First APIs (OpenAPI, AsyncAPI, JSON Schema validation, generated contracts enforcement)
- ATDD/TDD/E2E (Specification-by-Example, data providers, Testcontainers, integration-first backend testing)
- Event-driven and async workflow architectures (webhooks, queues, idempotence, state-based orchestration workflows)
- Deterministic automated code quality gates (linting, static analysis, git hook guards in CI, ~100% code coverage)
- Competent AI-augmented product engineering: OpenSpec SDD, agentic workflows, rapid prototyping, legacy refactoring, vibe-coding remediation, explicit engineering introduction
See my public engineering case: AI-Powered Image Generation & Publication System (Imagetron) at: https://valentineshi.dev/content/deliverables/K3aT7UX_RCC8ZO_fy9VinQ/ai-powered-image-generation-publication-system-imagetron
More details and other delivered public cases: https://valentineshi.dev Show less
I own - design and build production backend systems end-to-end in collaboration with product and engineering teams: from requirements, system architecture and contract-first APIs (OpenAPI) to ingestion pipelines, async orchestration, deployment, observability.
I actively use AI-augmented development workflows and spec-driven engineering to accelerate delivery while preserving the code validity and effectively minimizing defects. I design and implement AI/LLM programmatic decision workflows with constrained outputs, controlled vocabularies, and deterministic validation to ensure reliable behavior and eventual correctness in systems.
I ship high-reliability, low-firefight backend platforms for startups and early scale-ups, from day one built to be easily evolvable and fully prepared for continuous product change.
I use the following tools for that:
- Extended Model-Based Engineering (C4, UML/PlantUML for domain, architecture and fine sequence/state modeling)
- Domain-Driven Design (DDD) with Hexagonal Architecture
- Contract-First APIs (OpenAPI, AsyncAPI, JSON Schema validation, generated contracts enforcement)
- ATDD/TDD/E2E (Specification-by-Example, data providers, Testcontainers, integration-first backend testing)
- Event-driven and async workflow architectures (webhooks, queues, idempotence, state-based orchestration workflows)
- Deterministic automated code quality gates (linting, static analysis, git hook guards in CI, ~100% code coverage)
- Competent AI-augmented product engineering: OpenSpec SDD, agentic workflows, rapid prototyping, legacy refactoring, vibe-coding remediation, explicit engineering introduction
See my public engineering case: AI-Powered Image Generation & Publication System (Imagetron) at: https://valentineshi.dev/content/deliverables/K3aT7UX_RCC8ZO_fy9VinQ/ai-powered-image-generation-publication-system-imagetron
More details and other delivered public cases: https://valentineshi.dev Show less
More From Valentine Shimanovsky
Related Jobs
- Staff Java Engineer, Cloud-Native Microservices LeadQuest Oracle Community · Full time · Springfield, IL
- Database Administrator Sr - Infrastructure as Code / Full Stack EngineerLockheed Martin · Full time · Puerto Rico
- Spanish Educational Video Scriptwriter / Instructional Content DeveloperIdlewild Co · Full time · Charleston, WV
Commenters (This Week)
glnr
2 comments
Agdex.ai
1 comment
jaiswaldhiraj910
1 comment
Contribute meaningful comments to climb the leaderboard and earn badges!