Abierto a pasantías y proyectos

Rafael El Shafie

Ingeniería de Software · IA Generativa · Backend

Estudiante de Ingeniería de Software. Desarrollo sistemas backend y aplicaciones con IA generativa, desde el levantamiento de requisitos hasta producción.

Último trabajo: Atlas, un asistente de IA que construí desde cero en BTG Pactual y que está en producción.

Río de Janeiro, Brasil

Foto de Rafael El Shafie
Curioso por los sistemas.
Pensando en quienes los usan.

Experiencia y formación

  • Tecnología e IA
  • Empresa Júnior · UFRJ
  • Ingeniería de Software
  • IA y Datos en la Nube

Ingeniería en formación.
Experiencia en la práctica.

Quién soy

Soy estudiante de Ingeniería de Software en Estácio, con foco en desarrollo backend e IA aplicada.

Mi primera experiencia desarrollando software en equipo fue en Fluxo Consultoria, la empresa júnior de la UFRJ. Allí también participé en un proyecto de levantamiento de requisitos y modelado de datos.

En mi primera pasantía en BTG Pactual, participé en Manhattan Real Estate, trabajando en el tratamiento de datos y en la construcción de un dashboard para el análisis de inmuebles. En la segunda, desarrollé desde cero Atlas, un asistente de IA para el onboarding bancario que llegó a producción y empezó a ser utilizado por el equipo.

Busco una pasantía en desarrollo backend o IA y estoy abierto a proyectos freelance.

Lo que aporto a un equipo

  1. Entender antes de implementar

    En Fluxo, participé en entrevistas y visitas técnicas para convertir la rutina de los usuarios en requisitos y modelos de datos.

  2. Compartir conocimiento

    Documento decisiones y organizo información para facilitar la colaboración y la continuidad del trabajo. También tengo experiencia orientando a compañeros y trainees.

  3. Experimentar con criterio

    En el asistente de IA de BTG, comparé enfoques y evalué la calidad de las respuestas y el consumo de IA para decidir qué cambios mantener.

Donde el aprendizaje
se convirtió en resultados.

Dos pasantías en BTG Pactual y una base construida en la empresa júnior de la UFRJ.

  1. BTG PactualPasante (Short Job) · IT Onboarding & IA

    jun 2026 – oct 2026

    Desarrollé desde cero y de principio a fin un asistente de IA para ayudar a los operadores de onboarding bancario con dudas operativas, evitando tickets innecesarios al equipo de soporte. En cuatro meses, la aplicación entró en producción y el equipo empezó a usarla.

    • Implementé búsqueda inteligente en la documentación con RAG y consultas en lenguaje natural a PostgreSQL y MySQL, con referencias a las fuentes y acceso de solo lectura a los datos.
    • Desarrollé el backend en Python/FastAPI y el frontend en React/TypeScript, con chat, historial, feedback y paneles administrativos.
    • Preparé el despliegue con Docker, Kubernetes y Azure DevOps, con observabilidad en Datadog, controles de consumo y costos de IA y evaluaciones automatizadas de las respuestas.

    Stack

    • Python
    • FastAPI
    • React
    • TypeScript
    • PostgreSQL
    • MySQL
    • RAG
    • Text-to-SQL
    • Docker
    • Kubernetes
    • Azure DevOps
    • Datadog

    Entrega y aprendizaje

    El asistente entró en producción en cuatro meses y el equipo empezó a usarlo.

    BTG Pactual

    Pasante (Short Job) · IT Onboarding & IA

    jun 2026 – oct 2026

    En cuatro meses, convertí la idea de Atlas, un asistente de IA para el onboarding bancario, en una aplicación en producción, integrando backend, interfaz, base de conocimiento, consultas controladas y funciones de administración. El equipo de soporte validó la solución y operaciones empezó a utilizarla gradualmente.

    El problema

    Trabajé en el soporte tecnológico del área de onboarding, que apoya a operaciones en la apertura de cuentas y la actualización de datos de clientes. Parte de los tickets recibidos eran dudas de uso u orientación operativa que no requerían una corrección técnica. La propuesta era reunir documentación, orientaciones e información autorizada en una conversación, para que operaciones resolviera sus dudas antes de abrir un ticket y el soporte se concentrara en los casos que requerían investigación.

    Mi responsabilidad

    Cuando llegué, existía la idea de la solución. Conduje el desarrollo de principio a fin, con la orientación de mi gestor: comprensión del dominio, base de conocimiento, arquitectura, backend, interfaz, integración con IA y bases de datos, pruebas, observabilidad y despliegue. Más adelante, otra pasante se sumó al proyecto, y participé en su orientación y en la organización del trabajo conjunto.

    Decisiones que marcaron la diferencia

    • Empecé con una base de documentos Markdown en lugar de una base de datos vectorial externa, para concentrar la primera entrega en estructurar el conocimiento y en el funcionamiento de la aplicación dentro del plazo.
    • Cuando las pruebas mostraron que los límites de contexto perjudicaban la calidad, y el consumo indicaba margen en el presupuesto, introduje una etapa en la que el modelo de lenguaje selecciona las fuentes relevantes entre los candidatos de la búsqueda por palabras clave. Fue uno de los principales avances del proyecto.
    • Probé delegar más etapas del procesamiento a la IA: el costo subió y la calidad bajó. Mantuve una combinación de lógica de aplicación, consultas estructuradas y generación de lenguaje, según lo que necesitaba cada etapa.
    • Para consultas recurrentes, creé plantillas SQL parametrizadas en lugar de generar una consulta nueva para cada pregunta, con ejecución de solo lectura en las bases operativas.

    Lo que entregué

    • Base de conocimiento estandarizada, con categorías, metadatos y referencias cruzadas, y verificaciones de consistencia para encontrar referencias rotas, duplicados y vacíos.
    • Chat con historial, feedback estructurado y respuestas mostradas de forma progresiva, además de paneles de administración, seguimiento del consumo y revisión del conocimiento.
    • Autenticación corporativa, control de acceso, cuidado con la información sensible en los logs, límites de consumo de IA y observabilidad de cada etapa en Datadog.
    • Pruebas de backend, interfaz e integración, conjuntos de preguntas de referencia para evaluar las respuestas y despliegue con Docker, Kubernetes y Azure DevOps, de desarrollo a producción.

    Resultado

    En una batería interna de casos, los ajustes en la selección de documentos y en la composición del contexto ampliaron de forma notable tanto las preguntas respondidas como las respuestas correctas. El equipo de atención del soporte validó el asistente con situaciones de la rutina, y se entregó en producción. Acompañé el inicio de su uso por parte de operaciones hasta el final de mi pasantía; la reducción de tickets evitables sigue siendo el objetivo de la solución.

    Lo que aprendí

    La calidad de una solución con IA depende de las decisiones alrededor del modelo: qué información recibe, cómo se consultan los datos, cómo se preserva el contexto y cómo se evalúan los resultados. También aprendí a documentar decisiones y organizar el trabajo para que otras personas pudieran contribuir en el mismo repositorio.

    Tecnologías

    • Python
    • FastAPI
    • React
    • TypeScript
    • PostgreSQL
    • MySQL
    • RAG
    • Text-to-SQL
    • Docker
    • Kubernetes
    • Azure DevOps
    • Datadog

    Proyectos de esta experiencia

    La visión técnica, con arquitectura y tecnologías, está en los detalles de cada proyecto.

    Relato de mi participación profesional. El código y los materiales internos no están disponibles en este portafolio.

  2. BTG PactualPasante (Summer Job) · IT Asset Management & Funds

    ene 2026 – feb 2026

    Desarrollé en pareja Manhattan Real Estate, una solución de datos para el análisis de inmuebles en Manhattan, y presenté el proyecto en inglés a quien lo solicitó.

    • Participé en la reestructuración del tratamiento de los datos y en la creación de la capa analítica en Databricks, integrando dos portales e identificando el mismo inmueble entre las fuentes por la dirección y las características de los anuncios.
    • Desarrollé reglas de puntuación y de monitoreo de anuncios que señalan oportunidades, variaciones de precio y cambios de estado, con notificaciones por Microsoft Teams.
    • Construí en Databricks el dashboard de la solución, con filtros, mapa y comparación del precio por pie cuadrado por zona.

    Stack

    • Python
    • SQL
    • Apache Spark
    • Pandas
    • Databricks
    • AWS
    • RabbitMQ
    • Scrum

    Entrega y aprendizaje

    Una visión única de los anuncios, presentada en inglés a quien solicitó el proyecto, con una recepción positiva.

    BTG Pactual

    Pasante (Summer Job) · IT Asset Management & Funds

    ene 2026 – feb 2026

    Participé, en pareja, en el desarrollo de Manhattan Real Estate, una solución de datos para apoyar el análisis de inmuebles en Manhattan. Trabajamos en las capas de tratamiento y análisis en Databricks, integrando fuentes, conciliando anuncios y construyendo reglas de puntuación y monitoreo, y yo construí el dashboard interactivo.

    La demanda

    La búsqueda de inmuebles en Manhattan se hacía manualmente en distintos portales, comparando anuncios, características y precios. El objetivo era reunir esa información en una visión organizada, que facilitara la exploración de los datos y señalara situaciones relevantes, como nuevos anuncios bien puntuados, diferencias de precio y cambios en la disponibilidad de los inmuebles.

    Mi contribución y el trabajo en pareja

    Desarrollé el proyecto con otro pasante, con la orientación del equipo. La ingesta de datos ya existía, junto con un borrador de la capa de tratamiento: reconstruimos gran parte de esa capa y desarrollamos la preparación para el análisis, las reglas de negocio y las salidas de la solución. Trabajábamos codo a codo, repartiendo las tareas según el conocimiento y el interés de cada uno y decidiendo juntos. Mi responsabilidad más individual fue el dashboard: lo construí en Databricks, inspirándome en el diseño de un dashboard que ya existía y agregando varios recursos. Después, un compañero llevó lo que yo había hecho a la herramienta de visualización propia del banco.

    Decisiones que marcaron la diferencia

    • Concentrar las fuentes: de los tres portales evaluados, nos quedamos con Zillow y StreetEasy, porque el tercero tenía información menos adecuada al alcance y perjudicaba los filtros.
    • Ajustar el alcance: refinamos las categorías de inmuebles según el interés de quien solicitó el proyecto, manteniendo el foco en Manhattan.
    • Conciliar sin perder confiabilidad: una fuente completaba a la otra cuando era posible, las divergencias seguían una regla de prioridad y los registros sin calidad suficiente quedaban fuera del análisis.
    • Seguir los cambios: guardamos registros anteriores para identificar inmuebles que salían de una fuente y volvían a anunciarse, comparando principalmente el precio.

    Resultado

    Presentamos el proyecto en inglés a quien lo solicitó, usando el dashboard para mostrar su funcionamiento y sus resultados. Recibimos elogios en la presentación, y la valoración positiva también llegó a nuestros gestores. La entrega centralizó información que antes se consultaba en fuentes distintas y facilitó la comparación. No seguí la evolución del proyecto después de la pasantía.

    Lo que aprendí

    Reforcé Python y SQL y tuve contacto práctico con Spark y Databricks, la arquitectura Medallion, recursos de AWS y un flujo de notificaciones con mensajería. Aprendí que más datos no siempre mejoran el análisis: fue necesario elegir fuentes, ajustar el alcance y tratar divergencias para llegar a una visión coherente. El trabajo en pareja y la presentación en inglés reforzaron mi capacidad de discutir decisiones y de explicar una solución técnica por su utilidad para el negocio.

    Tecnologías

    • Python
    • SQL
    • Apache Spark
    • Pandas
    • Databricks
    • AWS
    • RabbitMQ
    • Scrum

    Proyectos de esta experiencia

    La visión técnica, con arquitectura y tecnologías, está en los detalles de cada proyecto.

    Relato de mi participación profesional. El código y los materiales internos no están disponibles en este portafolio.

  3. Fluxo ConsultoriaEmpresa Júnior · UFRJConsultor de Proyectos

    ene 2024 – ago 2024

    Trabajé en tecnología, consultoría y operaciones internas de la empresa júnior, desde el backend construido en equipo en la capacitación hasta el modelado de datos para un cliente de la industria.

    • Desarrollé en equipo, como proyecto de capacitación en el onboarding, el backend de un sistema de gestión con Node.js, TypeScript, NestJS, PostgreSQL y Prisma.
    • Para reorganizar el sistema de una industria alimentaria, participé en entrevistas, en el mapeo de procesos, en el levantamiento de requisitos y en el modelado conceptual y lógico de los datos.
    • Participé en el grupo de mejora del área de tecnología, discutiendo cuellos de botella y la reorganización del equipo hacia una actuación full stack.
    • Apoyé las cuentas por pagar, los reembolsos y la conciliación bancaria, participé en el reclutamiento y orienté a trainees, resolviendo dudas y evaluando sus entregas.

    Stack

    • Node.js
    • TypeScript
    • NestJS
    • PostgreSQL
    • Prisma
    • Git
    • Scrum
    • Kanban

    Entrega y aprendizaje

    Del primer backend construido en equipo al modelado de datos para un cliente de la industria.

    Fluxo Consultoria

    Consultor de Proyectos

    ene 2024 – ago 2024

    En Fluxo, participé en actividades de tecnología, proyectos para clientes y operaciones internas. Contribuí a un backend de gestión desarrollado en equipo durante la capacitación y, después, al levantamiento de requisitos y el modelado de datos de una industria alimentaria. También participé en un grupo de mejora del área de tecnología, apoyé las cuentas por pagar y la conciliación bancaria y trabajé en reclutamiento y orientación de trainees.

    Aprender construyendo en equipo

    Entré en enero de 2024 y empecé por la capacitación de la empresa júnior. La entrega final era un software de gestión desarrollado en equipo: contribuí en distintas partes del backend, con Node.js, TypeScript, NestJS, PostgreSQL y Prisma. Fue mi primera experiencia construyendo software en conjunto y conociendo la organización de una aplicación backend. El proyecto se concluyó como actividad de formación, alrededor de marzo, y no llegó a usarse en operación.

    Consultoría: entender la rutina antes de modelar

    Después de la capacitación, pasé a trabajar como Consultor de Proyectos. En un trabajo para una industria alimentaria, el sistema de gestión había crecido poco a poco y acumulado funcionalidades que ya no se usaban. Participé en visitas a la fábrica, entrevistas y reuniones con empleados: preparé preguntas, registré respuestas y contribuí al mapeo de los procesos. A partir de eso, el equipo construyó desde cero la documentación y el modelado de datos, y participé en las distintas etapas. La implementación del nuevo sistema quedó a cargo de otra empresa.

    El área de tecnología por dentro

    Integré un grupo de trabajo, organizado en torno a un OKR, para discutir mejoras en el área de tecnología de Fluxo, analizando cuellos de botella y fortalezas y escuchando a otros miembros. Entre las medidas estuvieron la reorganización de la división entre backend y frontend hacia una actuación full stack, manteniendo el frente de diseño, y el apoyo a la formación técnica con cursos de Full Cycle. Esa participación amplió mi visión sobre cómo la organización de las personas y del aprendizaje influye en lo que un equipo logra construir.

    Rutinas administrativo-financieras

    En la Dirección Administrativo-Financiera, apoyé y ejecuté tareas de cuentas por pagar, incluidos reembolsos, y de conciliación bancaria, con reuniones diarias para seguir el avance y organizar los próximos pasos. Usé herramientas como Conta Azul, Asaas, Podio, Caju y Google Sheets. Fue mi contacto con las rutinas que sostienen el funcionamiento de una organización.

    Reclutamiento y orientación

    Participé en entrevistas y dinámicas del proceso de selección, haciendo preguntas, acompañando a los candidatos y registrando observaciones a partir de guiones y planillas de evaluación. Después, pasé a orientar a nuevos trainees, resolviendo dudas sobre las actividades y la empresa y evaluando sus entregas: una forma de compartir lo que había aprendido en mi propia formación.

    Lo que me llevé de esta experiencia

    En ocho meses, con frentes que muchas veces ocurrían al mismo tiempo, acerqué desarrollo de software, necesidades de usuarios, procesos internos y colaboración. El backend de la capacitación fue mi primera construcción en equipo; el proyecto de la industria mostró la importancia de investigar la rutina antes de definir un sistema; y las actividades internas ampliaron mi contacto con distintas responsabilidades dentro de una organización.

    Tecnologías

    • Node.js
    • TypeScript
    • NestJS
    • PostgreSQL
    • Prisma
    • Git
    • Scrum
    • Kanban

    Proyectos de esta experiencia

    La visión técnica, con arquitectura y tecnologías, está en los detalles de cada proyecto.

    Relato de mi participación profesional. El código y los materiales internos no están disponibles en este portafolio.

Ideas, contexto
y código.

De lo que ya entregué en producción a lo que estoy construyendo ahora: proyectos profesionales y personales en backend, IA y datos.

  • Proyecto personalPublicado

    Portafolio profesional

    Este sitio: portafolio estático en tres idiomas, con tema claro y oscuro y pruebas automatizadas en cada cambio, incluidas verificaciones de accesibilidad con axe y navegación por teclado.

    • Astro
    • TypeScript
    • HTML
    • CSS
    • Playwright

    Proyecto personal · Publicado

    Portafolio profesional

    Este sitio es un proyecto: un portafolio estático que reescribí desde cero a partir de una auditoría de la versión anterior. El código es público, y todo lo descrito aquí se puede comprobar en el propio sitio.

    Por qué lo reescribí

    La versión anterior, en HTML y CSS puro, tenía errores visibles, contraste por debajo del mínimo y textos fijos en el código. La auditoría mostró que tema, idiomas y contenido como datos tocarían casi todas las líneas, así que la reescribí aprovechando el contenido y la identidad visual.

    Lo que encuentra el visitante

    • Tres idiomas, cada uno con su propia ruta y su propio HTML: indexable y sin textos que cambian después de cargar.
    • Tema claro y oscuro: sigue el sistema y guarda la elección, sin parpadeo al cargar.
    • Filtros de proyectos, pestañas de habilidades, ventanas de detalle y la sección actual marcada en el menú.
    • Sin JavaScript, nada se rompe: las pestañas se convierten en bloques y aparecen todos los proyectos.

    Decisiones técnicas

    • Astro con salida estática: cero JavaScript por defecto, solo scripts pequeños donde hay interacción.
    • Contenido en YAML validado por schema: un campo o una traducción que falte rompe el build, no la producción.
    • Colores como tokens con light-dark(): cada color se declara una sola vez para los dos temas.
    • Componentes nativos y accesibles: <dialog> en las ventanas, <details> en el acordeón y pestañas según el patrón del W3C.

    Cómo lo verifico

    • Pruebas Playwright de comportamiento, teclado, idiomas y diseño en cada push, en los dos temas.
    • axe con las reglas WCAG 2.2 A y AA, incluidos las ventanas y el menú del celular. Las pruebas automáticas cubren solo parte de los criterios: la evaluación manual con lector de pantalla sigue pendiente.
    • Lighthouse en el CI con nota mínima: hoy, 100 en las cuatro categorías, en celular y escritorio.
    • Una verificación en el build que bloquea la publicación si un currículum tiene datos personales que no deben publicarse.

    Cómo se construyó

    Usé Claude Code como compañero de programación. Yo definía qué construir, revisaba cada cambio y decidía qué entraba; las pruebas del CI comprueban el resultado en cada push.

    Tecnologías en detalle

    Base
    Astro · TypeScript · Content collections · Zod
    Interfaz
    HTML · CSS · light-dark() · <dialog>
    Imágenes y SEO
    astro:assets · satori · sharp · Sitemap · hreflang
    Calidad
    Playwright · axe-core · Lighthouse
    Despliegue
    GitHub Actions · Vercel
  • Experiencia profesional · Fluxo ConsultoriaEntregado

    Modelado de sistema industrial

    Levantamiento de requisitos y modelado de datos para reorganizar el sistema de gestión de una industria alimentaria, conectando entrevistas y mapeo de procesos con modelos y necesidades documentadas.

    • Ingeniería de requisitos
    • Entrevistas con usuarios
    • Mapeo de procesos
    • Modelado conceptual
    • Modelado lógico

    Fluxo Consultoria · Entregado

    Modelado de sistema industrial

    Proyecto de consultoría desarrollado en equipo en Fluxo Consultoria para una industria alimentaria, a partir de abril de 2024. La entrega fue de análisis, documentación y modelado; la implementación del nuevo sistema quedó a cargo de otra empresa.

    El problema

    El sistema existente había acumulado funcionalidades con el tiempo y necesitaba revisar su organización. Parte de los recursos ya no se usaba, y el trabajo exigía entender cómo operaban realmente los empleados antes de proponer una nueva estructura. El objetivo fue identificar las necesidades relevantes, reorganizar la representación de la información y documentar una base para el nuevo sistema.

    Cómo se hizo el trabajo

    1. Visitas y entrevistascon quienes usan el sistema
    2. Procesosmapeo de la rutina de trabajo
    3. Requisitosnecesidades e historias de usuario
    4. Modelo conceptualelementos y relaciones del negocio
    5. Modelo lógicoentidades, atributos y claves

    Áreas cubiertas

    • Inventario
    • Producción
    • Ventas
    • Facturación
    • Personas
    • Finanzas
    Diagrama ilustrativo · del levantamiento al modelo de datos

    Participé en visitas a la fábrica, entrevistas técnicas, conversaciones y reuniones con empleados, preparando preguntas, registrando las respuestas y contribuyendo al mapeo de los procesos. Con base en ese levantamiento, construimos desde cero la documentación y el modelado, relacionando lo que escuchamos en las entrevistas con los conceptos, relaciones y funcionalidades que el sistema debía contemplar.

    Entregas

    • Modelado conceptual de los elementos y relaciones del negocio.
    • Modelado lógico con entidades, atributos, claves y relaciones.
    • Historias de usuario para organizar las necesidades funcionales.
    • Documentación de la información de distintos frentes: inventario, producción, comercial, facturación, personas y finanzas.

    Aprendizaje

    El proyecto reforzó la importancia de escuchar a los usuarios y entender sus procesos antes de proponer funcionalidades o estructuras de datos. También amplió mi experiencia en convertir lo que surge en las entrevistas en requisitos y modelos capaces de orientar una etapa posterior de desarrollo.

    Tecnologías en detalle

    Levantamiento
    Visitas técnicas · Entrevistas con usuarios · Mapeo de procesos
    Modelado de datos
    Modelado conceptual · Modelado lógico
    Requisitos
    Ingeniería de requisitos · Historias de usuario · Documentación
    Áreas cubiertas
    Inventario · Producción · Comercial · Facturación · Personas · Finanzas

    Experiencia relacionada

    Las responsabilidades, decisiones y aprendizajes están en el relato de la experiencia.

  • Proyecto de capacitación · Fluxo ConsultoriaEntregado

    Backend de sistema de gestión

    Backend de un sistema de gestión desarrollado en equipo durante la capacitación en Fluxo Consultoria, con registros de usuarios, cuentas financieras, productos, pedidos y eventos.

    • NestJS
    • TypeScript
    • PostgreSQL
    • Prisma
    • JWT

    Fluxo Consultoria · Entregado

    Backend de sistema de gestión

    Proyecto de capacitación desarrollado en equipo durante el onboarding en Fluxo Consultoria, concluido alrededor de marzo de 2024. Fue una entrega de formación: la aplicación no llegó a probarse, integrarse ni usarse en operación, y el código no es público.

    Objetivo

    Construir el backend de un software de gestión como entrega final de la capacitación, poniendo en práctica conceptos de desarrollo backend y de trabajo en equipo. Contribuí en distintas partes de la aplicación, junto con los demás integrantes.

    Qué contempla el código

    La aplicación se organizó en módulos, controllers, services y DTOs, con acceso a los datos mediante Prisma. El código entregado contempla:

    • Registro y mantenimiento de usuarios, empleados y gestores.
    • Registro, consulta, actualización y eliminación de cuentas financieras.
    • Gestión de productos y pedidos, con relaciones entre los registros.
    • Registro y mantenimiento de eventos.
    • Login con emisión de token JWT y verificación de permisos por perfil.
    • Contraseñas guardadas con hash (bcrypt).
    • Documentación de las operaciones con Swagger/OpenAPI.
    • Modelado relacional, con la evolución de la base de datos mediante migrations.

    Aprendizaje

    El principal valor fue practicar el desarrollo de un backend en equipo: la organización de la aplicación, la persistencia relacional y los mecanismos de autenticación y de documentación de la API.

    Tecnologías en detalle

    Backend
    Node.js · TypeScript · NestJS · APIs REST
    Organización del código
    Módulos · Controllers · Services · DTOs
    Persistencia
    PostgreSQL · SQL · Prisma · Migrations
    Autenticación
    JWT · bcrypt · Permisos por perfil
    Documentación y colaboración
    Swagger/OpenAPI · Git

    Experiencia relacionada

    Las responsabilidades, decisiones y aprendizajes están en el relato de la experiencia.

  • Proyecto personalEn curso

    Liga Familiar Gamificada

    Infraestructura lista · primera funcionalidad en desarrollo

    Gestor de tareas domésticas al estilo RPG: cada miembro de la familia gana puntos al completar tareas y sigue su evolución en un marcador. Funciona localmente en el Wi-Fi de la casa, sin costo.

    • Java 21
    • Spring Boot
    • Spring Data JPA
    • PostgreSQL
    • Docker Compose

    Proyecto personal · En curso

    Liga Familiar Gamificada

    Infraestructura lista · primera funcionalidad en desarrollo

    Un gestor de tareas domésticas al estilo RPG, hecho para que los cuatro miembros de mi familia lo usen de verdad y den feedback. Todo funciona localmente en el Wi-Fi de la casa, sin costo, y cada decisión importante queda registrada en un ADR.

    Por qué existe

    Dos motivos con el mismo peso. El uso real: cuatro personas van a usar el sistema en casa y decir qué funciona. Y el portafolio de backend: mostrar software funcionando, con decisiones bien justificadas, Clean Architecture y Java moderno, lo que dice más que una arquitectura elaborada que nadie usa.

    Lo que ya funciona

    • Docker Compose con PostgreSQL (healthcheck, volumen con nombre y credenciales en un .env fuera de Git), y Spring Boot solo arranca cuando la base de datos está saludable.
    • Dockerfile con Java 21 (Eclipse Temurin).
    • ADR-001: despliegue local con costo cero, en Windows para el MVP y en una Raspberry Pi después.
    • ADR-002: sin autenticación al principio; los miembros se identifican con un enum.
    • ADR-003: un modelo de tareas en tres capas, estacionado hasta que haya datos reales de uso.

    La porción actual

    Registrar que un miembro completó una tarea y ver subir la puntuación en la pantalla, pasando por la base de datos, el dominio, el endpoint y la interfaz. Antes de la primera migration con Flyway, falta cerrar una decisión de diseño: con los miembros en un enum, ¿qué va a la tabla? Y, al completar una tarea, ¿el sistema guarda el saldo actualizado o el evento que generó el punto?

    Próximas porciones

    Cada porción termina en algo que la familia puede usar, y el plan debe cambiar con el uso real después de la primera:

    • Catálogo de tareas con su valor en puntos.
    • Ranking entre los miembros, con filtro por período.
    • Niveles y progresión visible.
    • Tareas recurrentes y reinicio de períodos con @Scheduled.
    • Ganadores de la semana, del mes y del año, con historial.
    • Migración a la Raspberry Pi con el mismo docker-compose.yml, sin cambios.
    • README, diagrama del modelo de datos en Mermaid y ADRs consolidados.

    Tecnologías en detalle

    Backend
    Java 21 · Spring Boot 3 · Spring Data JPA · @Scheduled · Maven
    Datos
    PostgreSQL · Flyway
    Interfaz
    HTML5 · Tailwind CSS · Alpine.js
    Infraestructura
    Docker · Docker Compose · Windows · Raspberry Pi
    Decisiones
    ADRs · Clean Architecture

Herramientas para
resolver problemas.

Experiencia práctica en backend, IA y datos, con conocimientos complementarios en interfaces, pruebas e infraestructura.

Backend

Del requisito a la API.

Desarrollé APIs y reglas de negocio con Python y FastAPI en BTG Pactual y contribuí a un backend en NestJS en la capacitación de Fluxo. Hoy profundizo mis conocimientos en Java y Spring Boot.

Lenguajes
  • Python
  • TypeScript
  • JavaScript
  • SQL
  • Java(en formación)
Frameworks y runtimes
  • FastAPI
  • Node.js
  • NestJS
  • Spring Boot · Spring Data(en formación)
Persistencia
  • SQLAlchemy
  • Alembic
  • Prisma
Integración
  • APIs REST
  • RabbitMQ
Requisitos y modelado
  • Ingeniería de requisitos
  • Modelado de datos

IA aplicada

IA conectada a un problema real.

RAG y Text-to-SQL en producción en el asistente de onboarding de BTG. Entrenamiento y despliegue de modelos en Amazon SageMaker y uso de Bedrock en el curso de la PUC-Rio.

Aplicaciones
  • LLMs
  • RAG
  • Text-to-SQL
Machine learning
  • scikit-learn
  • LightGBM
AWS
  • Amazon SageMaker
  • Amazon Bedrock

Datos

Datos que ayudan a decidir.

En el proyecto inmobiliario de BTG, trabajé en el tratamiento y la conciliación de datos con Spark y Databricks. En el asistente de IA, integré consultas a PostgreSQL y MySQL.

Bases de datos
  • PostgreSQL
  • MySQL
Procesamiento
  • Pandas
  • NumPy
  • Apache Spark
  • Databricks
Análisis
  • Power BI
  • Excel

Frontend

Interfaces para quienes las usan.

Frontend en React y TypeScript del asistente de IA de BTG: chat, historial, feedback y paneles administrativos. También construí este portafolio en Astro, con tres idiomas, tema claro y oscuro y accesibilidad probada en cada cambio.

Base web
  • TypeScript
  • JavaScript
  • HTML5
  • CSS3
  • Astro
Ecosistema React
  • React
  • TanStack Query
  • Zustand
  • Vite

Cloud y DevOps

Del código a producción.

Preparé el despliegue del asistente de IA con Docker, Kubernetes y Azure DevOps, incluido el monitoreo en Datadog. Utilicé servicios de AWS en el proyecto inmobiliario y en las actividades prácticas de la PUC-Rio.

Contenedores
  • Docker
  • Kubernetes
Cloud
  • AWS (S3, EC2, RDS, Secrets Manager, ECR)
Despliegue y operación
  • Azure DevOps
  • Git/GitHub
  • GitHub Actions
  • Vercel
  • Datadog

Calidad

Confianza para cambiar.

Desarrollé pruebas automatizadas de backend, interfaz e integración. Para el asistente de IA, usé preguntas de referencia para evaluar las respuestas y seguir el efecto de los cambios.

Python
  • pytest
  • Hypothesis
JavaScript
  • Vitest
  • Playwright
Accesibilidad y rendimiento
  • WCAG 2.2
  • axe-core
  • Lighthouse

Aprender. Construir.
Repetir.

Mi formación, los cursos que completé y lo que estoy estudiando ahora.

En evolución

  1. Backend con Java

    Java, programación orientada a objetos y Spring Boot en el bootcamp DIO · Itaú.

  2. Ingeniería de IA

    Agentes y sistemas multiagente con LangGraph, protocolos como MCP y observabilidad de aplicaciones con LLMs.

  3. Inglés

    Estudio continuo en Kumon, con foco en lectura, gramática y ampliación de vocabulario.

Formación y cursos

  1. Licenciatura en Ingeniería de Software

    Universidade Estácio de Sá

    ene 2025 – dic 2028

  2. Inteligencia Artificial y Ciencia de Datos en la Nube: AWS en la Práctica

    PUC-Rio

    abr 2026 – sept 2026

  3. Santander Jornada Tech AWS

    Santander Open Academy · AWS

    abr 2026 – actualidad

  4. Bootcamp de Java, Spring Boot e IA

    DIO · Itaú

    oct 2026 – actualidad

  5. Inglés

    Kumon

    en curso

¿Construimos
algo útil?

¿Quieres hablar sobre una vacante o un proyecto? La forma más rápida de contactarme es por correo electrónico o LinkedIn.