Desarrollador
full‑stack.
Construyo y sostengo los sistemas internos de un medio de comunicación: la arquitectura, el código, la infraestructura y lo que pasa cuando algo se rompe a las tres de la mañana.
Casos seleccionados
Que el error no sea posible
Errores que no compilan
Plataforma multitenant de juegos embebibles, con Truco Argentino como primer juego. Las reglas críticas no están documentadas: están hechas imposibles de violar por el sistema de tipos.
TypeScript · Colyseus · Redis · Vitest · Playwright · pnpm
Gráficos publicables sin pasar por diseño
Herramienta de intranet para que periodistas y editores armen sus propios gráficos. Un único SVG fuente alimenta la vista y los tres exports, así que no pueden desincronizarse.
TypeScript · React · Vite · Tailwind · Vitest · Playwright · C#
Dos formatos que entran, uno solo que sale
Ingesta de cables y fotos de agencias de noticias. Cada agencia entrega distinto y borra sus archivos a los pocos días; el sistema normaliza todo a un modelo único y lo sirve por API a terceros.
C# · .NET · ASP.NET Core · React · TypeScript · SQL Server · Docker
El navegador no sabe dónde están las figuras
Concurso temático con registro, un memotest y sorteo entre los que ganan. El tablero se resuelve en el servidor: el navegador manda qué casillero tocó y nada más.
TypeScript · Next.js · React · Prisma · SQL Server · Docker
Cambiar sin apagar nada
Un sitio nuevo que no rompió el viejo
Portal de clasificados de vehículos con publicación y pago en línea. Reemplazó a un sitio heredado en ASP, pero cada aviso publicado sigue llegando al sistema anterior.
C# · .NET 10 · ASP.NET Core · React · TypeScript · SQL Server · Docker
De COBOL a una Web API, sin apagar nada
El sistema de gestión atravesó tres plataformas entre 2024 y hoy: nació en COBOL, pasó a VB .NET y ahora corre como Web API. Nunca dejó de operar en el medio.
COBOL · VB .NET · C# · ASP.NET Core · React · SQL Server
Carpetas que alguien hacía a mano
El sistema contable vuelca todos los comprobantes en un solo directorio. Alguien los separaba a mano, uno por uno. Ahora se ordenan solos, y el sistema avisa cuando falta uno.
C# · .NET 10 · ASP.NET Core · React · TypeScript · SQL Server · Docker
Cuando el sistema se puede equivocar
Cuando hay premio, aparece el que hace trampa
Plataforma de pronósticos para un torneo, con ranking y premios. La mitad del trabajo no fue el juego: fue detectar multicuenta y bots sin dejar afuera a gente inocente.
C# · .NET 10 · ASP.NET Core · React · TypeScript · SQL Server · Docker
El método fallaba, no la herramienta
Inventario de hardware que se puebla solo. Reemplazó una tabla de wiki que alguien tenía que actualizar a mano cada vez que un equipo cambiaba.
C# · ASP.NET Core · React · TypeScript · SQL Server · PowerShell
El espacio que falta no se ve
Auditor de inventario publicitario. Abre un sitio en un navegador real, reconstruye su wireframe, detecta los espacios de publicidad que la página declara y los compara contra lo que debería haber.
TypeScript · Node · Playwright · C# · ASP.NET Core · React · Docker
Que siga funcionando
Datos que cambian mientras los mirás
Widgets embebibles con resultados electorales y cotizaciones en vivo. Un worker recolecta, una API propia sirve, y si la fuente se cae el widget sigue mostrando el último dato bueno.
C# · .NET 9 · Worker Service · React · SQL Server · Docker
Infraestructura para un equipo que todavía no existe
Repositorio Git self-hosted, dos servidores Docker y despliegue automático por entorno. Montado para una sola persona, pero pensado para el día en que el área de desarrollo sea más de una.
Gitea Actions · Docker · Linux · SSH · SQL Server
Otros sistemas
No todos tienen caso propio. Estos son parte del mismo período y de la misma infraestructura.
- Motor único de ventas — tres iteraciones
El reemplazo del sistema comercial heredado, repensado tres veces. La versión actual busca unificar todos los productos que vende el medio bajo un solo motor de ventas, con frontends públicos y privados e integraciones completas. En etapa de diseño y documentación.
.NET · C# · React · SQL Server
- Extracción de titulares
Extrae titulares de un sitio de noticias, permite gestionarlos y los exporta automáticamente a CSV.
TypeScript · Docker
- Asistente de navegación para suscriptores
Chatbot que guía al lector entre las noticias del sitio: resume, enlaza directo a cada nota e informa sobre los planes de suscripción. Quedó terminado pero no llegó a producción.
.NET · C# · React · SQL Server
- Vectorizador de logos
Proyecto personal: convierte un logo en blanco y negro desde un PNG a una imagen vectorial.
TypeScript