Siete años construyendo productos web y móviles — y dos antes rompiéndolos a propósito como ingeniero de automatización QA. Trabajo de punta a punta: React y React Native al frente, NestJS y Postgres detrás, Terraform debajo. Hoy en Globant para Los Angeles Times, tras dos años en Epic Games. En mi tiempo libre diseño y publico productos de punta a punta — el más reciente, una app marketplace en iOS y Android.
7 años full-stack2 años automatización QAponente en congreso intl.
Proyecto personal · arquitectura, desarrollo, despliegue
Un marketplace de dos lados que conecta entrenadores personales con clientes en Perú. Diseñé y construí todo el sistema: la app móvil, tres servicios backend, el panel de administración, el CMS y la infraestructura AWS debajo de todo.
▸Monorepo Nx en TypeScript: tres servicios NestJS (REST, admin, WebSocket), una app React Native / Expo, un panel Next.js y Strapi 5 como CMS headless.
▸~1,900 líneas de Terraform en staging y producción: ECS Fargate, RDS Multi-AZ, ElastiCache, S3 + CloudFront, ALB con WAF, SES, Route 53.
▸Notificaciones orientadas a eventos: Redis pub/sub → Socket.IO → Expo push, con badges en la app y entrega en segundo plano.
▸Aprobado en ambas tiendas, incluyendo moderación de fotos con Rekognition y cumplimiento INDECOPI (Ley 29571).
Web UI Developer · Globant para Epic Games (Fortnite)
Lideré el desarrollo frontend de una herramienta interna para validar cosméticos de Fortnite. Los detalles están bajo NDA; la forma del trabajo fue React, TypeScript y Redux en un monorepo con un backend NestJS al que también aporté.
▸Propuse e implementé un rediseño que redujo ~15% el tiempo de completar tareas.
▸Estabilidad y rendimiento: SSR para cargas ~12% más rápidas y correcciones de ciclo de vida para ~18% menos crashes.
▸Rehice los filtros con URLs compartibles — hoy el flujo por defecto del equipo QA.
▸Cobertura de pruebas, code review y documentación que redujeron ~10% el onboarding.
Portafolio de una sola página para Jean Maquera, director audiovisual en Lima, Perú. Reúne sus proyectos, su trabajo en redes y su fotografía en una página con scroll que él mismo actualiza, sin tocar código.
▸Astro entrega el sitio como HTML estático sin JavaScript de framework; React solo carga en la ruta /admin del Studio de Sanity.
▸Publicar en Sanity dispara un deploy hook de Vercel que reconstruye el sitio; seis consultas GROQ lo hidratan en un Promise.all durante el build.
▸Las celdas de la grilla de fotos se dimensionan según la proporción real de cada imagen, leída de los metadatos en Sanity.
▸Un único lightbox en JavaScript plano reproduce embeds de YouTube, Vimeo, TikTok e Instagram y videos crudos del CDN de Sanity.
SaaS multi-tenant para restaurantes en zonas turísticas del Perú. El dueño mantiene una sola carta en español y soles; el comensal escanea el QR de la mesa y la lee en su idioma y su moneda — sin app, sin registro.
▸Traducción diferida con caché por plato e idioma en Postgres: gpt-4o-mini en la primera solicitud, invalidada al cambiar el plato y gratis después.
▸Suscripciones con Culqi contra webhooks que contradicen ambas fuentes oficiales — no devuelven metadata, así que se resuelven por nuestro id de proveedor.
▸Aislamiento entre tenants con Row Level Security de PostgreSQL, políticas de rol operador aparte tras la consola de administración y todo auditado.
▸Corre gratis y sin conexión en desarrollo: Supabase en Docker, OpenAI detrás de un mock determinista y los pagos detrás de una interfaz BillingProvider.
Una PWA mobile-first para entrenadores personales independientes: gestionar clientes, registrar sesiones y emitir facturas. Reemplaza el flujo de hoja de cálculo y memoria por un libro contable acotado y auditable.
▸Migré un prototipo Express / Drizzle / SQLite a un monorepo Nx con NestJS, Prisma y PostgreSQL, compartiendo los tipos de dominio entre web y API.
▸PWA instalable con caché Workbox NetworkFirst: el registro sigue legible con el WiFi irregular del gimnasio y se actualiza en segundo plano.
▸Aislamiento por usuario a nivel de framework: un guard JWT global y un decorador @CurrentUser, así los ids de recursos nunca se confían desde el cliente.
▸Facturación del lado del servidor: PDF con pdfmake y exportación CSV, sobre un servicio que agrupa sesiones por cliente, empresa y rango de fechas.
Desarrollo de funcionalidades front-end en latimes.com: TypeScript y plantillas Handlebars en el CMS Graphene, ticket a ticket dentro de una base de código grande y establecida.
Ago 2024 — Abr 2026
Web UI Developer
Globant · Epic Games · Lima, Perú
Líder frontend en la herramienta de validación de cosméticos de Fortnite; también aporté a su backend NestJS.
Rediseño, SSR y pruebas medidos en tareas más rápidas, menos crashes y menos regresiones.
Oct 2020 — Ago 2024
Web UI Developer → Ing. Automatización → Analista QC
Globant · Nu Skin Enterprises · Lima, Perú
Desarrollé features y pruebas para la app VERA en React Native (85% de cobertura Jest en módulos nuevos) y su backend AWS Lambda / DynamoDB.
Responsable de la suite de automatización VERA en Appium + TestNG: 75% de cobertura, 45% menos regresión manual.
Abr — Jun 2020
Desarrollador Full-Stack Freelance
Glamar Peru Travel · Lima, Perú
SPA MERN para gestión de datos de clientes, con el esquema MongoDB Atlas detrás.
2016 — 2017
Prácticas · BI y Bases de Datos, Proyectos e Innovación
USMP & Banco de la Nación · Lima, Perú
Modelado de procesos, reportes SQL y una app web interna para programar sustentaciones.
2014 — 2019
Ing. de Computación y Sistemas
Universidad de San Martín de Porres · Lima
04Contacto
Abierto a trabajo freelance remoto y consultoría de arquitectura. El correo es la vía más rápida.