Technology stack

Architecture choices for products that last.

We choose boring where boring wins, and specialized where the product needs it: modular monoliths, event-driven services, serverless workloads and managed cloud.

Lenguajes

.NET Core

Plataforma backend empresarial — APIs, servicios y workers para sistemas regulados o de gran escala.

Java

JVM para backend empresarial, Spring Boot, sistemas financieros y procesamiento batch de alto volumen.

Go

Servicios con concurrencia nativa, baja latencia y huella mínima — ideal para microservicios y CLIs operativas.

TypeScript

Type safety end-to-end en producto web — Next.js, Node, scripts de operación.

JavaScript

Cuando el caso lo justifica — browser legacy, prototipos rápidos, edge functions.

Bases de datos

MongoDB

Documento NoSQL flexible para producto en evolución, catálogos heterogéneos y eventos.

DynamoDB

NoSQL serverless de AWS — escala automática, latencia predecible para sistemas de alta concurrencia.

PostgreSQL

Relacional estándar para data transaccional, JSON cuando aplica y extensiones (pgvector, postgis).

Redis

Cache, sesiones, rate limiting y colas livianas — el caballo de batalla operativo.

Mensajería & realtime

Apache Kafka

Event streaming a escala con replay, particionamiento y retención durable.

RabbitMQ

Colas y workflows asíncronos con routing flexible, dead-letter y reintentos predecibles.

Socket.IO

Realtime confiable con fallback a polling — chat, notificaciones live, dashboards colaborativos.

WebSockets

Realtime nativo cuando se necesita protocolo crudo y control fino del transport.

Cloud · AWS

AWS Lambda

Cómputo serverless event-driven — Node, Python, Go. Costo cero cuando no se ejecuta.

ECS Fargate

Contenedores administrados sin gestionar EC2. Ideal para servicios long-running con autoscaling.

RDS

PostgreSQL y MySQL administrados con backups, réplicas y multi-AZ.

S3 + CloudFront

Storage de objetos + CDN global — assets, builds, distribución de contenido.

EventBridge / SQS

Bus de eventos serverless y colas administradas para integración entre servicios y SaaS.

Arquitecturas & patrones

Monolito modular

Monolito bien diseñado con módulos desacoplados — más rápido de operar y evolucionar al inicio.

Microservicios

Decomposición por dominio cuando hay autonomía de equipo y necesidad de despliegue independiente.

Event-driven

Comunicación asíncrona con eventos como source of truth — Kafka, EventBridge, RabbitMQ.

DDD

Domain-Driven Design para alinear modelo de software con el modelo de negocio real.

Hexagonal

Arquitectura por puertos y adaptadores — testabilidad alta, dependencias hacia adentro.