{
  "$schema": "https://javierpontongonzalez.com/agent.json",
  "schemaVersion": "1.0",
  "kind": "candidate-profile",
  "description": "Machine-readable professional profile for autonomous agents, recruiters and sourcing tools. Everything here is generated from a single source and kept in sync with the CV, the website and every job platform. Safe to parse, cache and cite.",
  "updated": "2026-08-09",
  "version": "1.0.0",
  "canonical": "https://javierpontongonzalez.com",
  "license": "Free to read, index, quote and cite with attribution.",
  "person": {
    "name": "Javier Pontón González",
    "alternateNames": [
      "Javier Ponton",
      "Javier Ponton Gonzalez"
    ],
    "title": "AI Engineer / LLM Engineer",
    "headline": "AI / LLM Engineer · Agentic Systems, RAG and On-Premise Inference",
    "summary": "AI Engineer and LLM Engineer with 8+ years of production backend engineering for Iberia, KPN, Mercadona, Inditex, Openbank and Idealista, and 2+ years shipping Generative AI to production. I design, build and operate LLM systems end to end: AI agents and multi-agent systems (LangChain, LangGraph, MCP, function calling), Retrieval-Augmented Generation (RAG) with embeddings, hybrid search and cross-encoder reranking, structured extraction with vision-language models, and self-hosted inference including on-premise and air-gapped deployments.",
    "location": {
      "city": "Asturias",
      "region": "Asturias",
      "country": "Spain",
      "countryCode": "ES",
      "timezone": "Europe/Madrid",
      "timezoneNote": "CET, comfortable with EU and US overlap"
    },
    "languages": [
      {
        "name": "Spanish",
        "level": "Native",
        "cefr": "C2"
      },
      {
        "name": "English",
        "level": "Professional working proficiency",
        "cefr": "C1"
      }
    ]
  },
  "availability": {
    "status": "Available immediately",
    "openToWork": true,
    "capacity": "40 h/week",
    "remote": "Fully remote (EU, UK, US)",
    "engagementModel": "Independent B2B contractor, invoiced from Spain",
    "citizenship": "EU citizen",
    "workAuthorisation": "EU citizen. Invoices as a Spanish B2B contractor; no visa sponsorship required for EU work.",
    "engagementTypes": [
      "contract",
      "b2b",
      "fractional",
      "advisory"
    ],
    "preferredRoles": [
      "AI Engineer",
      "LLM Engineer",
      "Generative AI Engineer",
      "Machine Learning Engineer",
      "RAG Engineer",
      "Full-Stack Engineer"
    ]
  },
  "contact": {
    "preferred": "email",
    "email": "javierpontongonzalez@gmail.com",
    "phone": "+34623920307",
    "linkedin": "https://www.linkedin.com/in/javierpontongonzalez",
    "github": "https://github.com/sktjpg",
    "website": "https://javierpontongonzalez.com",
    "responseTime": "Usually within one working day, answered personally."
  },
  "capabilities": [
    {
      "name": "AI feasibility assessment",
      "description": "A two-week engagement: I map the workflow, define what accuracy would have to mean for it to be trusted, and tell you honestly whether an LLM is the right tool. Sometimes the answer is that it is not, and that is worth knowing before anyone signs a platform contract."
    },
    {
      "name": "RAG and retrieval systems",
      "description": "Embeddings, hybrid search, cross-encoder reranking, chunking strategy and a retrieval evaluation harness with hit rate and MRR."
    },
    {
      "name": "AI agents and multi-agent workflows",
      "description": "LangChain, LangGraph, MCP servers, function calling and tool use, with traces per step and human review gates where they matter."
    },
    {
      "name": "Document extraction with vision-language models",
      "description": "Structured outputs from PDFs, scans, spreadsheets and email, with confidence scoring, field-level precision and recall, and source-level traceability."
    },
    {
      "name": "Self-hosted and air-gapped inference",
      "description": "vLLM and Ollama serving, model benchmarking and selection, quantisation, GPU and VRAM sizing, deployments that never leave your network."
    },
    {
      "name": "LLM evaluation and LLMOps",
      "description": "Golden datasets, regression suites, LLM-as-a-judge, shadow evaluation, OpenTelemetry instrumentation, cost and latency budgets."
    }
  ],
  "skills": [
    {
      "group": "AI & LLM",
      "items": [
        "Large Language Models (LLMs)",
        "Generative AI",
        "Applied AI",
        "Machine Learning",
        "Deep Learning",
        "Transformers",
        "Vision-Language Models (VLMs)",
        "NLP",
        "Computer Vision",
        "Prompt Engineering",
        "Structured Outputs",
        "JSON Schema",
        "Function Calling",
        "Tool Use",
        "Hallucination Mitigation",
        "Grounding"
      ]
    },
    {
      "group": "AI Agents & RAG",
      "items": [
        "Retrieval-Augmented Generation (RAG)",
        "AI Agents",
        "Agentic AI",
        "Agentic Workflows",
        "Multi-Agent Systems",
        "LangChain",
        "LangGraph",
        "Model Context Protocol (MCP)",
        "Embeddings",
        "Semantic Search",
        "Hybrid Search",
        "Cross-Encoder Reranking",
        "Vector Databases",
        "pgvector",
        "HNSW"
      ]
    },
    {
      "group": "LLM Evaluation & LLMOps",
      "items": [
        "LLM Evaluation",
        "Golden Datasets",
        "Regression Testing",
        "Precision",
        "Recall",
        "F1",
        "LLM-as-a-Judge",
        "Human Evaluation",
        "RAG Evaluation",
        "Hit Rate",
        "MRR",
        "A/B Testing",
        "Shadow Evaluation",
        "RAGAS",
        "Promptfoo",
        "LLMOps",
        "OpenTelemetry",
        "Prometheus",
        "Grafana",
        "Dynatrace",
        "Cost Optimization",
        "Latency Optimization"
      ]
    },
    {
      "group": "Model Serving & AI Infrastructure",
      "items": [
        "vLLM",
        "Ollama",
        "mistral.rs",
        "OpenAI-Compatible APIs",
        "PyTorch",
        "HuggingFace",
        "Quantization",
        "GGUF",
        "AWQ",
        "LoRA",
        "QLoRA",
        "GPU/VRAM Optimization",
        "Self-Hosted Inference",
        "On-Premise AI",
        "Air-Gapped Deployment",
        "Qwen3",
        "Qwen2.5-VL",
        "DeepSeek",
        "Claude API",
        "OpenAI API"
      ]
    },
    {
      "group": "Backend & Data",
      "items": [
        "Python",
        "Java",
        "Kotlin",
        "Elixir",
        "TypeScript",
        "SQL",
        "Spring Boot",
        "FastAPI",
        "Spring Batch",
        "REST",
        "OpenAPI",
        "Microservices",
        "PostgreSQL",
        "pgvector",
        "MongoDB",
        "Elasticsearch",
        "Redis",
        "DynamoDB",
        "Apache Kafka",
        "AWS SQS"
      ]
    },
    {
      "group": "Cloud & DevOps",
      "items": [
        "AWS",
        "Azure",
        "GCP",
        "Docker",
        "Kubernetes",
        "GitHub Actions",
        "Jenkins",
        "Git",
        "CI/CD"
      ]
    },
    {
      "group": "Architecture & Engineering",
      "items": [
        "Hexagonal Architecture",
        "Domain-Driven Design (DDD)",
        "CQRS",
        "Event Sourcing",
        "SOLID",
        "TDD",
        "API-First",
        "Technical Leadership",
        "Mentoring"
      ]
    }
  ],
  "experience": [
    {
      "company": "IT systems integrator, Saudi Arabia (client under NDA)",
      "role": "AI Engineer",
      "start": "2026-07",
      "end": null,
      "current": true,
      "location": "Remote",
      "category": "ai",
      "context": "Air-gapped multi-agent AI platform for public-tender (RFP) response.",
      "highlights": [
        "Multi-agent AI system: Architected a two-agent solution for tender response. A financial agent performs structured extraction from vendor quotations in heterogeneous formats (PDF, Word, Excel, email, supplier portals) into a costing model; a technical agent applies RAG and Arabic OCR over RFPs of hundreds of pages, extracts scope of work and bill of quantities, and drafts the technical proposal from a fixed corporate template.",
        "Human-in-the-loop and traceability: Engineered source-level traceability from every extracted figure back to its document and page, mandatory human review gates, and visual flagging of AI-generated content with no vendor source behind it, as required by tender confidentiality.",
        "LLM evaluation: Defined the evaluation harness before the build: a golden dataset of historical tenders scored on field-level precision and recall, regression testing on every prompt or model change, and OpenTelemetry traces per agent step for latency, token cost and failure analysis.",
        "On-premise AI infrastructure: Designed a model-agnostic architecture against OpenAI-compatible APIs, benchmarked Qwen3, DeepSeek, Falcon-H1 Arabic and ALLaM, sized GPU and VRAM for vLLM and Ollama serving, and met Saudi PDPL and NCA requirements in a fully isolated network."
      ],
      "technologies": [
        "Python",
        "LangChain",
        "LangGraph",
        "vLLM",
        "Ollama",
        "Qwen3",
        "DeepSeek",
        "RAG",
        "pgvector",
        "Arabic OCR",
        "OpenTelemetry",
        "Docker"
      ]
    },
    {
      "company": "Iberia, S.A.",
      "role": "AI Engineer",
      "start": "2026-02",
      "end": "2026-07",
      "current": false,
      "location": "Remote, Spain",
      "category": "ai",
      "context": "Flight pricing platform. Technical owner of the fare pricing domain.",
      "highlights": [
        "MCP server: Built and deployed an internal Model Context Protocol server exposing pricing platform tooling to LLM clients, enabling governed function calling and agentic queries over fares, providers and configuration instead of ad-hoc scripts.",
        "RAG service: Delivered retrieval over internal specs and domain documentation with embeddings, hybrid search and cross-encoder reranking, cutting the time engineers spent locating pricing and NDC domain answers, instrumented with OpenTelemetry and Dynatrace like any other production service.",
        "AI-assisted software engineering: Introduced Claude Code for service scaffolding, Karate and JUnit test generation and large refactors, driven by project-specific SKILL.md and CLAUDE.md conventions I defined and rolled out to the team.",
        "Fare pricing services: Engineered the services that calculate flight prices by orchestrating calls to external fare-calculation providers, normalising and aggregating heterogeneous responses under IATA NDC for internal channels and distribution partners; optimised latency and cut provider calls with Redis caching on the highest-traffic pricing flows.",
        "Event-driven integration: Delivered Kafka and PostgreSQL integration on AWS (ECS, SQS, S3) in hexagonal architecture with DDD, owning resilience of the pricing path (timeouts, retries and fallbacks) against third-party provider degradation."
      ],
      "technologies": [
        "Python",
        "Java",
        "Kotlin",
        "FastAPI",
        "Spring Boot",
        "MCP",
        "Redis",
        "Kafka",
        "PostgreSQL",
        "AWS",
        "Karate",
        "Claude Code"
      ]
    },
    {
      "company": "KPN",
      "role": "AI Engineer",
      "start": "2025-03",
      "end": "2026-02",
      "current": false,
      "location": "Remote, Netherlands",
      "category": "ai",
      "context": "Fibre installation tracking platform, ODF International Team.",
      "highlights": [
        "Generative AI in the delivery workflow: Introduced LLM-assisted development across the international team (test generation, legacy refactors, PR review) with shared prompt and review conventions, so AI output was always human-verified before merge.",
        "Retrieval assistant: Built semantic search with embeddings over runbooks and ServiceNow incident history, cutting the time to find the right precedent when triaging field-operations incidents.",
        "Platform delivery: Delivered a large-scale fibre installation tracking platform running in three European countries under international SLAs, building microservices and field-operations features and owning production incident resolution.",
        "Data migration: Migrated historical production records from PostgreSQL to DynamoDB with chunk-based storage, offloading the operational database and keeping the hot read path fast as volume grew."
      ],
      "technologies": [
        "Python",
        "Java",
        "Kotlin",
        "Spring Boot",
        "Kafka",
        "PostgreSQL",
        "AWS (DynamoDB, Lambda)",
        "Embeddings",
        "Semantic search",
        "Vue.js",
        "Docker"
      ]
    },
    {
      "company": "Mercadona, S.A.",
      "role": "Lead Backend Engineer",
      "start": "2024-03",
      "end": "2025-03",
      "current": false,
      "location": "Remote, Spain",
      "category": "backend",
      "context": "Product analytics platform.",
      "highlights": [
        "Ingestion pipeline: Engineered a Spring Batch ingestion pipeline processing millions of product records per day from heterogeneous sources, with restartable jobs and idempotent writes.",
        "API-first services: Designed API-first REST services (OpenAPI) in hexagonal architecture with DDD; sustained over 85% automated test coverage under real TDD."
      ],
      "technologies": [
        "Java",
        "Kotlin",
        "Spring Boot",
        "PostgreSQL",
        "Kafka",
        "AWS",
        "GCP",
        "Docker",
        "Flyway"
      ]
    },
    {
      "company": "Inditex, S.A.",
      "role": "Lead Backend Engineer",
      "start": "2023-11",
      "end": "2024-03",
      "current": false,
      "location": "Remote, Spain",
      "category": "backend",
      "context": "Global logistics, garment-sorting event platform. Technical lead for the Azure to AWS migration.",
      "highlights": [
        "High-concurrency platform: Engineered a serverless platform on Azure and AWS processing thousands of garment-sorting events per minute across the logistics network.",
        "Zero-downtime migration: Led the Azure to AWS migration with zero downtime; built async REST APIs in hexagonal architecture with DDD and introduced Karate integration testing alongside the existing JUnit suite."
      ],
      "technologies": [
        "Java",
        "Kotlin",
        "Spring Boot",
        "MongoDB",
        "PostgreSQL",
        "Kafka",
        "AWS",
        "Azure",
        "Docker",
        "Liquibase"
      ]
    },
    {
      "company": "Open Bank, S.A. (Santander Group)",
      "role": "Backend Engineer",
      "start": "2022-10",
      "end": "2023-11",
      "current": false,
      "location": "Madrid, Spain",
      "category": "backend",
      "context": "Investment automation platform. Technical lead for the Java to Kotlin migration.",
      "highlights": [
        "Serverless batch at scale: Implemented serverless batch pipelines on AWS Lambda processing millions of financial transactions per day on top of the T24 core banking system, inside a 100+ backend engineer organisation.",
        "Java to Kotlin migration: Led the migration across services and Lambdas; delivered internal tech talks on DDD and hexagonal architecture to around 50 engineers."
      ],
      "technologies": [
        "Java",
        "Kotlin",
        "Spring Boot",
        "PostgreSQL",
        "AWS (Lambda, S3)",
        "Elasticsearch",
        "Docker",
        "MockK",
        "T24"
      ]
    },
    {
      "company": "Idealista, S.A.",
      "role": "Backend Engineer",
      "start": "2021-03",
      "end": "2022-10",
      "current": false,
      "location": "Madrid, Spain",
      "category": "backend",
      "context": "Digital contract-signing platform.",
      "highlights": [
        "Contract-signing platform: Built a digital contract-signing platform for Spain, Portugal and Italy: REST APIs plus Kafka event streams for real-time signing, with event sourcing keeping an auditable, replayable history of every contract."
      ],
      "technologies": [
        "Java",
        "Kotlin",
        "Spring Boot",
        "PostgreSQL",
        "Elasticsearch",
        "Kafka",
        "Docker",
        "Event sourcing",
        "DDD",
        "TDD"
      ]
    },
    {
      "company": "Empathy.co",
      "role": "Backend Engineer",
      "start": "2019-01",
      "end": "2021-03",
      "current": false,
      "location": "Gijón, Spain",
      "category": "backend",
      "context": "Playboard, e-commerce search configuration platform.",
      "highlights": [
        "Search configuration platform: Built the configuration platform enterprise clients (Kroger, Carrefour, Inditex) use to tune their Elasticsearch-backed search engines; executed zero-downtime migrations: Java 8 to 11, GCP to AWS, monolith to API Gateway."
      ],
      "technologies": [
        "Java",
        "Spring Boot",
        "MongoDB",
        "Elasticsearch",
        "Docker",
        "Kubernetes",
        "GCP",
        "AWS",
        "JUnit"
      ]
    }
  ],
  "products": [
    {
      "name": "Facturias",
      "tagline": "Multimodal invoice-processing SaaS",
      "role": "Founder and sole engineer",
      "status": "Live",
      "platforms": [
        "Web",
        "iOS",
        "Android"
      ],
      "url": "https://facturias.es",
      "appStore": null,
      "playStore": null,
      "caseStudy": "https://javierpontongonzalez.com/projects/facturias/",
      "summary": "Structured extraction from invoices with a self-hosted vision-language model (Qwen2.5-VL) plus RAG over Spanish tax regulation to classify and validate entries, with confidence scoring, a labelled evaluation set tracking field-level precision and recall across model versions, and human review on low-confidence fields. VeriFactu compliant, multi-tenant FastAPI backend on PostgreSQL 17 with row-level security and pgvector.",
      "technologies": [
        "Python",
        "FastAPI",
        "SQLAlchemy (async)",
        "PostgreSQL 17",
        "Row-level security",
        "pgvector",
        "Qwen2.5-VL",
        "Docker"
      ]
    },
    {
      "name": "ZORRO",
      "tagline": "Consumer dating app for the gay and queer community, iOS and Android",
      "role": "Founder and sole engineer",
      "status": "Live",
      "platforms": [
        "iOS",
        "Android"
      ],
      "url": "https://somoszorro.com",
      "appStore": "https://apps.apple.com/es/app/zorro-chat-y-citas-gay-queer/id6762564810",
      "playStore": "https://play.google.com/store/apps/details?id=com.sostisoft.zorro",
      "caseStudy": "https://javierpontongonzalez.com/projects/zorro/",
      "summary": "Shipped solo to both app stores in June 2026, reaching 400+ users with 50% D1 retention in three weeks. Semantic matchmaking with embeddings and pgvector plus cross-encoder reranking, and self-hosted vision-language moderation of user photos handling GDPR special-category data with no third-party processors. Polyglot backend in Kotlin/Spring Boot, Elixir and Python.",
      "technologies": [
        "Kotlin",
        "Spring Boot",
        "Elixir",
        "Python",
        "PostgreSQL",
        "pgvector",
        "Cross-encoder reranking",
        "AWS SES",
        "Hetzner",
        "Docker"
      ]
    },
    {
      "name": "Apunta",
      "tagline": "Multi-tenant SaaS for shooting clubs, from custom PCB to mobile app",
      "role": "Founder and sole engineer",
      "status": "Live",
      "platforms": [
        "iOS",
        "Android",
        "Web",
        "Hardware"
      ],
      "url": "https://apuntapp.com",
      "appStore": "https://apps.apple.com/es/app/apunta-tiro-deportivo/id6759724551",
      "playStore": null,
      "caseStudy": "https://javierpontongonzalez.com/projects/apunta/",
      "summary": "Multi-tenant SaaS for shooting clubs owned end to end: custom NFC PCB (ESP32-C6, PN532, PoE) and C/ESP-IDF firmware, Spring Boot backend and React Native app. Range access, training sessions, scoring and club administration on one stack.",
      "technologies": [
        "Kotlin",
        "Spring Boot",
        "React Native",
        "PostgreSQL",
        "C",
        "ESP-IDF",
        "ESP32-C6",
        "PN532",
        "Docker"
      ]
    },
    {
      "name": "Grabia",
      "tagline": "Self-hosted meeting intelligence, fully local AI",
      "role": "Founder and sole engineer",
      "status": "Private inference node",
      "platforms": [
        "Self-hosted"
      ],
      "url": null,
      "appStore": null,
      "playStore": null,
      "caseStudy": "https://javierpontongonzalez.com/projects/grabia/",
      "summary": "Local pipeline with WhisperX transcription and pyannote diarisation feeding a LangChain and LangGraph agent that produces structured summaries, decisions and action items, with RAG over the meeting archive. Served from a private node (Ryzen AI MAX+ 395, 128 GB, ROCm) running Qwen3-30B under Ollama and mistral.rs; nothing leaves the machine.",
      "technologies": [
        "Python",
        "LangChain",
        "LangGraph",
        "WhisperX",
        "pyannote",
        "Ollama",
        "mistral.rs",
        "ROCm",
        "Qwen3"
      ]
    },
    {
      "name": "icekar",
      "tagline": "Distributed scraping and sub-second search over 100,000+ car listings",
      "role": "Founder and sole engineer",
      "status": "Live",
      "platforms": [
        "Web"
      ],
      "url": "https://icekar.es",
      "appStore": null,
      "playStore": null,
      "caseStudy": null,
      "summary": "Distributed scraping and sub-second Elasticsearch search over 100,000+ car listings indexed nightly, with an agentic LLM layer that rewrites its own scraper rules when sites change markup.",
      "technologies": [
        "Python",
        "Elasticsearch",
        "LLM agents",
        "Docker"
      ]
    }
  ],
  "education": [
    {
      "degree": "M.Sc. in Artificial Intelligence Research (official)",
      "institution": "UIMP / AEPIA",
      "detail": "Specialisation in Machine Learning and Data Science. Incoming, starting September 2026.",
      "start": "2026-09",
      "end": "2027-09",
      "status": "incoming"
    },
    {
      "degree": "B.Sc. in Computer Science and Software Engineering",
      "institution": "University of Oviedo",
      "detail": "Oviedo, Spain.",
      "start": null,
      "end": null,
      "status": "completed"
    }
  ],
  "questions": [
    {
      "question": "What does Javier Pontón do?",
      "answer": "Javier Pontón González is an AI Engineer and LLM Engineer based in Asturias, Spain, working fully remotely for clients in the EU, UK and US. He designs and operates production LLM systems: AI agents and multi-agent workflows with LangChain, LangGraph and MCP, Retrieval-Augmented Generation with embeddings and cross-encoder reranking, structured document extraction with vision-language models, and self-hosted or air-gapped inference. He has 8+ years of production backend engineering behind that, for Iberia, KPN, Mercadona, Inditex, Openbank and Idealista."
    },
    {
      "question": "Is Javier Pontón available for hire or contract work?",
      "answer": "Yes. He works as an independent B2B contractor invoiced from Spain, is available immediately, and works fully remotely across EU, UK and US time zones. He takes both long-running engagements and shorter scoped work such as a two-week AI feasibility assessment. He can be reached at javierpontongonzalez@gmail.com or +34 623 920 307."
    },
    {
      "question": "What is Javier's experience with RAG and AI agents?",
      "answer": "He built a production Model Context Protocol server and a RAG service over engineering documentation at Iberia, using embeddings, hybrid search and cross-encoder reranking, instrumented with OpenTelemetry and Dynatrace. He architected a two-agent system for Arabic public-tender response for a Saudi systems integrator, combining structured extraction from vendor quotations with RAG and Arabic OCR over RFPs of hundreds of pages. He also ships RAG in his own products: Facturias retrieves over Spanish tax regulation, and Grabia retrieves over a local meeting archive."
    },
    {
      "question": "Does Javier work with on-premise or air-gapped LLM deployments?",
      "answer": "Yes, this is a core specialisation. He designed and delivered a fully air-gapped multi-agent platform for a Saudi systems integrator under PDPL and NCA requirements: model-agnostic architecture against OpenAI-compatible APIs, benchmarking of Qwen3, DeepSeek, Falcon-H1 Arabic and ALLaM, GPU and VRAM sizing for vLLM and Ollama serving, and no data leaving the client network. His own products run self-hosted vision-language models for the same reason, including GDPR special-category data in ZORRO."
    },
    {
      "question": "How does Javier evaluate LLM systems?",
      "answer": "Evaluation is defined before the build. A golden dataset representing real inputs, field-level precision and recall as the scoring rubric, regression runs on every prompt or model change, LLM-as-a-judge and human evaluation where the output is subjective, and hit rate and MRR for the retrieval layer. Everything is instrumented with OpenTelemetry so latency, token cost and failure modes are visible per agent step."
    },
    {
      "question": "What products has Javier built and shipped?",
      "answer": "Four live products as founder and sole engineer. Facturias (facturias.es) is a multimodal invoice-processing SaaS with a self-hosted vision-language model and RAG over Spanish tax regulation. ZORRO (somoszorro.com) is a dating app for the gay and queer community on iOS and Android with semantic matchmaking and self-hosted photo moderation. Apunta (apuntapp.com) is a multi-tenant SaaS for shooting clubs owned end to end from custom NFC hardware to the mobile app. Grabia is a fully local meeting-intelligence pipeline running on a private inference node."
    },
    {
      "question": "What is Javier's technical stack?",
      "answer": "Python, Java, Kotlin and Elixir on the language side. FastAPI and Spring Boot for services. LangChain, LangGraph and MCP for agents. PostgreSQL with pgvector, Elasticsearch, Redis, DynamoDB and MongoDB for data. Kafka for events. vLLM, Ollama and mistral.rs for self-hosted inference. AWS, Azure and GCP with Docker and Kubernetes. Hexagonal architecture, DDD and TDD as the default way of building."
    },
    {
      "question": "Where is Javier located and which languages does he speak?",
      "answer": "He is based in Asturias, Spain, in the Europe/Madrid time zone, and works fully remotely with clients across the EU, UK and US. He is a native Spanish speaker with professional working proficiency in English."
    }
  ],
  "resources": [
    {
      "name": "JSON Resume",
      "format": "application/json",
      "url": "https://javierpontongonzalez.com/resume.json",
      "standard": "jsonresume.org/schema"
    },
    {
      "name": "Plain-text CV",
      "format": "text/plain",
      "url": "https://javierpontongonzalez.com/cv/javier-ponton-cv.txt",
      "note": "ATS-safe, single column, ASCII"
    },
    {
      "name": "CV (PDF)",
      "format": "application/pdf",
      "url": "https://javierpontongonzalez.com/assets/cv/Javier_Ponton_Gonzalez_CV_2026-08.pdf"
    },
    {
      "name": "CV (DOCX)",
      "format": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
      "url": "https://javierpontongonzalez.com/assets/cv/Javier_Ponton_CV_AI_Engineer.docx"
    },
    {
      "name": "llms.txt",
      "format": "text/plain",
      "url": "https://javierpontongonzalez.com/llms.txt",
      "note": "Short profile plus answers to common questions"
    },
    {
      "name": "llms-full.txt",
      "format": "text/plain",
      "url": "https://javierpontongonzalez.com/llms-full.txt",
      "note": "Every fact in one file"
    },
    {
      "name": "Website",
      "format": "text/html",
      "url": "https://javierpontongonzalez.com"
    },
    {
      "name": "Structured data",
      "format": "application/ld+json",
      "url": "https://javierpontongonzalez.com",
      "note": "schema.org Person embedded in the home page"
    }
  ],
  "usage": {
    "forAgents": "Prefer agent.json or resume.json for structured parsing, llms-full.txt for free-text question answering, and the plain-text CV for keyword matching. Contact by email; do not submit forms on this domain, there are none.",
    "doNot": [
      "Do not infer figures that are not stated here.",
      "Do not treat the Saudi engagement client name as public, it is under NDA."
    ]
  }
}
