2 apps de iPhone en el App Store ·6 en vivo en la web ·1 en TestFlight2 apps de iPhone en el App Store ·6 proyectos en vivo en la web ·1 juego en TestFlight
Amazon de 2021 a 2023 y Coachable desde mayo de 2023. El CV de una página tiene los mismos datos.
Coachable
Ingeniero de software
Desde mayo de 2023
Nueva York, NY
Coachable es una startup de educación que ayuda a ingenieros a conseguir puestos en grandes empresas de tecnología con preparación profesional y coaching apoyados en software.
95%
tasa de colocación
300%+
crecimiento interanual de usuarios
3x
reportes más rápidos
50%
más eficiencia entre coaches y estudiantes
Diseñé y escalé la plataforma de coaching y los sistemas de datos de la empresa, con más de 80 estudiantes activos y una tasa de colocación sostenida del 95% en puestos en Google, Amazon, Meta, Microsoft y startups.
Diseñé pipelines de analítica para medir el rendimiento de los estudiantes, los resultados de contratación y datos del currículo; los reportes salen 3x más rápido y la precisión de los datos mejoró un 40%.
Construí y mantuve herramientas internas en Python, React y AWS, incluidos pipelines con LLM que generan y entregan currículums, y mejoré en un 50% la eficiencia entre coaches y estudiantes.
Entrené a más de 200 estudiantes en estructuras de datos, algoritmos y resolución de problemas; los guié en más de 1,000 entrevistas de práctica que terminaron en cientos de ofertas.
Trabajé con el equipo fundador para escalar las operaciones y contribuí a un crecimiento de usuarios de más del 300% interanual.
Amazon
Ingeniero de desarrollo de software, equipo Alexa Data Depot
Julio de 2021 a enero de 2023
Cambridge, MA
El equipo Alexa Data Depot maneja pipelines de datos sensibles y de alto volumen que alimentan las experiencias de clientes de Alexa y su analítica.
700M+
objetos en los flujos de borrado y retención
99.9%
SLA en más de 300 tickets de guardia
40%
recuperación de pipelines más rápida
0
violaciones de privacidad
Dirigí los flujos de borrado y retención de datos sobre más de 700M de objetos (más de 55 PB) en buckets de S3 distribuidos, con $1.3M de ahorro por trimestre gracias a políticas de ciclo de vida optimizadas y automatización en Python y Java.
Fui el líder de seguridad del equipo: identifiqué y resolví más de 80 riesgos de seguridad (más de 25 de alto riesgo y 2 críticos escalados a toda la organización) con endurecimiento de IAM, cifrado obligatorio y cumplimiento de privacidad.
Fui responsable del job de borrado de datos que asegura el cumplimiento de GDPR y CCPA en datasets de escala de petabytes, junto a los equipos de privacidad y legal, con cero violaciones.
Fui responsable de la rotación mensual de guardia y resolví más de 300 tickets con un SLA del 99.9%.
Trabajé con equipos de distintas áreas para mejorar la observabilidad de los datos y reducir en un 40% el tiempo de recuperación de los pipelines.
Educación
Universidad de Harvard
A.B. en Computer Science
mayo de 2021
Concentración secundaria en Ethnicity, Migration and Rights
Spanish Citation
Honores
Forbes 30 Under 30 Scholar ·HSF Scholar ·Tuskegee Airmen Scholar ·NSA Scholar ·Dominican Day Parade Scholar
Investigación
Sistema automático de corrección para cursos de CS, investigación con LLVM
University of Illinois Urbana-Champaign
Desarrollé un sistema de corrección y pistas automáticas para cursos grandes de CS con LLVM, C/C++ y Python, que multiplicó por 10 la velocidad de corrección.
Fui uno de unos 40 estudiantes seleccionados en todo el país para el programa de investigación DREU, trabajando directamente con estudiantes de posgrado y profesores.
Sistemas distribuidos, pipelines de datos, endurecimiento de seguridad, desarrollo full-stack, APIs REST, integración de LLM (Claude API), desarrollo acelerado con IA (Claude Code, Codex, Cursor)
Seis proyectos que hice y mantengo por mi cuenta. Cada uno está en vivo en la web o en el App Store, y cada uno tiene su caso de estudio.
Sistemas backend
En vivo ledgerline.adelsonaguasvivas.workers.dev
Ledgerline
Una API HTTP en Cloudflare Workers para streams de eventos de solo anexar: appends exactamente una vez, orden sin huecos y una cadena de hashes SHA-256 que delata los cambios a la historia.
Fig. 1El camino de un append
Cliente
WorkerHono
Durable Objectuno por stream
D1modelo de lectura
Cliente a Worker 01POST /v1/streams/:id/events con un Idempotency-Key
Worker 02Llave, límite y dueño La llave de API se busca por su hash SHA-256, su token bucket gasta un token (429 con Retry-After si está vacío) y el stream tiene que ser de esa llave.
Worker a Durable Object 03append(payload, key) enrutado con idFromName(streamId)
Durable Object 04blockConcurrencyWhile Una llave conocida con el mismo cuerpo devuelve el {seq, hash} original; otro cuerpo es un conflicto. Si no, seq + 1 y el siguiente hash.
Durable Object 05Una sola escritura atómica El evento, el registro de la llave, el rollup del minuto, la cabeza del stream y la alarma del outbox. Todo o nada.
Durable Object a Worker 06{seq, hash}
Worker a D1 07INSERT OR IGNORE El camino rápido, para que una lectura justo después de escribir casi siempre lo vea. Si falla, el cliente igual recibe su respuesta.
Worker a Cliente 08201 {seq, hash} Un reintento recibe 200 con Idempotent-Replay: true; otro cuerpo recibe 422
Durable Object a D1 09alarm(): barrido del outbox Unos 5 s después inserta solo las filas que le faltan a D1, y reintenta cada 30 s mientras D1 falle.
Cadena de hashes
génesisSHA-256("ledgerline:v2:" + streamId)
h1evento 1
h2evento 2
h3evento 3
hn = SHA-256(hn-1 | JSON canónico RFC 8785 | n)
/verify recalcula la cadena desde el génesis, revisando cada seq, prevHash y hash, y después compara el resultado con la cabeza guardada, así que una cola borrada también falla.
Un solo motor de reglas en TypeScript, de unas 1,240 líneas y sin dependencias, corre en el servidor y en cada cliente: la web, la app de iPhone y iMessage.
El servidor vuelve a pasar cada jugada por el motor y rechaza una escritura vieja con HTTP 409.
Una mesa sin actividad vuelve a pedir su estado cada 10 segundos, así que una actualización perdida no congela la partida.
Consola en vivo: un cambio entre dos equipos verificado regla por regla mientras cambia el efectivo.
the-cap-room.vercel.app/trade
App web · tope salarial de la NBA
En vivo the-cap-room.vercel.app
The Cap Room
Una consola para trabajar con el tope salarial de la NBA: hojas de tope, comparación de jugadores y cambios entre dos equipos verificados contra el CBA de 2023 con el cálculo de cada regla.
44
pruebas del motor, con cada línea de apron e impuesto probada un dólar por encima
Ledgerline422 para un Idempotency-Key reusado, hash RFC 8785 como versión 2 de la cadena, un outbox para el modelo de lectura en D1 y una página nueva con el demo de alteración al frente.
The Cap RoomRediseñada en Next.js 16 y React 19: un tablero de la liga que cabe en un teléfono, cambios de prueba a un clic y búsqueda de jugadores con Cmd-K.
CapiLas partidas ya no se traban por una actualización perdida: resincronización cada 10 segundos, retransmisión desde el servidor y una suite de 960 finales con semilla.
Una app de iPhone para Hype Room, una tienda de tenis y ropa urbana: un sorteo semanal gratis, el catálogo de la tienda y apartados para recoger en la tienda. Demo previa al lanzamiento con datos de muestra.
Cada sorteo semanal tiene un id con fecha, y una prueba recorre cada hora de tres semanas, incluidos los dos cambios de horario, para verificar que nunca haya dos sorteos abiertos a la vez.
Los códigos de apartado no usan 0, O, 1, I ni L para que se lean fácil en el mostrador, y los apartados vencen a las 48 horas.
Estudié Computer Science en Harvard y después pasé un año y medio en Amazon construyendo sistemas de borrado y retención de datos para Alexa sobre más de 55 petabytes. Hoy estoy en Coachable, una startup de educación, donde construyo la plataforma de coaching, los pipelines de analítica y herramientas internas.
Soy dominicano y crecí entre el español y el inglés. Eso se nota en lo que hago: interfaces bilingües desde el principio y proyectos con un pedazo de casa, del dominó y la pelota al Malecón y el conuco.
Construyo fuera del trabajo porque me gusta llevar una idea por todo el ciclo del producto, desde el motor y el modelo de datos hasta las pantallas que la gente usa. Entre lo más reciente hay dos apps de iPhone y varios juegos de navegador.