Decisiones,
no tutoriales.
El criterio detrás de las herramientas que construyo: qué problema había, qué decidí y por qué. Escrito desde código en producción, no desde la teoría.
Analizar cualquier dominio sin poner en riesgo el propio
Convertir un endpoint de diagnóstico que solo yo podía usar en una herramienta pública para mis compañeros — y por qué eso obliga a resolver primero el abuso y el SSRF, no el análisis en sí.
Mutar mi código para saber si mis tests sirven de verdad
Cobertura dice qué líneas se ejecutaron. Mutation testing pregunta algo más incómodo — si rompo esta línea a propósito, ¿algún test se entera? Y contratos con Zod, para que un endpoint no cambie de forma sin que nadie se dé cuenta.
No solo un scan verde
Conectar npm audit, CodeQL y axe-core a un panel propio con historial y dedup — para que un análisis de seguridad y accesibilidad cuente una historia, no solo un checkmark que nadie mira dos veces.
Cobrar un trabajo de campo sin API de WhatsApp
No todo mi trabajo es código. Necesitaba cobrar soporte técnico desde el celular, en la calle, sin pagar una API de WhatsApp Business ni exponer el monto en un link que cualquiera pudiera tocar.
Tests e2e que prueban lo que de verdad importa
Cerrar la pirámide de testing con Playwright sin volverla frágil — bases de datos desechables, un centinela que demuestra el aislamiento de la demo, y por qué cada test necesita su propia IP.
Construyendo un micro-SIEM para mi portfolio
Los scanners atacan cualquier sitio con IP pública, incluido este. En vez de ignorar el ruido, construí un motor propio que lo detecta, lo clasifica, lo bloquea y lo muestra en público.
RAG — cuándo conviene y cómo no arruinarlo
Retrieval-Augmented Generation no es magia ni un reemplazo del fine-tuning. Es una decisión de arquitectura con trade-offs claros — y la mayoría de los fracasos ocurren en la recuperación, no en el modelo.
Sesiones revocables sobre un JWT stateless
Mi panel de admin usaba JWT puro; una cookie robada era imparable hasta expirar. Así le añadí lista de dispositivos, revocación remota y alertas sin abandonar el JWT.
Chaos engineering que no puede hacerte daño
Inyectar fallos en producción para probar que las alertas funcionan — con fail-open, TTL obligatorio y un botón de pánico, para que el caos jamás se convierta en un incidente real.
Por qué construí mi propio monitor de uptime
UptimeRobot me decía que todo estaba bien mientras producción servía la página equivocada. Así que escribí el motor de checks que necesitaba.
SLOs y error budgets para proyectos pequeños
El uptime en porcentaje engaña. Adaptar la disciplina SRE de Google — SLI, SLO, presupuesto de error y burn rate — a un portfolio de proyectos chicos.