Banking Platform (Microservices + Events)
Three NestJS microservices with PostgreSQL per service and a Kafka-compatible event bus (Redpanda).
Role
Architect & implementer Arquitecto e implementadorProblem
Model a banking-style domain with reliable cross-service events and failure recovery. Modelar un dominio tipo banca con eventos confiables entre servicios y recuperación ante fallos.Impact
Outbox pattern, idempotent consumers, retry/DLQ policies, and isolated DB per service — production-grade event flow. Patrón outbox, consumidores idempotentes, reintentos/DLQ y BD aislada por servicio — flujo de eventos listo para producción.Technical stack
Layer-by-layer breakdown of subsystems, repositories, and production concerns.
Accounts microservice Microservicio de cuentas
Owns account aggregates and balance state in an isolated PostgreSQL database — publishes domain events on changes. Posee agregados de cuenta y estado de saldo en PostgreSQL aislada — publica eventos de dominio ante cambios.
- Database-per-service boundary Límite de base de datos por servicio
Transactions microservice Microservicio de transacciones
Handles transfers and ledger operations with its own PostgreSQL schema — consumes and emits banking-style events. Maneja transferencias y operaciones de ledger con esquema PostgreSQL propio — consume y emite eventos tipo banca.
- Decoupled from accounts via async messaging Desacoplado de cuentas vía mensajería async
Redpanda / Kafka event bus Bus de eventos Redpanda / Kafka
Kafka-compatible streaming backbone connecting all services with typed topics and consumer groups. Backbone de streaming compatible con Kafka conectando servicios con topics tipados y consumer groups.
- Event-driven integration instead of synchronous HTTP chains Integración orientada a eventos en lugar de cadenas HTTP síncronas
Outbox, idempotency & DLQ Outbox, idempotencia y DLQ
Transactional outbox for safe publishes, idempotent consumers, retry policies, and dead-letter handling for poison messages. Outbox transaccional para publicaciones seguras, consumidores idempotentes, reintentos y dead-letter para mensajes poison.
- Production-grade failure recovery patterns Patrones de recuperación ante fallos listos para producción
Related topics
Explore curated hubs that connect this work with case studies, articles, and learning repos.