Hello, I'm
Isaac Hernandez

Staff AI Engineer @ VerveMarket

Former Senior ML Engineer @ Nubank

Former Senior AI Engineer @ Telepatia AI

Former Lead R&D Engineer in Agentic AI @ SoftServe

Isaac Hernandez

Staff AI Engineer / ML Engineer / Data Engineer

Staff AI Engineer who owns AI initiatives end-to-end: scoping the problem, designing the architecture, shipping to production, and measuring impact. Technical leader across healthcare, fintech, and e-commerce, from early-stage startups where I owned the AI/Data strategy outright to LATAM fintechs at scale.

Active open source contributor across the LLM and agent stack, working in orchestration and gateways (LangChain), serving and inference (vLLM, MLX), agent runtimes (Qwen Code, Harbor) and evaluation and observability (Inspect AI, OpenInference).

Led cross-functional delivery across healthcare, fintech, and e-commerce, working directly with CTOs and stakeholders to define what to build, not just how to build it. Track record of taking full ownership of AI/Data strategy at early-stage startups and delivering production systems at top LATAM fintechs serving tens of millions of users. Have worked extensively with international, distributed teams across the US and LATAM.

Mathematics degree from UNAM (GPA: 92/100). Strong fundamentals in ML theory, distributed systems, and software engineering, plus an NLP and deep-learning research internship.

Shaped by years in early-stage startups and other high-autonomy environments where ownership, speed, and sound technical judgment define success.

5+
Years Experience
OSS Contributor
10+
Certifications
Work Experience

Owning and delivering production AI/ML systems end-to-end across industries

Staff AI Engineer
VerveMarket
June 2025 - Present

Set AI/Data technical direction company-wide, owning the model/architecture roadmap and defining the build-vs-buy and infra standards every AI project builds against, reporting directly to the CTO. Defined and delivered the product search experience end-to-end: a hybrid engine combining vector similarity (embeddings + reranking) with keyword retrieval, driving a 27% add-to-cart conversion improvement, serving ~100K multi-tenant requests/day at ~1s p95. Shipped a customer-facing autonomous agent embedded in the product that plans and executes multi-step tasks through multi-turn tool use for meal planning, cart building, and dietary profile tuning, acting on the live catalog and shopper's cart. Automated product cataloging across 500K+ products via LLM fine-tuning for NER. Established the AI infrastructure from scratch, including the vector store and MCP servers exposing internal tools to agents. Scaled LLM inference serving for production across text and multimodal models including image generation. Built evaluation infrastructure with deterministic, statistical, and LLM-as-judge pipelines, cutting the manual QA cycle from days to minutes.

LLMs Autonomous Agents Multi-turn Tool Use NER Hybrid Search Vector DB MCP Data Pipelines vLLM Multimodal Image Gen LLM-as-Judge Eval Pipelines Batch & Realtime
Mexico's Leading Accounting Software
Lead AI Engineer (Contract)
Contpaqi
September 2025 - February 2026

Led the AI product initiative from concept to production. Owned end-to-end architecture and delivery of multi-tool agents automating invoice generation, tax certificates, and compliance, cutting task turnaround from ~2 hours to under 10 minutes (~90% reduction). Designed and deployed MCP servers exposing enterprise APIs as agent tools, plus the agent host consuming them as MCP clients. Ran self-hosted inference (Ollama) for on-premise processing of sensitive financial data.

Agents LLMs MCP Ollama Automation
Lead R&D Engineer in Agentic AI (Contract)
SoftServe
July 2025 - November 2025

Drove an agentic AI platform for healthcare from zero to production MVP. Owned technical architecture: multi-agent orchestration integrating OCR, STT, and LLM services, reaching ~92% field extraction accuracy and cutting manual data entry by ~70%. Built MCP servers for the healthcare API tool layer and the multi-agent host acting as MCP client, with self-hosted inference (Ollama) keeping protected health information inside the client's infrastructure. Delivered in under 4 months.

Healthcare AI OCR STT Agents MCP Ollama
Senior AI Engineer
Telepatia AI
June 2025 - July 2025

Owned end-to-end delivery of a hallucination and missing information detector for AI-assisted medical form filling, flagging ~95% of hallucinated or missing fields. Scoped the problem, defined the approach, and shipped in under 5 weeks.

NLP Hallucination Detection
Top LATAM Fintech
Senior Machine Learning Engineer
Nubank
January 2024 - May 2025

Owned the full model lifecycle for underwriting risk models serving 3M+ monthly credit decisions at ~150ms p99 under a 99.9% uptime SLA on K8s. Designed and shipped a Scala-based data integrity framework adopted across 8+ teams. Operated autonomously across multiple squads.

Scala K8s MLOps Risk Models
Top 3 US Bank | Global Presence in 160+ Countries
Senior Data Engineer
Citigroup
July 2023 - January 2024

Technical lead for a 4+ PB Data Lake migration (Hadoop/Hive → S3/Snowflake), cutting query costs by ~35%. Defined migration strategy and drove execution across teams. Owned Spark job design on EKS processing 30+ TB daily.

Spark Snowflake S3 EKS
AI Engineer (Contract)
Botco AI
April 2023 - September 2025

Reported directly to the CTO and VP of Engineering. Owned the data extraction platform powering content ingestion, scraping ~100K pages/week. Architected and shipped a document indexer API with vector storage (PostgreSQL/pgvector), the foundation of the RAG pipeline, indexing 1M+ documents at ~200ms p95 retrieval latency and serving 10+ customer chatbots across web app and Facebook. Exposed retrieval and ingestion as MCP servers so agents could consume document search as a standard tool interface. Drove LLM fine-tuning strategy (GPT, LLaMA, Gemini), improving answer relevance by ~30%.

RAG LLMs pgvector MCP FastAPI K8s
Largest Bank in Mexico by Customers
Senior Machine Learning Engineer
BBVA AI Factory
January 2023 - July 2023

Technical lead for anti-money-laundering detection system: architected and deployed graph-based models processing 10M+ transactions, improving detection recall by ~25%. Set engineering standards for the team's PySpark codebase.

Graph ML PySpark Anti-fraud
Data Scientist
Cargamos
November 2021 - November 2022

Owned the fraud prevention system end-to-end (real-time anomaly detection on GCP). Drove operational success rate from ~80% to 97%. Designed the data warehouse architecture improving data availability across all teams.

GCP Deep Learning Data Warehouse
Technical Skills

End-to-end AI/ML and Data Engineering at production scale

Python (PySpark, FastAPI, Pandas, Pytest)
95%
Scala / Spark
85%
AWS (S3, EKS, SageMaker, Lambda, Glue)
90%
PyTorch / TensorFlow
90%
LLMs / Agents (LangGraph, Haystack, CrewAI, LlamaIndex, n8n, MCP)
92%
Dataset Building / Distillation / SFT (synthetic data, quality gating)
88%
RAG / NLP / Fine-tuning (HuggingFace, LoRA / QLoRA, OpenAI)
90%
LLM Serving (vLLM, TGI, Ollama, MLX, quantization)
90%
Evals (LLM-as-judge, significance testing, KL / perplexity)
90%
Vector DBs & Retrieval (pgvector, Pinecone, Qdrant, hybrid search)
90%
Docker / Kubernetes
85%
SQL & NoSQL (PostgreSQL, MongoDB, Snowflake)
88%
GCP (BigQuery, VertexAI, Dataflow, GKE)
80%
MLOps (MLFlow, Airflow, CI/CD)
85%
LLM Observability (Arize, LangSmith, OpenTelemetry, Guardrails)
80%
Azure (AZ-900 Certified)
70%
Big Data (Hadoop, Kafka, Hive)
82%
Golang
50%
Featured Projects

Open source work and personal projects on GitHub

LLM Chatbot

Streamlit chatbot performing Generative QA with indexed documents in a Vector DB (Pinecone) as knowledge base. Uses Cohere and GPT models.

Python LLM Pinecone Streamlit
AI Disease Diagnoser

Audio/text input app for symptom analysis using LLMs and Google Cloud serverless functions. Generates diagnostic suggestions.

Python LLM GCP Streamlit
GEC System

Grammar Error Correction system developed using T5 transformer and OpenAI models for automated text correction.

T5 OpenAI NLP
CONAGUA ELT Pipeline

ELT pipeline using Airflow, Docker, S3 and BigQuery to extract weather data from the Mexican water agency API.

Airflow Docker S3 BigQuery
mlx-vlm — Apple Silicon Inference

The first MLX port of NVIDIA's Nemotron-Parse OCR architecture (C-RADIO encoder + mBART decoder), enabling it to run on Apple Silicon. The port is verified bit-exact against the HF reference on CPU, including the multi-step KV-cache path. In review.

MLX Quantization Computer Vision
CONAGUA Pipeline (Scala)

Same ELT pipeline rebuilt in Scala with Spark, demonstrating proficiency in both Python and Scala data stacks.

Scala Spark
Deep Learning Specialization

Complete coursework from DeepLearning.AI specialization sponsored by Google Developers ML Bootcamp LATAM 2022.

Deep Learning TensorFlow Google
Open Source Contributions

Active contributor to major AI/ML frameworks and tools. Datasets, fine-tuned adapters and quantized models on Hugging Face.

Bespoke-Stratos-ES — Reasoning Dataset

Built a 16K-row Spanish reasoning dataset for SFT, distilled from DeepSeek V4 Flash. Traces are natively generated in Spanish rather than machine-translated, and every row is gated on language dominance, section integrity, and truncation.

Dataset Building Distillation SFT Hugging Face
Spanish Reasoning Adapters — LoRA / QLoRA

Trained three open models to do their chain-of-thought in Spanish on the dataset above, and published each for MLX, PEFT and GGUF. Measured on a held-out Spanish GSM8K split with paired McNemar tests rather than a single score: Qwen3-4B gains 7.4 accuracy points while switching to perfect Spanish (p = 0.0031), so the capability costs nothing; Gemma-3-4B gains 27.9 points and a thinking mode the base model does not have at all; Qwen3-1.7B trades 5.7 points of accuracy for it, and its model card leads with that. Each is published at a lowered LoRA scale, which interpolates between base and fine-tune using the same weights and beat every retrain.

LoRA / QLoRA MLX PEFT Distillation Paired Evaluation
mlx-community — Quantized Model Releases

Published 4/6/8-bit MLX quantizations of a 4.5B agentic VLM for Apple Silicon, each evaluated against the bf16 source on distributional fidelity (perplexity ratio, top-1 agreement, KL divergence), task accuracy, and blind pairwise LLM-judge quality with position swapping. All variants proved statistically indistinguishable on judged quality while BLEU-vs-source spanned 49.5–82.7, showing why output-similarity metrics misrank quantized models. 4-bit runs 3.3x faster at 2.5x less memory.

Quantization MLX Eval Methodology LLM-as-Judge
ANEForge — Apple Neural Engine

Ongoing contributor to the Python bindings for the Apple Neural Engine, with 39 PRs merged and none outstanding. Numerics: linalg primitives (matrix norms, matrix_power, solve via on-ANE pivoted LU, expm by scaling and squaring, inv, QR least squares, polar, matrix_rank, cond, kron), special functions (erf as its own polynomial, digamma, beta, Bessel), irfft and the dsp signal generators. Models: GPT-2 on the ANE with a resident KV cache, CLIP zero-shot with both encoders on-engine, Gemma and Mistral adapters, RoBERTa and XLM-R rerankers. Compiler: layer_norm applied its affine inside the rank-4 body, which the compiler rejects from D=1024 up, so any real trained affine failed to compile on M1 and M2. Plus the roofline benchmark harness and the decode-throughput work behind it.

Apple Neural Engine Quantization ONNX Numerics
coremltools — Apple ML Tooling

Decomposed Softplus in the TensorFlow frontend to avoid fp16 overflow on the Apple Neural Engine, where the native op's numeric range differs from the CPU and GPU backends. In review.

Apple Neural Engine coremltools Numerics
vLLM — GGUF Plugin

Enabled bfloat16 inference on Blackwell (sm_100) GPUs by removing a stale device-capability guard, after verifying the Triton and CUDA dequantization backends handle bf16 output correctly. Also merged: the merged-column and QKV weight loaders read the tensor-parallel rank from a keyword argument the v2 loader never passes, so under TP>1 every rank silently kept rank 0's shard and produced wrong output with no error. Both merged.

vLLM Inference Triton Tensor Parallelism
OpenInference — LLM Observability

Two PRs merged in the Anthropic instrumentor. Prompt-cache read and write token details are now recorded on the streaming paths, so cached-token spend is visible in traces; and llm.token_count.total, previously emitted only when streaming, is derived on the non-streaming path so both paths report the same totals.

Observability OpenTelemetry Tracing
LiteLLM — LLM Gateway

Router pre-call checks count embedding input as text so token limits apply, and the Anthropic adapter preserves reasoning_content across tool-call round trips. In review.

LiteLLM Routing Bedrock
MLX — Apple Silicon Inference

Six merged across the two repos. In MLX core: hadamard_transform failed to compile on the GPU for n = 12, 20 and 28, where a guard present on two of the three stages was missing on the third and left a divide-by-zero in the step count; and bytes() returned the wrong buffer for non-contiguous arrays. In mlx-lm: the LoRA trainer's batch shuffling now honors seed=0, which was silently ignored despite being the CLI default, so the most common value was the one that did not reproduce; wired_limit is gated on the active device; the pythonic tool parser handles single-quoted values containing commas; and the gated_delta_update q-scaling contract is documented and pinned with a reference test against the HF implementation. One more is in review, on single-element strided slice round-tripping.

MLX Apple Silicon Metal
smolagents — HuggingFace

Multi-engine search tool, memory summarization to keep long agent runs inside the context window, multi-turn chat_history on agent.run(), and preserving successful results when parallel tool calls partially fail. In review.

smolagents Agents Memory
SearchApi.io Integrations

Two standalone packages bringing SearchApi.io's multi-engine web search (Google, News, Shopping, YouTube, Bing, Baidu) to agent frameworks: a LangChain integration with a search tool, RAG retriever, and full async support, and a LlamaIndex tool integration. Both published on PyPI, plus the official integration docs upstream in LangChain.

LangChain LlamaIndex PyPI Search
langchain-google — Gemini Integration

Two fixes in review. service_tier support on ChatGoogleGenerativeAI, where the constructor argument was silently discarded and the value has to travel as a body field on one backend and a request header on the other, with the accompanying docs page. And schema-aware decoding of the JSON-encoded list and dict tool arguments Gemini returns, which reached Pydantic as strings and failed validation before the tool ever ran. The decode is gated on the declared parameter type, so a string argument carrying a JSON payload is left alone.

LangChain Google Gemini Tool Calling
tokenizers — BPE Loader Panic

BpeBuilder::build() sized its scratch buffer to the longest token in the vocabulary, but a merge writes the concatenation of two, so a crafted tokenizer.json panicked with an out-of-range slice on load, before tokenizing anything. A second bug in the same loop underflowed a usize when the right token was shorter than the continuing-subword prefix. Verified by reverting the source hunks and keeping the tests, which reproduced the panic. In review.

Rust Tokenization Hugging Face
Inspect AI — Tool Call Parsing

Tools with an empty or all-optional parameter schema are called with an empty argument body, which some models emit with stray quotes attached, failing the parse and returning a tool error to the model. The issue placed the fault client-side; tracing the value from chat.completions.create() to the parser showed nothing accumulates or re-serializes in between, so the string arrives that way off the wire. That explains why two unrelated backends produced the identical artifact. Merged.

Evaluation Agents Tool Calling
CrewAI

Multi-engine search tool for CrewAI agents supporting Google, YouTube, Bing, Baidu and more, with dynamic engine switching inside agent workflows. Also hardened error handling across config parsing, callbacks, and async execution. In review.

CrewAI Agents Search
MCP Servers — Configurable Timeout

Made the request timeout configurable in the MCP fetch server, improving reliability for long-running tool calls, with test coverage for the new configuration paths. In review.

MCP Python Agent Tooling
Qwen Code & Harbor

Two agent runtimes. In Alibaba's Qwen Code CLI, Vertex AI could only authenticate with an explicit key file, so Application Default Credentials, the standard path on GCP compute, were unusable. In Harbor, environment_content_hash raised OverflowError on files above 4 GB, breaking environment fingerprinting for any agent workspace holding a model checkpoint. Merged.

Agents Vertex AI Auth
scrapy-playwright

Scrapy's headless-browser integration read a download's body through path(), which is unavailable when the browser context is remote, so downloads silently produced empty responses. Reading through save_as() works in both the local and remote cases. Merged.

Scraping Playwright Data Extraction
Certifications & Education
Professional Certifications
TensorFlow Developer Certificate
Google / TensorFlow | May 2023
Apache Airflow Fundamentals
Astronomer | Nov 2023
MLOps | Machine Learning Operations
Duke University / Coursera
Deep Learning Specialization
DeepLearning.AI / Coursera | Sep 2022
TensorFlow Developer Specialization
DeepLearning.AI / Coursera | Nov 2022
Data Scientist With Python
DataCamp | Nov 2021
Data Analyst With Python
DataCamp | Jan 2022
Education
Bachelor of Mathematics
National Autonomous University of Mexico (UNAM) | 2017 - 2021 | GPA: 92/100
NLP & Deep Learning Research Intern
IIMAS, UNAM (Institute for Research in Applied Mathematics and Systems) | March 2022 - January 2023

Designed and ran deep reinforcement learning experiments (PyTorch, OpenAI Baselines, Dopamine), comparing agent architectures against published baselines. Built an end-to-end NLP data pipeline (large-scale scraping, cleaning, annotation) for language-model training, working alongside faculty researchers.

Research Summer Residency
CIMAT (Research Center in Mathematics) | 2020
Languages & Tests
English - C1 Full Professional Proficiency (TOEFL Certified)
Spanish - Native
Portuguese - Currently learning
What People Say About Me

Recommendations from colleagues. Verify on LinkedIn