Juani Sarmiento

AI Automation Engineer · Mendoza, Argentina

Disponible para entrevistas · Full-time desde ene 2027

Sobre mí

Empecé a programar en 2022, de forma autodidacta, y me recibí de Técnico Universitario en Programación en la UTN (2026). Hoy soy tutor técnico en la tecnicatura a distancia de la UTN y cofundador de Blend Software, donde llevo el backend. Me especializo en IA aplicada a la automatización: agentes, servidores MCP, evals y sistemas que corren en producción.

Busco un rol remoto en LatAm; mientras tanto tomo freelance part-time.

Experiencia

  1. feb 2026 a hoy

    Tutor técnico, Tecnicatura Universitaria en Programación a Distancia (TUPAD), UTN

    Programación 1 (Python) y Programación 4 (FastAPI y Spring Boot), 4 comisiones. Construí Skill-Moodle, que usa el equipo de tutores.

  2. nov 2025 a hoy

    Cofundador y backend, Blend Software

    BlendPOS, sistema de punto de venta en producción con un cliente (un comercio).

  3. abr a jun 2024

    Tutor preuniversitario de Programación, UTN

    Acompañamiento a ingresantes.

Cómo trabajo

Dirijo la arquitectura y delego la implementación a agentes de IA. Para que eso sea confiable, cada cambio pasa por un ciclo fijo y por revisiones con criterios escritos de antemano, no por mi impresión al leer el código.

Ciclo OPSX
Cada cambio recorre explorar, proponer, aplicar, verificar y archivar. El estado de cada cambio lo lleva una CLI (OpenSpec), no la memoria del agente.
Revisores por rol
QA, backend, frontend, DBA, DevOps, arquitecto y analista funcional, cada uno con una definición de terminado observable. Para el DBA, por ejemplo: toda migración tiene una vuelta atrás probada contra una copia de datos reales. Convoco sólo a los roles que el cambio toca, y el que queda afuera se anota con su motivo.
Revisión adversarial
Después de comprobar que lo construido cumple lo especificado, pasadas independientes buscan lo que nadie escribió: la lógica ante entradas límite, el código que quedó sin quien lo llame y los comentarios que dejaron de ser ciertos.
Reporte tipado
Cada afirmación de un agente va etiquetada como evidencia (comando, salida y hora), juicio (quién lo dice, contra qué lo comparó y con qué confianza) o supuesto (lo que dio por hecho sin verificar). Un auditor lee esos informes y marca lo que no se sostiene.
TDD estricto
En la implementación no hay código de producción sin un test que se haya visto fallar antes.
Gates humanos
La autonomía del agente depende del dominio que toca. En autenticación, pagos, seguridad y auditoría no se escribe código sin mi aprobación explícita, y publicar en la rama principal siempre se pregunta.

Bitácora de proyectos

Lo que construí, en orden, hasta llegar a Jarvis.

  1. Entrada 01nov 2025

    BlendPOS

    en producción

    Sistema de punto de venta offline-first con facturación electrónica AFIP/ARCA y gestión de inventario.

    Un comercio necesita vender aunque se corte internet, y facturar en regla con el fisco argentino. La venta se registra local y se sincroniza después. Hoy está en producción en un comercio.

    Cofundé Blend Software con dos socios y soy responsable del backend.

    • Go
    • Gin
    • PostgreSQL
    • Redis
    • Docker
    • React
    • Vite
  2. Entrada 02mar 2026

    AI-Native

    en producción

    Plataforma educativa multi-universidad con un tutor socrático de IA y trazabilidad cognitiva firmada criptográficamente.

    Cuando un alumno usa IA para aprender, el docente no ve si la IA pensó por él o lo ayudó a pensar. La plataforma registra y clasifica esa interacción.

    La plataforma se organiza en 12 microservicios en Python (tutor, clasificador, evaluación, ejecución de código de alumnos y atestación de integridad, entre otros) y cuatro frontends en TypeScript: administración, landing, alumno y docente.

    Fui el implementador técnico principal de la plataforma, construida para un proyecto de investigación universitario, y soy coautor de los dos papers asociados.

    • Python 3.12
    • uv workspace
    • TypeScript
    • pnpm + turbo
    • Playwright
    • Biome
  3. Entrada 03jun 2026

    Skill-Moodle / moodle-copiloto

    activo

    Agente de IA con servidor MCP propio que opera el campus Moodle de la tecnicatura por la API REST oficial. Un solo producto, dos modos de despliegue.

    Un tutor con varias comisiones pierde horas viendo qué falta corregir, armando informes y cargando notas a mano. Lo hice entero para el equipo de tutores de la tecnicatura, unas 25 personas: lista lo pendiente, genera informes, lee el libro de calificaciones, corrige con rúbrica y validación humana, responde foros y carga notas.

    Las escrituras, como cargar una nota, piden confirmación, y ese control lo aplica el harness, no el prompt. Cuando no puede determinar algo, lo dice en vez de adivinar.

    Local (Skill-Moodle)
    Skill de Claude Code que corre en la PC de cada tutor, con un panel local y chat al mismo agente. Es el modo que usa el equipo. Licencia MIT.
    Web (moodle-copiloto)
    Aplicación multi-tenant en un VPS, con FastAPI, Claude Agent SDK y un servidor MCP propio.
    • Python
    • MCP
    • Moodle REST API
    • FastAPI
    • React
    • Claude Agent SDK
  4. Entrada 04ago 2026
    branded-pdf-skillterminadoClaude Skill que convierte Markdown en un PDF con identidad visual usando Chrome headless.

    Portada, índice y código resaltado. Autor único.

    • Python
  5. Entrada 05sep 2026

    Skill-Tutorial-Video

    terminado

    Skill de Claude Code que produce video-tutoriales sin editor de video: graba la pantalla, controla al agente o a VS Code, corta por segmentos, narra con TTS y entrega los .mp4 con subtítulos.

    La imagen se mide con la voz. Para cada segmento del guion, primero se genera el audio y se mide; después el tramo de video se estira o acelera hasta durar lo mismo. No quedan silencios muertos ni hay que calzar nada a mano. Incluye un barrido OCR de privacidad sobre los frames.

    Con ella produje dos series de video-tutoriales; la última reemplaza una clase virtual de una materia de la UTN. Autor único, licencia Apache-2.0.

    • Python
    • ffmpeg
    • Whisper
    • tesseract
    • Fish Audio
    • ElevenLabs
    • Piper
  6. Entrada 06sep 2026

    Misresumenes

    activo, desarrollo diario

    Plataforma de apuntes universitarios interactivos con un chat de IA anclado a cada apunte.

    Un chat de IA genérico contesta sobre cualquier cosa, incluso lo que no está en el apunte. Acá responde sobre el resumen que el alumno tiene delante. El catálogo ya tiene 258 apuntes. Autor único: producto, arquitectura, código y curaduría.

    Sin RAG
    El contexto del chat es el resumen completo. Un tema entra en la ventana de contexto, y así el "no sé" es verificable. Con RAG, un "no sé" puede ser un fallo del buscador disfrazado.
    • Next.js
    • React
    • TypeScript
    • MDX
    • KaTeX
    • Vitest
    • OpenRouter
  7. Entrada 07
    Otros repos públicospúblicosSkill-Apunte-Interactivo, agent-hq y project-scaffold.
    Skill-Apunte-Interactivo
    Convierte apuntes, PDFs escaneados o fotos de pizarrón en una página HTML interactiva con resumen, actividades autocorregidas y examen.
    agent-hq
    Coordinación de 14 agentes especializados vía un servidor MCP, en Go (marzo 2026).
    project-scaffold
    Fork de una skill de Gentleman Programming que genera documentación de proyecto para flujos SDD/OPSX.

Publicaciones

Los dos derivan de AI-Native. Resultado citable: κ = 0,68 en 95 episodios de zona gris codificados a ciegas por un tutor independiente; sin el árbol de 7 reglas, cae a 0,14.

Entrada 08

Jarvis

en producción

Un agente de IA que corre 24/7 en un servidor propio, se opera por WhatsApp y trabaja como secretario personal proactivo, con memoria y observabilidad instrumentada.

Los asistentes de chat esperan que les hables. Quería uno que tomara la iniciativa: que armara el día, recordara pendientes y avisara a tiempo, en el canal que ya uso todo el día. Lo tengo corriendo desde fines de mayo de 2026.

Autor y operador único: diseño, código, despliegue y operación.

  • Node.js 22 (ESM)
  • Claude Agent SDK
  • Baileys
  • Playwright MCP
  • Whisper (Groq)
  • TTS
  • PM2
  • Arize Phoenix

Arquitectura

Entra por

  • WhatsApp, vía Baileys
  • Notas de voz, transcriptas con Whisper
  • Canal de control HTTP local: chequeos de salud y panel web
  • Tareas programadas: resumen de la mañana, consolidación de memoria a la noche, chequeo proactivo con tope diario de avisos

Un proceso Node en PM2

  • Conexión y ruteo de mensajes
  • Wrapper del Agent SDK: reintentos y system prompt dinámico
  • Memoria
  • Anti-ban: jitter gaussiano, "escribiendo..." proporcional al largo, límite por minuto, backoff exponencial
  • Cola de salida que sobrevive reinicios

Habla con

  • Modelos Claude vía Agent SDK, en tres cerebros: rápido, pesado e instancias aisladas
  • Playwright MCP para navegar
  • Arize Phoenix en localhost: un span OTLP por llamada
  • WhatsApp de vuelta, en texto o audio

Afuera del proceso, un cron chequea el canal de control cada 5 minutos y, tras tres fallas seguidas, lo reinicia. Cubre el event loop colgado que PM2 sigue viendo como "vivo".

Con una variable de entorno, Jarvis arranca sin WhatsApp y sigue contestando por el panel web, con el mismo hilo y la misma memoria. WhatsApp es un transporte, no el producto.

Observabilidad y evals

Cada llamada al modelo emite un span OTLP a Arize Phoenix, self-hosted en el mismo servidor y escuchando sólo en localhost. La telemetría nunca rompe ni demora al bot, y el system prompt no se traza. Las trazas son el primer paso del plan de evals: error analysis sobre conversaciones reales leídas a mano, sin taxonomía previa, y después un dataset de referencia y gates de calidad.

Preguntale a Jarvis lo que quieras sobre mí

Es el mismo sistema que acabás de leer, corriendo en una instancia aislada, sin acceso a nada privado. Responde desde la misma base de información pública de la que sale esta página.

Escribirle a Jarvis por WhatsApp

Jarvis es un agente de IA. Si no sabe algo, te lo dice y te pasa mi mail.

¿Preferís mail? juanisarmientoomartinez@gmail.com

O escaneá el QR con el celular.