Skip to content
Español

Jerick Castro Ortiz

Full-Stack & AI Engineer

Web, mobile and AI products, from idea to production

  • Hey Eva live on the App Store and Google Play
  • 209users
  • 2,600+conversations
  • 66%came back

Barranquilla, Colombia · UTC−5 · Open to remote contract or full-time work

02 · About

About

Portrait of Jerick Castro Ortiz in a navy suit and striped tie

I'm a self-taught full-stack engineer. For five years I've shipped production software as a founder and freelancer. I learned Flutter from scratch to build Hey Eva and wrote its first versions with little AI help. I'm also CTO of KVRA Agency, where I designed the agent workflow the team uses every day. I use AI coding tools, review everything they produce and answer for every release.

Languages
Spanish (native), English (C1)
Education
Computer Engineering coursework, Universidad de La Sabana, 2020–2021; self-taught since then
Location
Barranquilla, Colombia · UTC−5
Availability
Open to remote contract or full-time work

Skills

Languages

  • TypeScript
  • Python
  • JavaScript
  • SQL
  • Dart
  • Swift
  • Kotlin
  • C++
  • HTML/CSS
  • Bash
  • Java
  • PHP

Web & backend

  • React 19
  • Next.js
  • Node.js
  • FastAPI
  • Express
  • WebSockets
  • Electron
  • Cloudflare Workers
  • Vite
  • Astro
  • Tailwind CSS
  • GSAP
  • Durable Objects
  • Bootstrap
  • WordPress
  • Wix

AI & agents

  • Claude Code
  • Claude API
  • Claude Agent SDK
  • Gemini API and Gemini Live API
  • MCP (servers and clients)
  • Multi-agent orchestration
  • Tool calling
  • Embeddings and vector search
  • Semantic memory
  • LLM guardrails
  • Model evaluation
  • Vertex AI
  • OpenAI API (GPT Image, Codex SDK, Realtime)
  • ElevenLabs
  • Higgsfield
  • Midjourney
  • ComfyUI with local models

Mobile

  • Flutter (BLoC)
  • Swift and SwiftUI (native iOS)
  • Kotlin (native Android: View system, foreground services)
  • App Store and Google Play releases
  • RevenueCat
  • TestFlight
  • Pixel-perfect Figma-to-Flutter
  • Google and Apple Wallet passes
  • Deep links into WhatsApp, Uber and Google Maps
  • Google Sign-In
  • Sign in with Apple
  • Facebook Login
  • App Store Connect and Google Play Developer APIs

Data & cloud

  • PostgreSQL (Neon)
  • Google Cloud (Cloud Run, Secret Manager)
  • Firestore (vector search)
  • Supabase (Edge Functions)
  • Docker
  • Firebase
  • Cloudflare
  • Vercel
  • Fly.io
  • Drizzle ORM
  • Sanity
  • SQLite
  • MySQL
  • MongoDB
  • Azure
  • AWS (familiar)

APIs & integrations

  • REST
  • Webhooks
  • Wompi
  • Mercado Pago
  • WhatsApp Business API
  • Shopify (Buy Button, Storefront API)
  • Google Maps Platform (Places API)
  • Meta Pixel and Conversions API
  • YouTube Data and Analytics
  • Instagram Graph
  • TikTok
  • PayU
  • Dropi
  • Ecwid
  • Spotify Web API
  • Resend

Quality & delivery

  • Playwright
  • Vitest
  • pytest
  • GitHub Actions
  • axe accessibility checks
  • Testing Library
  • pnpm monorepos
  • Git
  • Codemagic
  • Figma (Dev Mode)

04 · Hey Eva

Live

Hey Eva

From Global Technology & Innovation AI S.A.S., the company I founded · Since June 2025

A voice AI companion you talk to in real time. It sets alarms, makes calls and orders an Uber.

I built the whole product, from the iPhone and Android app to the voice server, ops console and store releases.

Hey Eva home screen with the voice orb and the Start button (iPhone)
Eva describing a cat's coat from the camera view (iPhone)
Eva requesting an Uber ride by voice (iPhone)
Eva Anywhere listening overlay above the phone home screen (iPhone)
Eva sending a WhatsApp message by voice (Android)
  • 209

    registered users

  • 2,600+

    conversations

  • 66%

    of users came back for more than one conversation

  • 5.0

    rating on the App Store in Colombia

Data as of October 2026

  • Hands-free phone actions through tool calling: alarms, calls, texts, WhatsApp, calendar, maps, music and Uber.
  • Clean voice with no echo, thanks to a C++ echo-cancellation layer on WebRTC that I wrote.
  • Native features beyond Flutter: widgets, Live Activities and the Dynamic Island on iPhone, and a floating bubble on Android.

Hear Eva

A real 30-second conversation, recorded on my phone. Spanish audio, with captions.

  1. Listens — audio streams to the voice server
  2. Thinks and looks it up live
  3. Answers out loud, in real time
  4. Hears the yes
  5. Tool call → the phonemusic_control(action: "play", provider: "youtube_video")
  6. YouTube opens on the phone
Read the transcript
  • 0:01JerickHow are you, Eva? Eva, I want to watch an Ibai video.¿Cómo estás, Eva? Eva, quería ver un video de Ibai.
  • 0:05JerickWhat's the latest video he's uploaded?¿Cuál es el último video que ha subido él?
  • 0:13EvaHi, Jerick. So, the latest video Ibai uploaded…Hola, Jerick. Pues mira, el último video que subió Ibai…
  • 0:17Eva…is called “Hice mi propia casa de empeños” (I made my own pawn shop).…se llama "Hice mi propia casa de empeños".
  • 0:19EvaWant to watch it together?¿Te animas a que lo veamos juntos?
  • 0:22JerickYes, go ahead, put it on, please.Sí, dale, ponlo, por favor.
  • 0:26EvaOn it! Putting it on now. Enjoy!¡De una! Ya mismo lo pongo. ¡Que lo disfrutes!

How it is built

The company's design team drew the UI in Figma. I turned those designs into pixel-perfect Flutter screens, using the Figma MCP and a figma-to-flutter skill I wrote for the job.

How a phone action runs: Gemini Live returns a tool call, the voice server relays it, and the app carries it out.

On the phone

  1. Flutter appBLoC · iPhone and Android
    • Native iOS layerSwift
    • Native Android layerKotlin
    • Echo cancellationC++ · WebRTC
    • Phone actionsAlarms, calls, texts, WhatsApp, calendar, maps, music, Uber

Cloud and ops

  1. Voice serverPython (FastAPI) · Google Cloud Run
    • Long-term memoryFirestore · vector search
  2. Ops consoleReact + TypeScript
  3. FirebaseAuth · App Check · Cloud Messaging · Crashlytics

Real-time AI

  1. Gemini Live APIReal-time voice · tool calling
Technical detail

The challenge

Talking to a phone usually means giving short commands. I wanted a companion you can actually have a conversation with, in real time, that can also set alarms, make calls, send texts or order an Uber without touching the screen, and whose voice comes through clean, with no echo.

  • Python (FastAPI) backend with 240+ API routes and 3,500+ automated tests.
  • React and TypeScript ops console with 1,000+ tests.
  • CI/CD with Codemagic and GitHub Actions.
  • Sign-in with Google, Apple and Facebook, and subscriptions with RevenueCat.
  • Long-term memory in Firestore with vector search, so Eva recalls things by meaning, not by exact words.

Stack

  • Flutter
  • BLoC
  • Swift
  • Kotlin
  • C++
  • WebRTC
  • Python
  • FastAPI
  • Gemini Live API
  • Google Cloud Run
  • Firestore
  • Firebase
  • React
  • TypeScript
  • RevenueCat
  • Codemagic
  • GitHub Actions

05 · CAA SuiteIn-house

CAA Suite

A desktop app where AI agents take social-media videos from script to publishing.

Built with KVRA OrquestaFrom first code to a working version in testing in 12 days, with every piece reviewed before I moved on.

KVRA Agency's in-house tool · August – October 2026

Built with Electron, React and the Claude Agent SDK. I talk to a Director agent, which coordinates the other agents and uses 60 tools to take each video from script to publishing on YouTube, Instagram and TikTok. Nothing that costs money goes out without approval first. It grew out of a Claude Code proof of concept I made for a client, and KVRA is starting to use it to produce social-media content for companies.

  • 12

    days from first code to a working version in testing

  • 60

    tools for the Director agent

  • 25

    packages in the pnpm monorepo

  • 10,000+

    automated tests

How it works

  1. A brief

    The person describes the video

  2. Director agent

    Claude Agent SDK

  3. 60 tools

    Custom MCP servers, JSON-RPC with no SDK

  4. Spend approval

    Before every paid call; no duplicate submissions

  5. Generation providers

    • Image
    • Video
    • Voice

    Publishing

    • YouTube
    • Instagram
    • TikTok

Backend

Supabase

Permissions, spending and approvals

Made with CAA Suite

Reel01 / 12

  1. POV: a day of luxury in EgyptShort · Luxury · 1:00

  2. Chili oil noodles in one takeShort · Food · 0:30

  3. They mocked his wooden plane; he built an AirbusShort film · Storytelling · 2:06

  4. La Doliente: horror trailer16:9 trailer · Horror · 1:46

  5. From cracked floor to resin aquariumShort · Makeover · 0:30

  6. Abandoned pool: from swamp to blueShort · Restoration · 0:30

  7. A Roman aqueduct running for 2,000 yearsShort · History · 0:30

  8. A grandpa builds a vintage wooden truckShort film · Storytelling · 2:04

  9. A miniature city that lights upShort · Miniatures · 0:39

  10. POV: a luxury mountain chaletShort · Luxury · 0:51

  11. Seared wagyu and fries in one takeShort · Food · 0:30

  12. Down into the ocean trenchShort · Science · 1:00

CAA Suite: the decisions screen with a script awaiting approval, its hook and beats, and approve or request-changes buttons.
CAA Suite: a video in production with its chain of agents — researcher, scriptwriter, director, reviewer — and the pending decision «Approve the final cut?».
CAA Suite: the trail of a published video, from the script a person approved to its performance.
Technical detail

Highlights

  • Every paid call needs approval first. The app shows the maximum cost, reserves it, blocks duplicate submissions and records each approval.
  • MCP servers I wrote by hand on JSON-RPC, with no SDK, that give the Director its 60 tools.
  • A Supabase backend (Edge Functions and SQL migrations) controls permissions and spending.
  • Tested at every level: unit, end-to-end, accessibility and visual regression.
  • Installers for macOS and Windows with Electron Builder.
  • Two modes. Channels is for Shorts, TikTok and Reels; Business is where clients review and approve.

Stack

  • TypeScript
  • Electron
  • React
  • Claude Agent SDK
  • MCP (JSON-RPC)
  • Supabase
  • pnpm
  • Vitest
  • Python
  • ffmpeg
  • Electron Builder

An Electron and React desktop app in a 25-package pnpm monorepo. The agents run on each user's own machine. A Supabase backend controls permissions and spending: it reserves the money before anything is sent, blocks duplicate submissions and records every approval. The Director reaches its 60 tools through MCP servers I wrote by hand on JSON-RPC, with no SDK. Editing, subtitles and quality checks run automatically. Electron Builder packages it for macOS and Windows. The first real-world runs are under way.

06 · How I buildIn-house

KVRA Orquesta

  1. Architect
  2. Agents
  3. Reviewers
  4. Delivery

An architect agent plans the work.

The agent system I designed on Claude Code and use to build everything.

5

KVRA members use it daily

Agents build in parallel.

Several pieces move at once: agents build in parallel from the architect's plan, so results arrive sooner.

Independent reviewers, a security audit and a visual walkthrough check every piece.

Scripted gates and hooks decide when work is done, never an agent saying it is.

What I automate, and what I don't

What the agents do

  • Planning the work
  • Code written in parallel
  • Automated tests
  • Cross-reviews between independent agents
  • Security audit
  • A visual walkthrough of every screen

What stays with people

  • Product decisions
  • Human QA
  • Final sign-off before delivery

More done in less time, with every piece verified by scripts, by independent reviewers and by people.

Benchmark

14

coding tasks in the benchmark

I built a benchmark that decides which model does which job

  1. 14 coding tasks: exploring a codebase, tracing behavior, digging through git history, multi-file edits, writing tests, diagnosing and fixing bugs, building TypeScript features and spotting conflicting contracts.
  2. A setup script rebuilds each task's workspace from scratch, with the bugs planted in it.
  3. Reference solutions and hidden tests score every attempt.
  4. Mutation testing: it rejects fake or weak solutions, so only a real fix passes.
  5. I rerun it with every new model release.
  6. Result (October 2026): code exploration and light edits moved to a model 5⁠–⁠13× cheaper, and every edit task still passes.

This site is the demo

I built this portfolio with Orquesta. Here is the real run.

  1. Phase 1: Independent plan review, 16:46–16:55. Lanes in parallel: Plan reviewer (16:46–16:55). Outcome: 10 issues found, folded into the plan (Passed).
  2. Phase 2: Foundation, 16:57–17:06. Lanes in parallel: Content contract (16:57–17:05); Routing + privacy gates (16:57–17:06).
  3. Phase 3: Sections, 17:09–17:16. Lanes in parallel: Hero + contact (17:09–17:13); About + experience (17:09–17:15); Hey Eva (17:09–17:16); CAA Suite (17:09–17:15); Orquesta + index (17:09–17:16); Four web cases (17:09–17:13).
  4. Phase 4: Integration, 17:16–17:27. Lanes in parallel: 133 unit tests · 84 end-to-end · privacy scan · Lighthouse 96 (17:16–17:27). Outcome: Load stalls found at 4× slower CPU (Found).
  5. Phase 5: Performance + copy, 17:27–19:21. Lanes in parallel: Performance (17:27–19:21); Copy, share card, tests (17:27–17:38).
  6. Phase 6: Recruiter walkthrough, 19:25–19:44. Lanes in parallel: Walkthrough (real browser, phone + desktop, both languages) (19:25–19:44). Outcome: 7 visible defects (Found).
  7. Phase 7: Fixes, 19:48–20:01. Lanes in parallel: Copy and profile (19:48–19:52); Orquesta, CAA Suite and Hey Eva (19:48–20:01).
  8. Phase 8: Re-walk, 20:02–20:11. Lanes in parallel: Re-walk of the fixes (20:02–20:11). Outcome: 8 of 8 fixes hold, 0 new defects (Passed).
  9. Phase 9: My review, 20:25–20:41. Lanes in parallel: Visual polish (20:25–20:41); Copy pass (20:25–20:31). Outcome: My own notes, applied (Passed).

End state134 unit tests140 end-to-end tests176 files in the privacy scan96 / 100 Lighthouse score

17 agents9 phasesone afternoon · every step checked

Colombia time, 10 October 2026

Technical detail

KVRA Agency's agent system, which I designed

Role
I designed it and I maintain it
Period
Since February 2026, as CTO of KVRA Agency

The challenge

One AI doing everything makes mistakes nobody notices, and its own “it works” proves nothing. Building fast and well takes what a good team has: a planner, builders and reviewers, working under rules that don't depend on anyone's word.

What I built

A team of Claude agents with fixed roles, running on Claude Code. Every project below with the “Built with KVRA Orquesta” seal came out of it.

Highlights

  • A person answers for the result. The AI helps; product decisions and the final sign-off stay with people.

Stack

  • Claude Code
  • JavaScript
  • Python
  • Bash

Built on Claude Code (agents, skills, hooks and workflows) with JavaScript, Python and Bash. Task plans are saved to disk, so long jobs survive context limits. Hooks enforce the rules for models, permissions and paid calls. An update channel delivers new versions on macOS and Windows.

07 · UC Contigo

Live

UC Contigo

Contract work for GPS The Marketing Machine

Screenshot of the home page of the UC Contigo university website, desktop view
Screenshot of the home page of the UC Contigo university website, phone view
Role
Lead developer. I wrote the original proposal and led the build.
Period
January – September 2026

The new website of UC, a private university in Barranquilla founded in 1993. It's live, and its non-technical staff use it every day.

  • 115

    routes on the site

  • 80

    content schemas in Sanity

  • 12

    tools UNI uses to look up the site's data

Visit uccontigo.edu.co
Technical detail

The challenge

UC needed a new site where applicants and students could find programs, admissions and fees, and one its non-technical staff could update on their own when a date or a price changed.

What I built

I built the whole site: a React 19 front end, a Sanity CMS, UNI (an assistant on Gemini), the connection to the CRM and the handover docs.

Highlights

  • Staff edit text and images by clicking on the page and see a live preview. Publishing triggers a signed webhook that rebuilds the site.
  • UNI answers questions about programs, admissions and fees from the site's own data, through 12 tools it can call, and turns down off-topic questions.
  • Enrollment requests reach the CRM (Supabase) with automatic retries and a dead-letter queue that keeps failed requests for replay.

Stack

  • React 19
  • Vite
  • Sanity (CMS)
  • Cloudflare Pages Functions
  • Durable Objects
  • Cloudflare KV
  • Gemini API
  • Supabase
  • GitHub Actions
  • Vitest

React 19 front end on Vite. Sanity Studio with click-to-edit and live preview; every publish fires a signed webhook that rebuilds the site. Cloudflare Pages Functions, Durable Objects (rate limiting) and KV serve UNI, which looks up the site's data and filters off-topic questions before answering. The CRM receives every request with automatic retries and a dead-letter queue for replay. About 900 automated tests, plus handover docs.

08 · Hogara

Pre-launch

Hogara

A KVRA Agency project

Hogara banner on terracotta with the tagline 'Tu casa, en orden' (Your home, in order).
Screenshot of the home page of the Hogara store, desktop view
Screenshot of the product page of the Hogara store, phone view
Role
Technical lead, redesign and logo
Period
August – September 2026

A cash-on-delivery online store. I led its rebuild ahead of launch and wrote most of the code.

  • 600+

    automated tests

Built with KVRA OrquestaBefore launch, the store went through independent reviewers, a security audit and a visual check on phone, tablet and desktop.

Technical detail

The challenge

Many shoppers in Colombia prefer to pay on delivery. Hogara sells that way, with no warehouse and no platform fees. That only works if prices never lose money, orders never go missing and customer data stays protected.

What I built

I rebuilt it around a catalog, one-step cash-on-delivery ordering, order tracking, a help center, complaints with a filing number and a shipping panel connected to Dropi. I also led the visual redesign and the logo. It isn't open to the public yet.

Highlights

  • The store won't go live if any price loses money, so a pricing mistake can't reach customers.
  • Prices always come from the server, and fake orders are throttled.
  • Fulfillment goes through Dropi, so there is no warehouse. Meta Pixel, Conversions API and Wompi payments are ready to switch on at launch.
  • Encrypted backups every day.

Stack

  • Next.js
  • TypeScript
  • Firestore
  • Wompi
  • Dropi
  • Meta Pixel + Conversions API
  • Fly.io
  • Docker
  • Playwright
  • GitHub Actions

Next.js and TypeScript on Fly.io with Docker; orders live in Firestore and fulfillment goes out through Dropi. 600+ automated tests and 9 end-to-end Playwright tests, with WCAG 2.1 AA accessibility checks, run in GitHub Actions. Order tracking never reveals whether an order exists.

09 · D'Lamark

Demo

D'Lamark Productions

For D'Lamark Productions, an events company

  1. Screenshot of the home page of the D'Lamark Productions website, phone view

    01Lineup

  2. 'Noche Dorada' event page: date, venue, ticket types with prices and the order summary.

    02The event

  3. Mobile checkout: order summary and the buyer's details form.

    03Checkout

  4. Door scanner for staff: pick the event and validate tickets with the camera or the code.

    04Door scanner

Role
Full development of the site, payments and door scanner
Period
September 2026

Online ticketing for an events company, with payments, Wallet passes and a door scanner that works without signal.

See the demo

Built with KVRA OrquestaCheckout, payments and the door scanner went through independent reviewers and a security audit before going online.

Technical detail

The challenge

An events company in Colombia wanted to sell tickets from its own site. Its audience comes from Instagram, TikTok and WhatsApp, so buying had to take under a minute on a phone, with no account.

What I built

I built the site and the ticketing: event lineup, guest checkout by card, PSE or Nequi, QR tickets by email and in Apple or Google Wallet, an events and orders panel, and a phone scanner that works offline. It's online as a demo.

Highlights

  • A payment counts only when Wompi sends a verified webhook, never from the return page.
  • The door scanner works without signal and rejects a ticket that has already been used.
  • At checkout, tickets are held for 15 minutes and return to sale if unpaid.

Stack

  • Next.js
  • TypeScript
  • Drizzle ORM
  • PostgreSQL (Neon)
  • Cloudflare Workers
  • Wompi
  • Resend
  • Vercel
  • Playwright
  • Vitest

The payment is confirmed only by Wompi's verified notice (card, PSE, Nequi). Each ticket is marked once at the door, even if the phone loses signal, and Wallet passes carry the same QR; the Apple pass is signed on the server. Next.js and TypeScript with Drizzle on PostgreSQL (Neon) and Cloudflare Workers; rate limits guard the login and forms against abuse. Tested with Vitest and Playwright, with accessibility checks.

10 · Finai

Demo

Finai

Built at KVRA Agency

  1. 01Statements from several banks

    Finai's statement upload screen showing the preview of a Bancolombia file: 56 detected transactions with date, description, amount and suggested group, ready to confirm into the inbox.
  2. 02Sorted with rules

    Finai's classification inbox: 80 transactions for the month, 6 pending, a progress bar at 93%, a notice of 28 suggested rules, and filters by account, group, type and date.
  3. 03Reconciled against the bank

    Finai's advisor panel: the month's diagnosis with bank reconciliation, everything classified, the three types with the highest budget execution, pre-tax profit and a draft of conclusions.
    Finai on a phone: the June 2026 home screen with cards for opening balance, inflows, outflows and closing balance, and the month status showing an exact reconciliation.
  4. 04A locked month close

    Finai's yearly month-close view: a table of the 12 months of 2026 with their status (May closed, June open), inflows, outflows, net and pending transactions.
    Finai on a phone: the month-close screen with the four weeks of June closed and the button to close the month.
  5. 05Cash flow and income statement

    Finai's cash-flow report for June 2026: Bancolombia and Bold accounts as columns, opening balance, inflows by sales type and outflows by concept, with the grand total on the right.
    Finai's income statement: operating revenue, cost of goods sold, gross profit, expenses and pre-tax profit, with vertical percentages and a comparison against the previous year.

Screens with test data

Role
I built the platform up to demo stage
Period
August – September 2026

Finance software for restaurants. It reads Bancolombia, Bold and Davivienda statements by their structure, without AI, and reconciles them against the bank.

  • 3

    bank statement formats recognized by structure

  • 8

    tools in the Claude advisor, for the accountant only

Built with KVRA OrquestaI handed over each stage only after it passed automated tests and an independent review.

Technical detail

The challenge

At a restaurant group, the accountant built each month's cash flow by hand in Excel. That meant downloading statements from several banks, sorting every transaction and reconciling against the bank.

What I built

Finai imports statements, sorts transactions with rules, reconciles them against the bank and closes the month. It also covers cash flow, income statement, budget and payroll. Each restaurant sees only its own data, by role, and a Claude advisor explains the month to the accountant. Today it's a private demo.

Highlights

  • Recognizes each statement's format on its own, whichever bank it comes from.
  • One transaction becomes a rule that applies to every similar one.
  • Role-based access per restaurant: management, administration, treasury and accounting each see something different.

Stack

  • Node.js
  • Express
  • PostgreSQL
  • React
  • Vite
  • Claude API
  • Docker
  • Vitest
  • Playwright

A Node and Express server on PostgreSQL with a React interface, all in Docker. It reads each statement format from its structure, without AI. Cash flow follows the payment date; the income statement follows the month of the expense. The month can't close until it's reconciled, and a closed month never reopens. The Claude advisor, for the accountant only, explains the month through tools; the numbers come from fixed calculations, never from the model.

11 · Experience

Experience

Three of these roles overlap: I'm CTO of KVRA Agency and of the company I founded, and the GPS contract ran alongside both.

  1. Feb 2026 – Present

    Agency

    In parallel

    CTO

    KVRA Agency

    I lead engineering at an AI, software and content agency, and I answer for the architecture, delivery and quality of every project.

    • I designed KVRA Orquesta, the agent system on Claude Code that KVRA's team uses every day. Agents plan, build and review; scripted gates decide when work is done.
    • I built a benchmark that assigns each job to the right model: 14 coding tasks with hidden tests and mutation testing, rerun with every new model.
    • I took CAA Suite to testing, Hogara to pre-launch, and Finai and D'Lamark's ticketing to demo; each project has the detail.
  2. Jun 2025 – Present

    Company I founded

    In parallel

    Founder, CTO & Tech Lead

    Global Technology & Innovation AI S.A.S.

    I founded the company and lead its engineering. Hey Eva, its voice AI companion, is the product I built.

    • Live on both stores, with 209 registered users and a 5.0 rating on the App Store in Colombia.
    • Python (FastAPI) backend on Google Cloud Run with the Gemini Live API: 240+ API routes and 3,500+ automated tests.
    • Flutter app with native Swift and Kotlin layers, and a C++ echo-cancellation layer I wrote.
  3. Jan 2026 – Sep 2026

    Contract

    In parallel

    Lead Developer (contract)

    GPS The Marketing Machine

    I wrote the proposal and led the build of uccontigo.edu.co for a private university in Barranquilla, through to the handover docs.

    • About 900 automated tests and complete handover documentation.
    • A click-to-edit CMS with live preview for non-technical staff; each publish rebuilds the site through a signed webhook.
    • I built UNI, an assistant on Gemini, and the enrollment hand-off to the university's CRM, with retries and a dead-letter queue.
  4. 2021 – 2025

    Studio I founded

    Founder & Freelance Web Developer

    e-Maker

    I founded e-Maker, my first startup, a web studio with a team of four, and built sites for small businesses in Colombia.

    • Sites for Kisses Bomb (an online store that ran in production for about a year), Reserva de Terranova, Mobix and Univista, and later internal tools for small businesses.
    • I built stores quickly by embedding Shopify or Ecwid into custom-designed sites, adding WhatsApp chat, Google Maps and an AI chatbot where clients needed them.

Projects I directed and reviewed, built by other engineers

  • Global Technology & Innovation AI S.A.S. · In production

    Hey Eva's website

    Built by one of my company's engineers; I directed it and handled all of its QA.

  • Castor SAS · Used daily for months

    Cphora

    An ERP and accounting system for Castor SAS, a furniture maker. Two KVRA engineers built it; I directed and reviewed the work.

12 · Contact

Let's work together

Most of my code is private work for clients and companies. I can share samples and walk you through it on request.GitHub

Barranquilla, Colombia · UTC−5 · Open to remote contract or full-time work