Enrique Goberna

Projects

Selected backend systems focused on event-driven design, reliable data processing, and practical scaling trade-offs.

Order Tracking — Event-Driven Ingestion with Kafka

Problem

Move order-event ingestion off the synchronous request path without losing per-order ordering.

Architecture

An asynchronous Kafka ingestion pipeline keeps request handling thin while DDD and hexagonal boundaries isolate domain rules from transport and persistence.

Key decisions

  • Key Kafka messages by order ID so all events for the same order stay on the same partition and preserve order.
  • Keep domain validation and application workflows behind DDD and hexagonal boundaries instead of coupling them to Kafka or PostgreSQL.
  • Use Testcontainers, GitHub Actions and a Terraform-managed AWS environment as reproducible delivery evidence.

Evidence

Ordered event ingestion · Domain validation · Testcontainers · AWS/Terraform

Stack

Java Spring Boot Kafka PostgreSQL AWS Terraform

Snapshot Ingestion — Resilient Coordination with PostgreSQL

Problem

Ingest unreliable XML snapshots without exposing provider latency and failures to stable search requests or adding Kafka before it is needed.

Architecture

A staged PostgreSQL pipeline separates provider access from asynchronous processing and uses the database as both durable storage and a lightweight coordination mechanism.

Key decisions

  • Stage fetched snapshots before processing so provider availability is isolated from the read path.
  • Coordinate horizontal workers with SKIP LOCKED and advisory locks instead of introducing a separate broker.
  • Combine streaming XML parsing, idempotent upserts and stale-work recovery so retries remain bounded and safe.

Evidence

Streaming XML · SKIP LOCKED · Advisory locks · Idempotent upserts

Stack

Java Spring Boot PostgreSQL XML

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut