gerardo.mm
informática empresarial · liberia, cr--:--hora local

Diseño y construyo software que resiste producción.

Informático Empresarial Full Stack. Construyo desde ERPs con arquitectura hexagonal hasta landings con Lighthouse 100/100. Escribo código que otros ingenieros pueden mantener sin necesitar traducción.

stack
Python · TS
foco
Backend · Full Stack
base
Costa Rica
sobre mí

Autodidacta con criterio de ingeniería, no solo tecleador de código.

Me gradué de Informática Empresarial en la UCR en abril de 2025. Antes de eso ya había construido un ERP completo por mi cuenta, hecho pasantía en Funread y firmado contrato con 4thewords. La carrera fue el papel; los proyectos fueron el aprendizaje real.

Trabajo bien cuando el problema es feo: sistemas legados, migraciones, race conditions, bugs viejos que nadie quiere tocar. Antes de escribir código intento entender qué se está intentando lograr — la mitad de las soluciones desaparecen cuando el problema queda bien planteado.

Estoy abierto a empleo fijo y a tomar proyectos freelance en paralelo. Ambos formatos me interesan por razones distintas y no compiten entre sí.

how_i_work.py
1# what.i.do
2def build(problem):
3 domain = model(problem) # DDD primero
4 contracts = clarify(domain) # interfaces claras
5 code = implement(contracts)
6 return ship(code, with_tests=True)

// no es un lema. es literalmente el orden en que trabajo.

// servicios

Cómo trabajo cuando me contratas por proyecto.

No es un catálogo con precios. Es la forma en que abordo cada tipo de trabajo. El precio depende del alcance real, no de una tabla.

01Disponible

Desarrollo de productos nuevos

De la conversación inicial al MVP en producción. Elijo el stack que resuelva el problema, no el que esté de moda, y dejo el código en un estado en el que otro ingeniero pueda continuar sin pedir contexto.

02Disponible

Mantenimiento de sistemas

Iteración sobre sistemas ya en producción sin romper lo que funciona. Cambios pequeños, reversibles, con tests donde faltan y documentación donde duele.

03Disponible

Resolución de bugs

Reproducir primero, entender después, corregir al final. Trabajo bien con bugs viejos que ya nadie quiere tocar y con condiciones de carrera que solo aparecen en producción.

04Disponible

Migraciones

Migraciones de datos, de versión de framework o de stack completo. Planifico ventanas cortas, mantengo compatibilidad hacia atrás y evito el big bang que rompe la operación.

// stack

Herramientas con las que resuelvo problemas reales.

Agrupadas por dominio. El stack secundario aparece porque lo conozco, no porque sea mi primer recurso.

Backend
05
  • Python
  • FastAPI
  • Django
  • Java
  • Spring Boot
Frontend
05
  • TypeScript
  • React
  • Next.js
  • Vue.js
  • Tailwind CSS
Datos & Infra
05
  • PostgreSQL
  • MySQL
  • Docker
  • Git
  • WebSockets
Secundario
03
  • C#
  • ASP.NET
  • JavaScript
// experiencia

Dónde puse las manos en producción.

Poca antigüedad, pero cada rol tiene contexto: qué construí y qué me llevé.

  1. * 4thewo01(HEAD → main)
    2024 — 2025
    4thewords
    Desarrollador Full Stack (contrato de servicios profesionales)
    Remoto · Costa Rica
    // construí
    • Features de producto en Vue.js sobre un backend Python en producción.
    • Corrección de bugs con reproducción sistemática, no parches ciegos.
    • Pequeñas mejoras de rendimiento en consultas de base de datos.
    // aprendí

    Trabajar en un producto vivo con usuarios reales cambia la definición de "terminado": el código correcto que rompe la operación no está terminado.

  2. * funrea02(prev)
    2024
    Funread
    Pasantía Backend (Django)
    Pasantía · Costa Rica
    // construí
    • Endpoints y modelos en Django + DRF.
    • Migraciones seguras con backfill en pasos separados.
    • Tests de integración sobre los flujos críticos.
    // aprendí

    La primera vez que un merge propio llega a producción enseña más disciplina que un semestre de teoría.

// contacto

Cuéntame qué necesitas construir.

Respondo por lo general el mismo día. Si prefieres correo directo, también funciona.

// intención
// sin plantillas. léelo antes de enviar y ve al grano.