
Madrid. Remoto, híbrido o presencial.
Bienvenidos, soy Jordi.
Desarrollador de software e IA. Diseño agentes, automatizaciones y soluciones seguras.
Tras 19 años de experiencia profesional en distintos sectores, he desarrollado una sólida capacidad para relacionarme con clientes, compañeros y responsables, manteniendo siempre una actitud profesional, respetuosa y orientada a la solución de problemas. Destaco por mi responsabilidad, seriedad y compromiso, así como por mi saber estar en cualquier entorno laboral. Tengo una gran capacidad de aprendizaje y adaptación a nuevos retos, herramientas y formas de trabajo, afrontando cada etapa con ilusión, disciplina y ganas de seguir creciendo profesionalmente.
Soy Técnico Superior en Desarrollo de Aplicaciones Multiplataforma (DAM) y actualmente me estoy preparando para especializarme en Ingeniería de IA. Trabajo diariamente con herramientas como Claude Code, Cursor, Visual Studio Code, OpenCode, Codex, Antigravity y Gemini. Desde que aparecieron estas tecnologías me mantengo actualizado utilizando conectores, MCPs, skills, LiteLLM, ingeniería de prompts, RAG, incrustaciones y bases de datos vectoriales, uso de herramientas, marcos de agentes, y ajuste fino. Diseño agentes, automatizaciones y soluciones basadas en LLMs, explorando continuamente nuevas tecnologías y buenas prácticas de desarrollo para construir software útil, seguro, mantenible y escalable. Tengo ambición por mantenerme en continuo crecimiento, que me permita aprender y mejorar a través de la experiencia profesional y la formación tecnológica.
Soy junior, pero no soy desordenado.
Me gusta analizar todos y cada uno de los detalles antes de implementar.
Análisis de requisitos
Antes de programar escribo qué debe hacer el sistema y cómo sabré que está bien.
Ver ejemploArquitectura
Elijo la estructura según el problema y dejo cada decisión por escrito.
Ver ejemploBases de datos
Elijo el motor según el dato: relacional, vectorial, grafo o clave-valor.
Ver ejemploAPIs e interfaces
Diseño el contrato primero: REST, WebSocket o streaming según el caso.
Ver ejemploRedes
Entiendo el camino de cada petición: DNS, TLS, CORS y proxy inverso.
Ver ejemploSeguridad
Valido toda entrada, aplico mínimo privilegio y compruebo mis controles.
Ver ejemplo
Programación y calidad
Código legible, funciones pequeñas y refactorización con tests detrás.
Ver ejemploControl de versiones
Una rama por tarea, commits claros y merge solo con las pruebas en verde.
Ver ejemploPruebas
Escribo el test antes del arreglo y compruebo que falla cuando debe.
Ver ejemploDependencias
Versiones fijadas con hash, auditadas y solo las necesarias.
Ver ejemploCI/CD
Cada push pasa lint, tipos, tests y auditoría antes de integrarse.
Ver ejemploDespliegue y contenedores
Empaqueto en contenedores y despliego con una forma probada de volver atrás.
Ver ejemplo
Observabilidad
Logs, métricas y trazas para saber qué pasa sin tener que adivinar.
Ver ejemploMantenimiento
Versiono con changelog y pago la deuda técnica antes de que crezca.
Ver ejemploDocumentación y decisiones
Cada decisión de arquitectura queda en un ADR con sus alternativas.
Ver ejemploModelos y ecosistema de IA
Sé qué pieza hace qué: modelos, embeddings, MCP y automatización.
Ver ejemploRAG y memoria
Recuperación híbrida y la memoria adecuada para cada tipo de dato.
Ver ejemploAgentes de IA
Agentes con herramientas acotadas, guardias deterministas y evaluación.
Ver ejemplo
Mis proyectos destacados
- 01Agente de IAEspecialistaUn tutor para el personal de una clínica: responde sobre sus propios protocolos, guías y fármacos, y cada frase cita el documento y el apartado del que sale. Dos guardias deterministas impiden que decida sobre un paciente, y se le puede preguntar hablando: responde en voz alta con un avatar 2D que solo lee lo ya verificado.Terminado
- LangGraph
- NLP
- FastAPI
- ChromaDB
- Neo4j
- PostgreSQL
- Azure OpenAI
- Docker
- +29
- 02AplicaciónGordito FamilyApp Android para toda la familia: calculo las necesidades de cada miembro, genero menús con lo que hay en la nevera, planifico la compra al gramo y registro entrenos, con un asistente de IA integrado. Es mi proyecto final del ciclo formativo y ya va por la versión 1.1, instalable como APK.Terminado
- React Native
- Expo SDK 54
- Firebase
- Ollama Cloud
- JavaScript
- Firestore y Auth
- React Navigation
- Context API
- +5
- 03Agente de IAAsistente multiagenteDiseñé y desplegué en mi propio VPS un asistente multiagente que investiga en la web, gestiona mis notas, lee y redacta mis correos y me contesta por voz. Lo blindé contra la inyección de prompts partiendo el sistema en zonas de confianza, y lo respaldan más de 2.400 tests.En producción
- Python
- LangGraph
- Telegram Bot API
- SQLite
- Pydantic
- python-telegram-bot
- Ollama Cloud
- Groq (voz a texto)
- +10
- 04Herramientakit-isoConvertí el cumplimiento normativo en código: una librería y CLI que decide qué normas aplican a un proyecto y las audita. Cubre unas 15 (ISO 27001, 27701, 25010, 42001, RGPD, AI Act, CRA, WCAG…), se publica como GitHub Action y deja instrucciones para 5 agentes de IA. Versión 1.1 con 249 tests.Terminado
- Python
- CLI
- GitHub Actions
- Bandit
- Radon
- pip-audit
- cryptography (Fernet)
- Argon2
- +8
- 05Agente de IAAgente de IAConstruí un agente sin frameworks, pieza a pieza, en cuatro niveles: chat, memoria, herramientas y caso real. Terminó con bot de Telegram, memoria semántica local, failover entre tres proveedores, dependencias con hash y 831 tests en CI.Terminado
- Python
- Groq
- Ollama
- Gemini
- ChromaDB
- Pydantic
- GitHub Actions
- OpenAI SDK
- +12
- 06Agente de IAAgente GraphosLe describo un grafo de LangGraph en lenguaje natural y el agente lo diseña, me enseña el código para que lo apruebe, lo genera con sus tests, los ejecuta en un entorno aislado y se autocorrige si fallan.En pausa
- LangGraph
- CrewAI
- Pydantic
- Python
- 6 proveedores LLM
- 07AplicaciónTraductor en vivoTraduzco en tiempo real todo lo que suena en mi PC: corta por pausas con Silero VAD, transcribe en GPU con mi propio motor de Whisper sobre ONNX Runtime, traduce en local con Ollama y lo lee en voz alta bajando el volumen del navegador. Subtítulos flotantes y exportación a SRT.Terminado
- Python
- Whisper (ONNX Runtime + DirectML)
- Silero VAD
- Ollama
- NumPy
- sounddevice
- Hugging Face Tokenizers
- deep-translator
- +11
- 08Agente de IASistema Multi-AgenteEstoy construyendo un equipo de 15 agentes expertos (arquitecto, desarrollador, tester, seguridad, DevOps, ML…) coordinados por un orquestador que automatiza tareas de desarrollo. CLI y dashboard en tiempo real, cualquier LLM con una variable de entorno, revisado contra el OWASP Top 10 y con más de 1.300 tests.En desarrollo
- Python
- FastAPI
- LiteLLM
- Redis
- Qdrant
- MCP
- Uvicorn
- WebSocket
- +13
- 09Agente de IARevisor de Pull Requests con IARevisor de Pull Requests con IA: pegas la URL de un PR de GitHub y tres agentes en paralelo detectan bugs, vulnerabilidades y problemas de estilo. Lo construimos un equipo de siete y yo me encargué de la integración con GitHub, el agente de bugs y el manejo de errores de punta a punta.TerminadoProyecto en equipo de 7
- LangGraph
- FastAPI
- React
- Groq (Llama 3.3 70B)
- Python
- Uvicorn
- Pydantic
- httpx
- +7
- 10HerramientaMis Skills a medidaLo que he construido para trabajar mejor con agentes de IA: 22 skills propias, un enjambre auditor de seguridad de solo lectura, memoria persistente para cualquier agente, una plantilla LangGraph verificable a coste 0 y un investigador portable.En desarrollo
- Claude Code
- Cursor
- Antigravity
- Codex
- OpenCode
- Copier
- LangGraph
- Obsidian
Stack con el que trabajo
Stack- Lenguajes
- Python, TypeScript, JavaScript, Java, Kotlin, C++, SQL, Bash, PowerShell
- IA
- LangGraph, NLP (procesamiento del lenguaje natural), LangChain, Sistemas multiagente, Agentes ambientales, Deep research, RAG híbrido, Tool calling, MCP, Ollama, LiteLLM, Observabilidad y evaluación de agentes, Ollama Cloud, Groq, Azure OpenAI, Embeddings locales, Deep Agents SDK, CrewAI, Human-in-the-Loop
- Observabilidad y evaluación de IA
- LangSmith, LangGraph Studio y Cloud, LLM-as-a-judge, Comparativas pairwise
- Desarrollo con agentes de IA
- Claude Code, Cursor, Antigravity, Codex, OpenCode
- Arquitectura y metodología
- Arquitectura hexagonal, DDD, SOLID, SDD, Scrum, ADR, Puertos y adaptadores, import-linter
- Frontend y móvil
- React, React Native, Expo, Next.js, Vite, HTML5, CSS3, Tailwind CSS, Framer Motion, Android (APK), App Router, Server Components
- Backend y APIs
- FastAPI, Node.js, NestJS, Flask, REST, Pydantic, Telegram Bot API, WebSockets, JWT, OpenTelemetry, httpx, SQLAlchemy, SSE Streaming, API keys con scopes, Rate limiting, Seguridad de red (anti-SSRF), Uvicorn
- Persistencia y datos
- PostgreSQL, SQLite, MySQL, Oracle SQL, Firebase (Firestore/Auth), Redis, ChromaDB, Qdrant, Neo4j, pgvector, SQLite (WAL), BM25, Firestore, Pub/Sub
- Audio e inferencia
- Whisper (ONNX Runtime), ONNX Runtime (DirectML), Silero VAD
- Testing y seguridad
- Pytest, Pruebas de mutación, TDD, Ruff, mypy, Bandit, pip-audit, Fernet, OWASP, mutmut, gitleaks, Dependabot, TOTP
- Herramientas
- Git, GitHub, GitHub Actions (CI/CD), Jira, Slack, Notion, Docker, Docker Compose, EAS Build, uv, VS Code, Android Studio, Excalidraw, Figma, VirtualBox, Obsidian (método PARA), Copier, systemd, Vercel
Certificados y títulos
Ver certificados y títulosMi formación reglada y 13 certificados: LangChain Academy (LangGraph, LangSmith, agentes ambientales, deep research, deep agents, observabilidad) y BIG School (desarrollo con IA).
- Introduction to LangGraph
- LangGraph Essentials
- dcode Essentials
- Introduction to Deep Agents
- Deep Research with LangGraph
- Ambient Agents with LangGraph
- Agent Observability & Evaluations
- Building Reliable Agents with LangSmith
- LangSmith Essentials
- IA Workflows
- Desarrollo con IA
- Curso de IA 2026 (Vibe Coding y Automatizaciones)
- Desarrollo con IA: de 0 a Producción
Últimos posts
Ver todos- 28 oct 2026, 5 min de lecturaMis especialistas, terminado: un tutor clínico que solo dice lo que puede citarCierro mis-especialistas con voz y avatar. Cuento cómo lo hice seguro (guardias, permisos y solo suena lo verificado), los cuatro problemas de voz que no vi venir y lo que medí.
- 02 oct 2026, 6 min de lecturaCuatro motores de datos, cuatro trabajos distintos: SQLite, Redis, vectores y PostgresCómo elijo dónde guardar cada cosa en mis agentes (SQLite, Redis, Qdrant/Chroma, Postgres y Neo4j) y qué he probado de verdad frente a lo que solo he estudiado.
- 30 sept 2026, 7 min de lecturaMutar a mano para saber si mis tests protegen algoRompo un control a propósito y miro si cae el test correcto. Con ejemplos reales de verdes falsos, mutmut en reto y un arnés que no da veredicto si no corre entero.
Sobre mí
Si has llegado hasta aquí… Voy a ser sincero y contarte cómo acabé en el mundo de la tecnología y el desarrollo.
Vivo en Madrid y tengo 36 años. Empecé a trabajar con 16 porque decía que no me gustaba estudiar. Durante catorce años trabajé en carpintería: fui aprendiz, oficial y autónomo durante 5 años. Trabajé para compañías como Zurich, Generaly, AXA, Caixa, Santander y para particulares. Todavía me gusta ese oficio y todavía me considero carpintero. Sé lo que es tratar con clientes, compañeros y responsables.
Pero un día empecé a preguntarme: ¿por qué dejé de estudiar? Mientras trabajaba, me saqué la ESO, Acceso a la Universidad y Grado superior (DAM). En la programación encontré un campo en el que me desenvolvía muy bien y me interesaba de verdad: crear software y entender todo lo que hace falta para que funcione más allá de una demostración.
Después llegó la inteligencia artificial y el sector empezó a cambiar a toda velocidad. Actualmente me mantengo al día en todas sus novedades (que no son pocas) IA engineer, Harness, MCPs, conectores, skills, GitHub... Para alguien que, como yo, está empezando, encontrar una oportunidad como desarrollador junior no es sencillo. Pero también entiendo que este es un mundo en el que hay que estar actualizado, seguir aprendiendo y adaptándose constantemente hacia la evolución de la tecnología.
Y aquí estoy buscando trabajo como junior y especializándome en Ingeniería de Inteligencia Artificial: quién le diría a ese chaval de 16 años al que no le gustaba estudiar... que terminaría y seguiría formándose de por vida, en un sector que no dejará de avanzar. Este ha sido mi camino... y cada etapa me ha enseñado algo que hoy llevo conmigo: constancia, responsabilidad, respeto, aprendizaje, capacidad de adaptación y querer siempre terminar lo que comienzo, cueste lo que cueste.