Web Development

I build fast, accessible web apps with React, Next.js, and TypeScript. The kind of front end that loads quickly, holds up on a cheap phone, and does not fall apart the next time the design changes.

I care about the details most people skip: real loading and empty states, keyboard navigation, sensible error handling. And because I design as well as build, you are not handing my work off to a separate designer and hoping it survives the translation.

Start a web project

Backend Systems

I design and build the APIs and services your product runs on, mostly with Node.js, TypeScript, and Postgres, reaching for Java/Spring or Python when the job calls for it.

The goal is boring infrastructure: predictable, well-tested, and cheap to run. I would rather spend an extra day on the schema and the tests up front than spend a month firefighting in production. When I hand something off, your team gets documentation and code they can actually maintain.

Talk through your backend

Mobile Applications

I build cross-platform iOS and Android apps with React Native, so you ship and maintain one codebase instead of two. It is a strong fit when you want to move fast and your app is not pushing the limits of the hardware.

When a feature genuinely needs native code, I will tell you, rather than forcing everything through one framework to keep a tidy story. The right tool beats the convenient one.

Plan a mobile app

AI Solutions

I build AI features that ship, not demos. Mostly retrieval (RAG), embeddings, and LLM integrations on top of your own data, using OpenAI, Anthropic, or Gemini depending on what the job needs. I have written up the RAG and PgVector stack I reach for on the blog.

The honest part: I will push back when AI is not the right tool. A good chunk of "add AI" requests are better solved with plain code, and saying so up front saves everyone money.

Scope an AI feature

How we'd work together

Four steps that take an idea from a first call to something running in production.

01

Discovery & Planning

We start with a free 30-minute call about your goals, timeline, and budget. You get back a written proposal with clear milestones, and an honest note on anything I think might grow.

02

Design & Architecture

I sketch the architecture and design the key screens, so you can see what we're building before I write the code that builds it. Cheaper to change your mind here than later.

03

Build & Iterate

Development runs in weekly sprints with live demos. You see real progress every week and steer as we go, instead of waiting months for one big reveal.

04

Launch & Support

Once it's tested, we ship. You get a warranty window for bug fixes and the option of a maintenance retainer if you'd like me to keep an eye on things.

Frequently Asked Questions

How much does a typical project cost?

It depends on scope and complexity. As a rough guide, a standard web app tends to land between $5,000 and $25,000, and a focused AI integration between $3,000 and $15,000. You get a written estimate after a free first call, and you own the source code and documentation either way.

What is your typical response time?

I reply to new inquiries within a day. On active projects I share progress regularly and stay reachable for quick questions on whatever channel you prefer, whether that is Slack, email, or a short call.

Do you work with international clients?

Yes, I work with clients worldwide. I am fluent in English and Spanish and comfortable working across time zones, so I adapt to hours that make the back-and-forth easy on your side.

What technologies do you specialize in?

Day to day: React, Next.js, TypeScript, Node.js, Python, and the AI stack around RAG and embeddings. I also go deep on Drupal, Java/Spring, and Rust when a project needs them. I choose the technology that fits the problem, not the one I feel like using.

Do you offer ongoing support after project delivery?

Yes. I offer maintenance retainers, a warranty window for bug fixes, and ongoing support. Most clients stay on for iterative improvements after launch, but the goal is always code your own team could run without me.

How do you handle project milestones and payments?

I work in milestones: discovery, design, development, testing, delivery. Payments are tied to those milestones, so you always know what you are paying for and we stay aligned on what comes next.