Creating Functional Software Products

Where I've worked

PX

IT Support Engineer

PEMEX · Altamira · April 2025 – Present

A year and a half of automating IT operations with PowerShell. I ended up building an internal platform that the operators use.

  • Automated ticket creation with Playwright. It fills the form, attaches the evidence and closes the ticket.
  • Built remote Windows 11 upgrades and MECM remediation, with clear pass or fail result for each run.
  • Wrote the audit scripts that generate evidence and maintenance checklists for each computer.
  • Built a terminal launcher in Go that runs everything as background jobs, so operators can queue work and keep going.

I treat it like any other product. It has users, tests and documented decisions, and it took over the manual steps.

  • PowerShell
  • Go
  • TypeScript
  • Playwright
  • Python
Internal tool, private.
RD

Software Engineer

Remine – DensityLabs · Remote · March 2022 – March 2025

Three years on the team behind a real-estate management system, working on both the API and the interface.

  • Built and maintained the REST APIs behind it, in PHP and Node.js on PostgreSQL.
  • Redesigned and refactored the data upload module. It got faster and more reliable.
  • Designed the S3 storage layout and access patterns for user-generated content.
  • Built UI in a custom VanillaJS framework and in React, including a client-side cache that keeps preferences and interface state across sessions.

I also worked on the GitLab CI/CD pipelines for build, test and deploy, fixed more than 50 production issues, and reviewed code with people across teams.

  • PHP
  • Node.js
  • PostgreSQL
  • React
  • AWS S3
  • GitLab CI

Three things I built on the side this year

VerseGuard Today screen with a one-minute verse practice
VerseGuard full-recall review round

VerseGuard

A calm Bible-verse memorization app built on spaced repetition.

The part I'm proud of is the screen-time guard. You pick the apps that pull you away, and they stay blocked until you finish a practice round. It runs on Apple's Family Controls and Device Activity frameworks, with a native extension bridged into Expo.

Offline Bible, learning and review flows, streaks by practice day, subscriptions through RevenueCat.

  • Expo
  • Swift extension
  • RevenueCat
  • Zustand
On the App Store
PuertoLoquerón balances and expenses screen
PuertoLoquerón settle-up screen

PuertoLoquerón

A map-first trip companion for four friends in Puerto Escondido.

Share a TikTok into the app and a Supabase Edge Function reads the places it mentions. Each one is checked against Google Places, and the verified ones are pinned on the shared map. Every place keeps the post it came from and who recommended it.

Expenses split four ways with a settle-up that tells each person exactly who to pay, and a daily reminder until they do.

  • Supabase
  • Google Places
  • Maps
  • Expo
Built for one trip, September 2026. Not on the stores.
Recibidor TI new reception form
Recibidor TI device record with secure-erase status
RT

Recibidor TI

An intake log for a company receiving three hundred rented laptops back from staff.

A React web console assigns work, prints receipts and exports the reconciliation. On the floor, four technicians use the mobile app to open a folio per device, match expected serials against what arrived, record missing parts, and attach photo evidence of the secure erase.

The domain lives in one shared package with a Spanish glossary mapped to a single English identifier per term, so the console and the mobile app never disagree about what a Reception is. Both run on the same Supabase backend.

  • React + Vite console
  • Supabase
  • Monorepo
  • Expo
Internal tool, private.

What I work with

Earlier work

Projects from 2021. What a nostalgia trip, time flies.

Say hello

Open to full-time roles and freelance work, on the web, on mobile, or on the backend.