business informatics · liberia, cr--:--local time

I build software that survives production.

Full Stack Business Informatics graduate. I build everything from ERPs with Hexagonal Architecture to landing pages that achieve Lighthouse 100/100. I write code that other engineers can maintain without needing a translation.

[stack]
Python · TS
[foco]
Full Stack
[base]
Costa Rica
about me

Self-taught with engineering judgment, not just a code typist.

I graduated in Business Informatics from UCR in April 2025. Before that, I had already built a full ERP on my own, done an internship at Funread, and signed a contract with 4thewords. The degree was the paperwork; the projects were the real learning.

I do my best work when the problem is messy: legacy systems, migrations, race conditions, old bugs nobody wants to touch. Before writing code, I try to figure out what's actually being asked — half the solutions disappear once the problem is properly framed.

I'm open to full-time roles and taking on freelance projects in parallel. Both formats interest me for different reasons, and they don't compete with each other.

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)

// it's not a slogan. it's literally the order I work in.

// projects

Projects that show how I think, not just what I use.

Three project formats based on what I can share: public repositories, limited access, or NDA case studies covering the problem, technical decisions, and architecture.

[ case study · nda ]// freelance2026

La Central ERP

Retail ERP with real-time sync, inventory control, and sales analytics.

// problem

The client needed to centralize sales, inventory, purchasing, and staff in a single platform able to sync multiple registers in real time and adapt to a mini-market's specific business rules.

// technical decisions
  • Hexagonal architecture + DDD + CQRS: the domain stays isolated from transport and persistence, splitting the write model from the read model.
  • WebSockets and internal events keep inventory, sales, and register state in sync in real time.
  • Modules don't know about each other directly — all communication happens through decoupled events.
  • Custom order-prediction algorithm based on demand, stock, seasonality, and supplier lead time.
  • Java
  • Spring Boot
  • Next.js
  • TypeScript
  • PostgreSQL
  • WebSocket
  • Docker
modulos
6
endpoints
31
architecture
DDD + Hexagonal + CQRS
architecture
Spring Boot + Next.js, DDD + Hexagonal + CQRS, event-driven

Code under NDA. Implementation details available on request.

[ in development ]// personal

Strata AI Research Workspace

AI workspace for analyzing documents, generating summaries, answering with citations, and semantically searching your own knowledge base.

problem

Research reading gets scattered across PDFs, loose notes, and untraceable AI chats. What's needed is a single space where every answer is anchored to its source and notes evolve with the material.

  • Next.js
  • TypeScript
  • FastAPI
  • Python
  • PostgreSQL
[ demo + repo ]// personal

Obsidian Library

End-to-end library management system with loans, subscriptions, and automated payments.

problem

A robust platform was needed to manage books, loans, reservations, subscriptions, and payments in one solution, with security, traceability, and well-defined business logic.

endpoints
69
  • Java
  • Spring Boot
  • Next.js
  • TypeScript
  • PostgreSQL
[ demo + repo ]// personal

Trendora

E-commerce platform with role-based auth, URL-synced filters, and an admin panel.

problem

An e-commerce needs to handle a catalog, user roles, filter-based navigation, and an admin panel, all consumed from a fast SPA backed by a domain-organized API.

  • React
  • TypeScript
  • Vite
  • Zustand
  • TanStack Query
[ repository ]// personal

Restaurant Management System

Restaurant management system for ingredients, menu, tables, and orders across 5 layers.

problem

A restaurant needs to manage ingredients, menu, tables, and active orders with a maintainable architecture that clearly separates domain, data access, and presentation.

  • C#
  • ASP.NET
  • Entity Framework
  • SQL Server
  • Razor Views
repositorio
[ demo + repo ]// personal

Selvática

Landing page for an adventure lodge in Costa Rica, with a booking flow and 100/100 Lighthouse scores.

problem

An adventure lodge near Arenal Volcano needed a digital presence that captured the experience (hot springs, canopy tours, waterfalls, Maleku culture) without sacrificing load speed or accessibility, with direct booking via WhatsApp.

performance
100
accessibility
100
bestPractices
100
seo
100
  • Next.js
  • TypeScript
  • Tailwind CSS
[ case study · nda ]// profesional

Migration and Modernization at 4thewords

Professional contract: PHP-to-FastAPI migration, full-stack bug fixing, and reusable components.

problem

The platform ran on microservices, with part of the logic still in PHP, creating technical debt and hard-to-trace bugs on both frontend and backend. It needed modernizing without interrupting service for an active base of writers.

decisions
  • Migrated the account service from PHP to FastAPI, maintaining compatibility with the rest of the microservices during the transition.
  • Fixed bugs across the entire stack — backend and frontend — with systematic reproduction before touching any code.
architecture

Microservices, PHP → FastAPI migration

  • Vue.js
  • Python
  • MySQL
  • Docker
  • Redis

Code under NDA. Implementation details available on request.

// services

How I work when you hire me for a project.

This isn't a price list. It's how I approach each type of project. Pricing depends on the actual scope, not on a fixed rate card.

01Available

New Product Development

From the initial conversation to a production-ready MVP. I choose the stack that solves the problem—not the one that's trending—and leave the codebase in a state where another engineer can pick it up without needing extra context.

02Available

System Maintenance

Iterating on production systems without breaking what already works. Small, reversible changes, tests where they're missing, and documentation where it's needed most.

03Available

Bug Fixing

Reproduce first, understand second, fix last. I enjoy tackling long-standing bugs nobody wants to touch and race conditions that only show up in production.

04Available

Migrations

Data, framework, or full-stack migrations. I plan short maintenance windows, preserve backward compatibility, and avoid risky big-bang releases that disrupt operations.

// stack

The tools I use to solve real-world problems.

Grouped by domain. Secondary technologies are included because I have experience with them, not because they are my go-to choice.

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

Where I got my hands on production systems.

Early in my career, but every role has a story: what I built and what I learned along the way.

    * 4thewo01(HEAD → main)
    2025
    4thewords
    Full Stack Developer (professional services contract)
    Remote · Costa Rica
    // built
    • Product features in Vue.js on top of a production Python backend.
    • Bug fixes through systematic reproduction, not blind patches.
    • Small performance improvements in database queries.
    // learned

    Working on a live product with real users changes the definition of "done": code that works correctly but breaks operations is not finished.

    * funrea02(prev)
    2024
    Funread
    Backend Internship (Django)
    Internship · Costa Rica
    // built
    • Endpoints and models using Django + DRF.
    • Safe migrations with backfills split into separate steps.
    • Integration tests covering critical workflows.
    // learned

    The first time your own merge reaches production teaches more discipline than a semester of theory.

// contact

Tell me what you need to build.

I usually reply the same day. If you prefer direct email, that works too.

// intent
0/2000
// no templates. read it before sending and get to the point.