Universitat Politècnica de Catalunya
Grado en Ingeniería de Sistemas Aeroespaciales
2015 — 2019
Base de ingeniería, matemáticas y sistemas, que compaginé con mis primeros años de trabajo en Dynamics.
Este registro está abierto a nuevas oportunidades y colaboraciones. Programar una cita
Contacto · Consultor técnico y desarrollador Dynamics 365
Formación
2015 — 2019 · Universitat Politècnica de Catalunya · Formación complementaria
Grado en Ingeniería de Sistemas Aeroespaciales y formación complementaria en programación, gestión empresarial y relación con clientes.
Pasos completados
Junior
2019 — 2021 · Revertis S.L.
Primeros pasos en el ecosistema Dynamics: AX 2012 y Finance and Operations, Power Platform y las primeras implantaciones de Customer Engagement.
Pasos completados
Senior
2022 — 2025 · NTT Data España · Autónomo · DQS Consulting
Especialización en Customer Engagement en consultoras y como autónomo: Project Operations, Sales, Customer Service y Field Service, integraciones y proyectos internacionales.
Pasos completados
Arquitecto técnico
2025 — hoy · Autónomo
Autónomo con visión de extremo a extremo: proyectos internacionales que combinan CE y F&O, integraciones entre sistemas, portales y componentes open-source propios.
Pasos completados
Jubilación
Pronto 🙏
Fase final del proceso. Se desbloquea al completar todos los pasos obligatorios.
Pasos pendientes
Entornos, ramas, trazabilidad, pull requests, control de código de la solución y pipelines de build y release con Azure DevOps para un proyecto real de D365 CE.
LinkedInEl patrón heredado ReactDOM.render() reconstruye todo el árbol en cada updateView() y rompe los componentes de Fluent UI que usan posicionamiento.
GitHub · READMEControl PCF que convierte una columna de texto en un selector de países con búsqueda, sin tablas nuevas ni servicios externos.
GitHubIntl.DisplayNames devuelve el nombre de cualquier país en cualquier idioma directamente desde el navegador, sin dependencias externas.
GitHub · READMEUna Custom API pide a Microsoft Graph una sesión de subida reanudable y el navegador sube el archivo por fragmentos, sin pasar por los límites de Dataverse.
GitHub · READMEControl PCF que convierte una columna URL en un cargador de archivos a SharePoint, con Custom APIs, plugin y Microsoft Graph.
GitHubClaves estables por campo y opciones guardadas como id=etiqueta para que un administrador pueda cambiar la configuración sin romper el histórico.
GitHub · READMEControl PCF que pinta campos dinámicos definidos en tablas de configuración y guarda los valores como un JSON versionado.
GitHubEl secreto del cliente de Dataverse y las claves de API viven en el almacén seguro del sistema operativo, nunca en el código ni en archivos de configuración.
GitHub · READMECómo un asistente conversacional responde con datos reales de clientes, proyectos y tareas, y puede crear o actualizar registros en Dataverse.
GitHub · READMEApp de escritorio de productividad (WinUI 3) para clientes, proyectos y tareas, con un agente de IA y Dataverse como backend.
GitHubCómo replicar un try/catch en Power Automate con dos acciones Scope y "Configurar ejecución posterior", y por qué marca la diferencia en producción.
LinkedInCuándo usar CreateMultiple, UpdateMultiple, UpsertMultiple, ExecuteMultiple, $batch o BulkDelete, y cómo diseñar lotes, paralelismo, reintentos e idempotencia.
LinkedInRequisitos, Server-Side Synchronization, activación de buzones, rol de seguridad, despliegue, configuración, uso diario y resolución de problemas de la App for Outlook.
LinkedInInformes PDF dinámicos y al instante desde un portal, rellenando una plantilla de Excel con Office Scripts desde Power Automate para que el resultado sea determinista.
LinkedInVolví a trabajar por mi cuenta para tener más libertad y flexibilidad en los proyectos que elijo.
Arquitecto técnicoMe incorporé a DQS para ganar experiencia en proyectos internacionales.
SeniorPrimera etapa como autónomo, participando tanto en proyectos de D365 CE como de D365 F&O.
SeniorDi el salto para profundizar en Customer Engagement y crecer en gestión de proyectos y equipos sin dejar de programar.
SeniorEntré como becario mientras terminaba el grado y al poco tiempo me ofrecieron un contrato indefinido.
JuniorBase de ingeniería, matemáticas y sistemas, que compaginé con mis primeros años de trabajo en Dynamics.
FormaciónDesarrollo asistido por agentes de IA
Uso diario de agentes de código para diseñar, implementar, revisar y documentar soluciones más rápido sin renunciar a la calidad.
Asistente conversacional que responde sobre clientes, proyectos y tareas almacenados en Dataverse y puede crear o actualizar registros.
Captura de trabajo por voz con transcripción local y conversión automática en tareas.
Consultor técnico y desarrollador de Dynamics 365 desde 2019. He trabajado en los dos grandes mundos de la plataforma: Customer Engagement (Sales, Customer Service, Field Service, Project Operations) y Finance and Operations, incluidas migraciones desde Dynamics AX 2012.
Hoy trabajo como autónomo en proyectos nacionales e internacionales: implantaciones de extremo a extremo, integraciones entre sistemas, portales con Power Pages y componentes propios que publico como open-source.
Plugins C# / .NET
jts_plugins_csharp
Custom APIs
jts_custom_api
Dataverse SDK
jts_dataverse_sdk
Client API (JavaScript / TypeScript)
jts_client_api
Power Apps Component Framework
jts_pcf
Power Pages y Angular
jts_web_portals
Modelo de datos y relaciones
jts_data_model
Seguridad: roles, BU y equipos
jts_security_model
Web API (OData) y FetchXML
jts_webapi_fetchxml
Power Automate
jts_power_automate
Business Process Flows
jts_bpf
Power BI
jts_power_bi
Integraciones entre sistemas (F&O, BC, HubSpot, Sage X3)
jts_integrations
Azure Functions y Service Bus
jts_azure_messaging
Microsoft Graph y Entra ID
jts_graph_identity
Soluciones gestionadas / no gestionadas
jts_solutions_alm
Gestión de entornos, licencias y seguridad
jts_environments
Power Platform CLI y Azure DevOps
jts_pac_devops
Desarrollo asistido por agentes
jts_ai_coding_agents
Agentes LLM sobre Dataverse
jts_ai_dataverse_agents
Voz a texto (Whisper.net, Vosk)
jts_ai_speech
Grado en Ingeniería de Sistemas Aeroespaciales y formación complementaria en programación, gestión empresarial y relación con clientes.
Universitat Politècnica de Catalunya
Grado en Ingeniería de Sistemas Aeroespaciales
2015 — 2019
Base de ingeniería, matemáticas y sistemas, que compaginé con mis primeros años de trabajo en Dynamics.
Formación complementaria
Programación, gestión y CRM
Continua
Cursos para completar la parte técnica con la de negocio.
Cursos
Primeros pasos en el ecosistema Dynamics: AX 2012 y Finance and Operations, Power Platform y las primeras implantaciones de Customer Engagement.
Revertis S.L.
Consultor técnico de Dynamics AX y D365 Finance and Operations
2019 — 2021
Entré como becario mientras terminaba el grado y al poco tiempo me ofrecieron un contrato indefinido.
Dynamics AX / D365 Finance and Operations
Power Platform
Dynamics 365 Customer Engagement
Power BI
Especialización en Customer Engagement en consultoras y como autónomo: Project Operations, Sales, Customer Service y Field Service, integraciones y proyectos internacionales.
NTT Data España
Consultor técnico de Dynamics 365 Customer Engagement
2022 — 2023
Di el salto para profundizar en Customer Engagement y crecer en gestión de proyectos y equipos sin dejar de programar.
Dynamics 365 Customer Engagement
Power Automate y Power BI
Autónomo
Consultor técnico de Dynamics 365
2023
Primera etapa como autónomo, participando tanto en proyectos de D365 CE como de D365 F&O.
Dynamics 365 Finance and Operations y AX 2012
Dynamics 365 Customer Engagement
DQS Consulting
Consultor técnico de Dynamics 365 CE
2023 — 2025
Me incorporé a DQS para ganar experiencia en proyectos internacionales.
Dynamics 365 Customer Engagement
Autónomo con visión de extremo a extremo: proyectos internacionales que combinan CE y F&O, integraciones entre sistemas, portales y componentes open-source propios.
Autónomo
Consultor técnico de Dynamics 365
2025 — hoy
Volví a trabajar por mi cuenta para tener más libertad y flexibilidad en los proyectos que elijo.
Dynamics 365 Customer Engagement
Dynamics 365 Finance and Operations
Open-source e IA
Fase final del proceso. Se desbloquea al completar todos los pasos obligatorios.