Jaime Aza

AI Engineer

I design the harness, the agents write the code, and I verify and decide. That is how I build full-stack apps and AI agents that run in production.

Claude CodeCodexSubagentsSkillsHooksMCPLangGraphLangChainPythonTypeScriptNext.jsDjangoSupabaseRAGWhatsApp APIHiggsfieldElevenLabs

5+

Years of experience

2x

Hackathons won

3

Startups supported

Capabilities

What I build

Agentic Development

Claude Code, subagents, skills, hooks and MCP inside a deterministic harness: the model decides, I set the conditions, review the output and own the result.

AI Agents in Production

Agents built with LangGraph, LangChain and MCP that take orders, handle leads and operate with guardrails, kill switches and a human in the loop.

Chatbots & Conversational AI

Conversational agents on the WhatsApp Business API, Telegram and voice, with memory and human handoff.

Full-stack Development

Web apps with React, Next.js, TypeScript, Python, Django, FastAPI, Supabase and robust REST APIs.

RAG & Vector Search

RAG systems with embeddings, pgvector, Qdrant and semantic search, including multimodal text-and-image RAG.

Evals & Guardrails

Versioned datasets and production replay, deterministic evaluators, LLM-as-judge only for the subjective parts, and server-side revalidation of everything critical.

Custom MCP Servers

I build MCP servers and wire agents into desktop apps: HF Studio brings 82 video and image models plus ElevenLabs audio to Claude Code, Codex and ChatGPT, with a mandatory quote before spending; Blender, DaVinci Resolve and TouchDesigner are driven over MCP from the terminal.

AI Video, Image & Voice

Agent-directed media production: Kling, Seedance and Wan for video, ElevenLabs for voice, sound effects and music, and programmatic editing with HyperFrames and DaVinci Resolve all the way to the final reel, with the cost of every generation shown before it runs.

3D & Creative Coding

Scenes and animation in Blender (cameras, IK, Eevee rendering), real-time audio-reactive visuals in TouchDesigner with GLSL, and applied computer vision (MediaPipe, COLMAP) to pin graphics to the real world.

How I work

My agentic development workflow

I neither write every line by hand nor leave the agent on its own. I design the context, the rules and the tools with which Claude Code plans, writes and verifies; I keep the architecture decisions, the review and the responsibility for the result.

01

Context before code

Every session starts with memory: a second brain in Obsidian with project notes, decisions and solved bugs (symptom → root cause → fix) that a hook injects when Claude Code starts, plus a CLAUDE.md per repo with the hard rules. The agent never starts from zero.

ObsidianCLAUDE.mdHooks
02

Specify and plan in phases

Before any code: a domain interview (one decision at a time), a PLAN.md with phases and a verifiable deliverable per phase, the data model from day one, and ADRs only for what is hard to reverse. I built /roadmap to know which phase I am in and what changed since the plan was approved.

Plan modeADRs/roadmap
03

Design the harness

The model decides; the harness sets the conditions. Skills that encode the project's conventions, subagents with isolated context, MCP for GitHub, docs, Railway, Supabase, Vercel and Playwright, my own or local MCP servers for Blender, DaVinci Resolve, TouchDesigner and HF Studio, and slash commands like /commit with lint and build up front. I install skills only when the work calls for them.

SkillsSubagentsMCPSlash commands
04

Build with agents

Claude Code executes; I direct. Deep-work blocks without interruptions, a local-first environment (nothing touches the cloud until it works locally), plus worktrees and Herdr to run several agents in parallel in the same session. In agents that go to production, the LLM never executes the critical part: the backend adds up, validates and revalidates.

Claude CodeHerdrWorktreesLocal-first
05

Verify in layers

Lint and build as the gate at every milestone, tests where the risk demands them (the one that fails if a tenant sees another tenant's data), local /code-review before opening the PR, evals on production datasets, and a second opinion from another model family: Codex reviews the plan and the diff in a Herdr pane, reads the repo on its own and gives its verdict in rounds until it approves. The PR is the unit of review and a human approves the merge.

/code-reviewCodexpytestLangSmithPR
06

Close and compound

On close, the knowledge goes back to the vault: project status, decisions with the alternatives that were discarded, and bugs with their root cause. The next session, human or agentic, starts higher than where the last one ended.

ObsidianLogADRs

The model decides; the harness sets the conditions.

The LLM never executes the critical part: the server always revalidates.

The agent that wrote the code is not the one that reviews it: Codex evaluates what Claude Code builds.

If it did not produce running code, a note or an ADR, it does not count as done.

Achievements

Recognitions

Winner · 1st Place — May 2026

Winner of Platanus Hack 26 — Buenos Aires

First place in the AI Security track and overall winner of the Platanus hackathon in Buenos Aires — 36 hours non-stop, 110 hackers selected from across LATAM, with Anthropic as main sponsor. I built Tranquera, a proxy interceptor for Claude Code that enforces organizational policies at runtime.

Claude CodeAI SecurityHaiku 4.5FastAPINext.js 16
Winner · 1st Place — August 2025

Winner of the Colombia Tech Week 2025 AI Hackathon

First place in the Best Agentic App in WhatsApp track of Colombia's largest hackathon, organized by Colombia Tech Week in Bogotá with over 150 participants.

WhatsApp APIAI AgentsLangChainLangGraphRAG

Products

Projects 2026

Tresqu

Tresqu

A team of financial agents you talk to via chat — from WhatsApp, Telegram, Gmail or the web. Its promise: "it knows how you live, it invests like you are." Four specialized agents coordinate: (1) Expenses & income records and classifies transactions, generates monthly summaries and detects historical patterns; (2) Investments prepares stock operations on Wallbit but never executes them without your approval; (3) Market analyst contextualizes prices, trends and asset fundamentals according to your profile; (4) Risk profile measures your real tolerance from your history (not questionnaires) and blocks incongruent operations. You log expenses the way you talk — text, audio or a photo of the receipt — and Gmail sync captures transactions without manual input; search is in natural language, with no filters or exact categories, over embeddings in pgvector. The money lives in Wallbit (not in Tresqu): from the same chat you buy and sell stocks, ETFs and bonds, transfer and check balances live, with multi-currency support (COP, USD, EUR and more) and real-time conversions.

Sistema multi-agenteLangChainOpenAIRAG
Visit siteView details
HF Studio

HF Studio

My own AI video, image and audio studio on top of the Higgsfield and ElevenLabs APIs, built agents-first: a REST API, an MCP server so Claude Code, Codex, Claude Desktop and ChatGPT can generate for me, and a web UI in Spanish (English optional) to do it by hand, all sharing the same library. It covers 82 Higgsfield endpoints (66 video, 15 image and 1 references), each with the JSON Schema extracted from the official docs, so the UI forms are generated from the schema with no per-model code and agents search by capability (text to video, image to video, first and last frame, references, editing, extension, motion transfer) rather than by brand. Audio comes from ElevenLabs: voice change on an exact segment of a video with horror effects, text to speech, sound effects, music and voice isolation, plus a sound library that classifies every sound so it can be reused without paying again. The core rule is that nothing is generated blind: the cost is shown next to the button and, over MCP, generating requires a single-use quote tied to that request and to an idempotency key, because the Higgsfield API does not deduplicate and an ambiguous retry could charge twice. Underneath are asynchronous, persistent jobs: validation before spending credits, a local queue sized to the account's concurrency (Higgsfield answers 400 rather than 429 at the limit), webhooks that only trigger an authenticated status check because they are not signed, and local copies of the outputs because Higgsfield keeps them for only 7 days. It includes presets with variables, batches with a total quote, a natural-language model recommender and 12 use cases with tutorials. Every iteration went through rounds of review by Codex before closing, and today it produces Frostbyte's reels alongside Blender, HyperFrames and DaVinci Resolve.

Servidor MCP propioHiggsfield API (82 modelos)ElevenLabs APICotización antes de generar
Visit siteView details
Parkboard

Parkboard

An infinite canvas for everything left pending while I work with AI agents. When Claude Code, Codex or another agent works on a task, more tasks keep coming out of it: a bug spotted along the way, an idea for later, a check before shipping. You stay on the main task and, by the end of the session, those side tasks are buried in the conversation. Parkboard collects them: when I say "let's leave that for later", the agent parks them with the `park` CLI, with enough context to pick them up cold and with the agent, session id and working folder they came from, so getting back to the conversation where they were born is one step. On the canvas, cards are grouped by project and moved by dragging, with status, priority, kind, notes, links, an Obsidian vault note and a short number (#12) so I can tell any agent "work on 12". Three views (Tasks, Ideas and Notes) keep ideas from crowding the work, plus personal and work areas. The CLI has no dependencies, returns JSON when piped, offers `--dry-run` on writes, and `park schema` describes every command, flag and exit code so an agent can use it without guessing. It is private by default: Clerk sign-in plus an email allowlist, and CLI keys are stored as SHA-256 hashes. Writes are chained per card and per project, with 409 conflicts, so the agent and I can edit at the same time without overwriting each other.

CLI para agentes (Claude CodeCodex)JSON Schema de comandosNext.js 16
Visit siteView details
Tranquera

Tranquera

Proxy interceptor for Claude Code that closes the organizational alignment gap: Claude Code is aligned with Anthropic's values, but not with the policies of each company deploying it. Tranquera is the middle layer — a silent customs checkpoint that enforces no-code rules at runtime with a Regex → Pattern → Haiku 4.5 judge cascade under 200ms of overhead and four explicit actions (BLOCK · REDACT · WARN · LOG). The (non-technical) compliance officer defines policies in natural language from a visual builder; devs onboard with a single command (`npx tranquera setup`, Google OAuth device flow and automatic export of `ANTHROPIC_BASE_URL` to the shell rc). Per-dev attribution is solved by baking the token into the URL path — Claude Code does not allow custom headers. An AI Suggestor with a daily cron and Haiku 4.5 proposes new rules from the LOGs with a human in the loop. Postgres + pgvector ready to pre-filter rules by semantic similarity. Winner of the AI Security track and the overall prize at Platanus Hack 26 Buenos Aires (main sponsor: Anthropic).

Claude Haiku 4.5AI SecurityPrompt cachingCascada Regex → Pattern → LLM
Visit siteView details
Festora

Festora

Professional gallery delivery platform for photographers with state-of-the-art multimodal AI. It automatically analyzes every photo with GPT-4o and Gemini 2.0 Flash: assigns a 1-10 score, evaluates composition, pose and background quality, categorizes scenes (ceremony, portraits, party, outdoors...) and generates project highlights. It includes semantic photo search in natural language ('bride dancing', 'table decoration') with multimodal RAG using Google's Gemini Embedding 2 — Google's first natively multimodal model mapping text and image into the same vector space — stored in pgvector. The public gallery reorders photos based on the client's favorites and writes poetic cover phrases with AI. Complemented by festora-vision-api: an independent microservice with blur detection (Laplacian), BRISQUE/NIMA technical scoring, emotion analysis (DeepFace) and CLIP/DBSCAN semantic clustering.

GPT-4oGemini 2.0 FlashGemini Embedding 2RAG multimodal
Visit siteView details
Constela

Constela

Presential-event networking that finally becomes visible: you scan someone's personal QR and end up inside the event and connected in the same gesture — no 'add' buttons, no requests, no connecting from the couch. Every edge in the graph represents a real encounter (it's only born by opening someone's QR, never on render), and the app spreads person to person through contagious membership: getting into an event always goes through someone who's already in. The event's full constellation — visible to every attendee, not 'my network up to 2nd degree' — is drawn live with react-force-graph-2d on Canvas, synced in real time via Supabase Realtime, with one star per attendee and triadic closure when three people who already know each other form a triangle. Auth is Google OAuth only, role/interest/intent tags are a living catalog that grows with usage, and onboarding is a single screen designed to be used standing up, one-handed, amid event noise. Built with Next.js 16 (App Router, React 19, React Compiler) and Supabase (Postgres + RLS, Auth, Realtime).

Next.js 16React 19React CompilerApp Router
Visit siteView details
Frostbyte

Frostbyte

The full operating system of a bar and restaurant, with AI at the core of the product rather than bolted on: it takes orders, sells, writes the menu and decides what can be ordered. Orders come in through three doors that end in the same kitchen ticket: the QR code on every table, the customer app and an AI agent that answers the business's WhatsApp around the clock. That agent is built with LangChain create_agent on LangGraph and GPT-4o-mini, with tools wiring it into the business: browsing the menu and each product, searching regardless of accents or typos, reading the customer's history and preferences, quoting, checking delivery coverage, creating, modifying and cancelling orders, and asking for a human. Its conversational memory lives in PostgreSQL through PostgresSaver (one thread per contact per day), while long-term context (address, preferences, past orders) comes in through tools. It understands voice notes with gpt-4o-mini-transcribe and photos with multimodal vision, payment receipts included, pulling out amount, date and reference number. Before creating a delivery it validates the address against the coverage area hand-drawn on the map (ray casting in Django, Turf on the front end) and, when the conversation goes off script, it hands off to a person and pauses without losing the thread. The rest of the product is AI too: a professional product photo generator with four swappable models (GPT Image 1.5 and 2, Gemini 3 Pro and 3.1 Flash Image) on Cloudflare R2, AI-written product descriptions, a menu recommender driven by mood or a quick quiz, voice search with Whisper and daily content that refreshes itself. Underneath runs the real operation: live kitchen over WebSocket (Django Channels), tables per floor with printable QR codes, inventory with recipes and real cost per variant, expenses that separate investment from operating spend so the margin doesn't lie, analytics, reservations, music per floor, multiplayer games and two businesses in the same account, with no per-order commissions. Running in production every day in a real venue in Cumbal (Nariño) and the base of the SaaS being packaged for other businesses.

Agente LangChain + LangGraphGPT-4o-miniTool callingMemoria persistente (PostgresSaver)
Visit siteView details
Keyduelo

Keyduelo

Real-time multiplayer typing race inspired by Monkeytype. Anyone can create a room with a 5-character code, share the link and compete for the highest WPM on the same text, with a spectator mode to join rooms mid-race. The architecture runs 100% on the edge over Cloudflare Durable Objects: one 'Room' DO per room (authoritative state, WebSockets with the Hibernation API, persistent hostToken) and a 'RoomRegistry' singleton that keeps the global list of active rooms via RPC between DOs. The clock, the text and the ranking are decided server-side, so cheating by changing the local clock is impossible. Includes 5 themes, key sounds synthesized with the Web Audio API (no samples) and a host/player/spectator model with kick and race restart.

Cloudflare WorkersDurable ObjectsWebSocket Hibernation APIEdge Computing
Visit siteView details
S2T — Speech to Text para Windows

S2T — Speech to Text para Windows

Windows desktop app that transcribes speech to text in real time and types the result directly wherever the cursor is — no copying, no pasting. Push-to-talk with F9: hold to speak and release so the corrected final text appears in any app (VS Code, Word, Notion, Chrome…). Supports two swappable engines: Deepgram Nova-3 (cloud, low latency, simultaneous es+en bilingual with LANGUAGE=multi) or local faster-whisper (no internet, no API key, tiny→large-v3 models). Includes a Vercel-style floating HUD with timer, live preview, voice visualizer and similarity-based deduplication. Lives as a system tray icon, with VAD via silero-vad ONNX (no PyTorch). Packaged with PyInstaller + Inno Setup as a native .exe installer.

Deepgram Nova-3faster-whispersilero-vad ONNXSpeech-to-Text
View details
image_to_xyz

image_to_xyz

Web app that converts a 2D image into a navigable 3D point cloud using AI depth estimation. The backend (FastAPI + Docker on Railway) wraps Depth-Anything-V2 (ViT-S checkpoint) and returns the depth map as a grayscale PNG. The frontend combines the RGB image and the depth map in utils/pointCloudUtils.ts: for each pixel it generates a 3D point where X,Y map to normalized space (NDC-like, with inverted Y and height/width aspect ratio) and Z = (depth/255) × depthScale, controlled by sample rate and depth exaggeration sliders. The result is two Float32Arrays (positions + colors) rendered with React Three Fiber + drei as a THREE.Points with vertexColors. It supports three swappable depth backends: a self-hosted FastAPI server, HuggingFace Spaces or the OpenAI Images API.

Depth-Anything-V2Computer VisionIA generativaThree.js
Visit siteView details
RAG Properties

RAG Properties

Real estate semantic search engine with a RAG architecture covering more than 8,800 properties in Mexico. The user asks in natural language ('spacious house with a garden in Mérida, 3 bedrooms'), Gemini 3 Flash extracts structured filters (city, type, bedrooms, price), Qdrant pre-filters and vector search retrieves the most semantically relevant properties. It supports multimodal RAG with Google's Gemini Embedding 2: each property is represented by a single 3072-dimension vector fusing the text description with up to 6 images in the same vector space — enabling search by text or by image. It also supports swappable embeddings (OpenAI text-embedding-3 and gemini-embedding-001) with a React playground featuring an interactive similarity chart and a conversational agent with LangGraph (ReAct). Deployed on Railway + Vercel + Qdrant Cloud.

RAG multimodalGemini Embedding 2 (3072d)OpenAI text-embedding-3Gemini 3 Flash
Visit siteView details

Experience

Professional journey

Ungga

Jun 2025 - Present

Remote - Proptech Mexico

AI Developer Engineer

  • -Multi-agent system with LangGraph (primary assistant + per-flow sub-assistants) that serves prospects and property owners over WhatsApp.
  • -Evaluation pipeline in LangSmith: production-replay datasets, deterministic evaluators and pairwise LLM-as-judge to migrate models and prompts with evidence.
  • -Agentic development with Claude Code: skills encoding the repo's conventions, subagents and Codex as an independent PR reviewer before merge.
PythonTypeScriptLangGraphLangChainLangSmithWhatsApp APIClaude CodeCodex

Higher Bit Solutions

Mar 2025 - Jun 2025

Remote - Chilean Startup

Full-stack Developer

  • -Web apps with React + TypeScript and REST APIs with Django REST Framework.
React.jsPythonDjango RESTTypeScriptTailwind CSS

Decimetrix

Jan 2022 - Feb 2025

Colombia

Full Stack Developer Engineer

  • -Led the development team; refactored the frontend, cutting the bundle size by 50%.
  • -React + Mapbox modules that improved field data collection by 40%.
React.jsNode.jsPostgreSQLMapboxDockerAWS

Decimetrix

May 2021 - Dec 2021

Colombia

Software Development Engineer

  • -MVP of Green Dragon, a digital twin for carbon footprint management in oil & gas.
React.jsNode.jsPostgreSQLAWSDocker

Intecol SAS

Jan 2021 - Apr 2021

Colombia

Computer Vision Engineer

  • -Desktop app for FLIR/Cognex industrial cameras; sped up acquisition by 30%.
PythonOpenCVPyQt

FAQ

Frequently asked questions

Who is Jaime Aza?

Jaime Aza is a Colombian AI engineer: a full-stack software engineer who builds AI-powered products by directing coding agents (Claude Code, subagents, skills, MCP) and who ships AI agents to production with LangGraph, LangChain and the WhatsApp API. He is a winner of Platanus Hack 26 (Buenos Aires) and the Colombia Tech Week 2025 AI Hackathon.

What is agentic software engineering?

Building products by directing AI agents instead of writing every line by hand: the engineer designs the context, the rules and the tools (the harness) with which agents like Claude Code plan, write and verify code, while keeping the architecture decisions, the review and the responsibility for the result. Jaime Aza works this way and, in addition, builds AI agents that operate in production.

What does Jaime Aza's workflow look like?

Six steps: (1) context before code, with a second brain in Obsidian that a hook injects into every session and a CLAUDE.md per repo; (2) specification and a phased plan with verifiable deliverables and ADRs, tracked with his /roadmap tool; (3) harness design with skills, subagents, hooks and MCP; (4) building with Claude Code in a local-first environment, with several agents in parallel in Herdr; (5) layered verification with lint, build, tests, /code-review, LangSmith evals and a cross-review by Codex of the plan and the diff, with a human approving the merge; and (6) a close that returns the knowledge to the vault for the next session.

What does Jaime Aza specialize in?

Jaime Aza specializes in agentic development with Claude Code; AI agents in production with LangGraph, LangChain and MCP; chatbots on WhatsApp, Telegram and voice; RAG systems with embeddings and vector search (pgvector, Qdrant); evals and guardrails for LLMs; custom MCP servers; AI video, image and voice production (Higgsfield, Kling, Seedance, ElevenLabs, HyperFrames, DaVinci Resolve); 3D and creative coding with Blender and TouchDesigner; computer vision; and full-stack development with React, Next.js, TypeScript, Python, Django and FastAPI.

Which hackathons has Jaime Aza won?

Jaime Aza won Platanus Hack 26 in Buenos Aires (May 2026), taking first place in the AI Security track and the overall prize, with Anthropic as main sponsor. He also won the Colombia Tech Week 2025 AI Hackathon (August 2025) in the Best Agentic App in WhatsApp track.

What projects has Jaime Aza built?

Jaime Aza's notable projects include: Tranquera (a policy proxy for Claude Code), Tresqu (a team of financial agents you talk to via chat), Festora (photo gallery delivery for photographers with multimodal AI), Frostbyte (a bar and restaurant platform with an AI agent that takes orders over WhatsApp), Keyduelo (an edge-based typing race), S2T (speech-to-text for Windows), image_to_xyz, RAG Properties, Constela (QR-based event networking with a live graph) HF Studio (his own AI video, image and audio studio, with an API, an MCP server and a web UI) and Parkboard (a canvas of pending work that AI agents fill from the terminal through its CLI).

How does Jaime Aza use Codex alongside Claude Code?

As an independent reviewer from another model family. Claude Code implements and Codex evaluates: Jaime starts it in a Herdr pane inside the same repository, so it reads the diff on its own instead of trusting the summary of the agent that wrote the code, and asks for a verdict in rounds on the plan, the methodology or the PR. That is how it reviewed Ungga's PRs, approved every iteration of HF Studio and confirmed technical challenge solutions before they were submitted.

What does Jaime Aza do with video and generative AI?

He built HF Studio, his own studio on top of the Higgsfield and ElevenLabs APIs, with an MCP server so Claude Code and Codex can generate video, image and audio with the cost visible and a mandatory quote before spending. He uses it to produce Frostbyte's reels: product animation in Blender driven over MCP, video with Kling, Seedance and Wan, voice, sound effects and music with ElevenLabs, and final editing with HyperFrames or the DaVinci Resolve MCP. He also builds real-time visuals in TouchDesigner.

Where does Jaime Aza work?

Jaime Aza works remotely as an AI Developer Engineer at Ungga, a proptech company in Mexico, where he builds a multi-agent system with LangGraph that serves prospects and property owners over WhatsApp and maintains its evaluation pipeline in LangSmith. He previously worked at Higher Bit Solutions, Decimetrix and Intecol SAS.

How can I contact Jaime Aza?

You can reach Jaime Aza on LinkedIn (linkedin.com/in/jaimeaza), GitHub (github.com/Jjat00) or WhatsApp (wa.me/573164277879). His official website is https://jaimeaza.tech.