Backend Engineer en Python.

Más de 6 años en backend. Stack principal: Python · FastAPI · PostgreSQL · Redis · Kafka · AWS · Azure.

order-processing-platform / orders.py ADR-004
# idempotencia en dos capas
@router.post("/orders", status_code=201)
async def create_order(
    payload: OrderIn,
    idem_key: str = Header(...),
):
    async with redis_lock(idem_key, ttl=600):
        try:
            return await orders.insert(payload)
        except UniqueViolation:
            # replay: devolver el existente
            return await orders.get(idem_key)
Patrón en producción leer post →

Stack

  • Python
  • FastAPI
  • Node.js
  • TypeScript
  • PostgreSQL
  • Redis
  • Kafka
  • Docker
  • AWS
  • Azure
  • Claude API
Ver stack completo

Experiencia

Lenguajes PythonNode.jsTypeScriptJavaScript
Frameworks FastAPIExpress
Datos e IA PostgreSQLRedisKafkaAzure SQLCosmos DBSQLiteOpenAI APIAnthropic Claude API
Cloud AzureAWS
DevOps DockerGitHub ActionsAzure DevOpsGitREST APIsMicroservicesMulti-tenant SaaSOpenTelemetry

Competente

Frameworks ReactNext.jsTailwind CSSAstroVitePrismaSQLAlchemy 2.0Pydantic v2Alembic
Datos e IA RAG pipelinesAgent orchestrationLLM gatewaysPrompt engineering
Cloud GCP
DevOps CaddynginxKubernetesfail2bansystemd
Seguridad JWT (jose)Google OAuthAPI key + bearer authSigned URLs

Nociones

MongoDBMySQLFirebaseAngularTerraformPrometheusGrafanaRAG patterns (pgvector)Vector DBsLangChain / LangGraphJava.NETPHPWordPress

Experiencia

Backend Engineer · Python + AI Integration

Dichter & Neira · LATAM

PythonFastAPIAzurePostgreSQLLLM (Claude/OpenAI)Next.js

Backend Engineer

Periferia IT Group

Node.jsPythonC# (production support)Banking domain

Backend Engineer

Tata Consultancy Services

Node.jsPythonC# / AngularJS supportE-invoicing

Backend Software Engineer

WOM Colombia · Telecom

PythonDjangoOracle DB

Proyectos

Flagship

Order Processing Platform

Idempotency dual-layer: Redis lock atómico + Postgres unique constraint. Token bucket Lua para rate limiting sin race conditions. Cursor pagination, cache-aside con invalidación por evento. Cada decisión documentada como ADR.

Python 3.12FastAPIPostgreSQL 16Redis 7SQLAlchemy 2.0Docker
$ make setup && make up

Observability Starter

Stack de observabilidad para microservicios Python: structlog JSON con correlation ID propagado entre servicios, métricas RED por endpoint vía Prometheus, trazas distribuidas OpenTelemetry. Un request ID une el log, la métrica y el trace.

Python 3.12FastAPIOpenTelemetryPrometheusstructlogJaeger
$ make setup && make up

LLM Quota Gateway

Proxy OpenAI-compatible que pone quota por tenant, semantic cache (pgvector) y audit de costo delante de cualquier proveedor. En producción ruteando a OpenRouter (multi-modelo con una key): cada producto que lo consume queda con su gasto de IA desglosado. Drop-in — cambiás una base URL.

Python 3.12FastAPIpgvectorOpenRouterCloud Run
$ docker compose up # ver docs/adr para las decisiones

Multi-Tenant API

Aislamiento schema-per-tenant en PostgreSQL enforced a nivel de conexión — no en filtros de aplicación. Una WHERE olvidada devuelve vacío, nunca datos de otro cliente. Alembic multi-head migrations.

Python 3.12FastAPIPostgreSQL 16AlembicRedis 7JWT
$ make setup && make up

Webhook Delivery Engine

At-least-once delivery con circuit breaker por endpoint, exponential backoff con jitter, y dead letter queue. Endpoints lentos no bloquean la entrega al resto. Cada webhook tiene recibo de entrega o entra al DLQ.

Python 3.12FastAPIARQPostgreSQL 16Redis 7httpx
$ make setup && make up

Thesis RAG · Unicórdoba

RAG conversacional sobre 271 tesis de Ingeniería de Sistemas de la Universidad de Córdoba (vía API DSpace). Búsqueda híbrida pgvector + full-text en español con RRF, agente orquestado en LangGraph, y respuestas con cita trazable a la tesis fuente; si no hay evidencia suficiente lo dice en vez de alucinar. En producción sobre Cloud Run + Neon, con suite pytest y CI.

Python 3.12FastAPIpgvectorLangGraphGroqNeonCloud Run
$ cd api && uv sync && uv run uvicorn app.main:app --reload

Hablemos de tu backend

Cuéntame qué estás construyendo o qué se está cayendo. Respondo en 2-3 días.

Bitacora dev semanal

Backend Engineer · Python y Node.js. Notas reales de produccion. Una vez por semana, sin spam.