Primero el ProcesoConversemos

Disponible para proyectos

Carlos Aburto

Carlos Aburto

Desarrollador full stack · Ingeniero Civil en Informática

Más de ocho años construyendo sistemas para servicios de salud. Hoy hago aplicaciones web con Next.js y PostgreSQL, de las que entran a producción y las usa gente todos los días: permisos por capacidad, historial que no se puede borrar, montos en enteros y reglas que cambian a mitad de mes.

8+
años de experiencia
Desarrollo para servicios de salud
3
sistemas en producción
Usados a diario, no maquetas
2
demos abiertos
Con usuario y clave publicados

01Stack

Con qué trabajo, y con qué no

Donde soy más rápido

Es lo que uso todos los días y en lo que cotizo con confianza.

  • TypeScript
  • Next.js (App Router, server actions)
  • React 19
  • PostgreSQL
  • Drizzle ORM
  • Tailwind
  • Zod
  • Vercel
  • Neon

También trabajo con

Lo manejo bien, aunque no sea donde quiero pasar la semana.

  • Shopify (Liquid, temas propios)
  • PHP, CodeIgniter y Laravel
  • Oracle PL/SQL
  • MariaDB y SQLite
  • Bootstrap y jQuery
  • Playwright
  • Sesiones con JWT y bcrypt
  • Webpay
  • Figma

Lo que no hago

Decirlo de entrada evita que los dos perdamos una reunión.

  • Java
  • .NET
  • Angular
  • WordPress
  • Salesforce y SAP
  • Apps móviles nativas

02Qué construí

Lo que hice por dentro

Agenda clínica

Producto propio. Sistema de agendamiento para clínicas y consultas: el paciente reserva solo en la página de la clínica, la recepción lleva el día y cobra en el mesón, y a fin de mes están los números.

Lo que hice

  • Multi-clínica desde el primer día: cada una con su subdominio, sus perfiles y su propia cuenta de cobro. Toda consulta filtra por establecimiento, incluso cuando busca por id; la reescritura del proxy es enrutamiento y no autoriza nada.
  • Permisos por capacidad y no por rol. Los perfiles los arma cada clínica agrupando menús, así que crear uno nuevo no obliga a tocar código.
  • Bitácora escrita en la misma transacción que el cambio, incluidas las consultas a la ficha de un paciente: son datos sensibles de salud y alguien tiene que poder responder quién los miró. La tabla es de sólo agregado.
  • Los bloques de agenda se generan por tramos y son inmutables una vez que tienen cita. Acortar el periodo de una agenda sólo apaga bloques libres: una hora tomada no puede quedar fuera de su propia agenda.
  • El pago va con el código de comercio de cada clínica: el dinero no pasa por mí.
  • Nada se borra: los bloques se apagan y las citas viven canceladas, o los reportes dejan de cuadrar.
  • Next.js
  • TypeScript
  • PostgreSQL
  • Drizzle
  • Vercel
  • Webpay

carlos@cordillera.cl · clave demo-cordillera

Club de Montaña Collipulli

Sistema de gestión completo para un club de montaña: socios, cuotas, préstamos de equipo, salidas, reuniones con acta y asistencia, y el sitio público del club. Reescritura de un sistema PHP anterior.

Lo que hice

  • Los montos de cuota se copian y no se referencian: cada cuota guarda lo que correspondía ese año, así que subir la cuota no reescribe el pasado.
  • Los choques de fecha en los préstamos se resuelven bloqueando las filas de equipo con `select … for update` antes de buscar el choque. Sin eso, dos solicitudes simultáneas pasaban las dos porque cada una leía antes de que la otra escribiera.
  • La disponibilidad de un equipo se deduce de sus préstamos y no de una columna de estado: la pregunta real nunca es «¿está afuera ahora?», es «¿está libre del 12 al 15?».
  • Los datos de salud viven en su propia tabla y no en la de usuarios, para que ningún `select` los arrastre sin que nadie lo decida, y se leen con una capacidad aparte de la de ver socios.
  • El token de sesión lleva de qué despliegue viene, así que la cookie de la demostración —cuya clave está impresa en pantalla— no sirve en el club.
  • El sitio público se alimenta del mismo sistema: las fotos y los relatos de cada salida se publican solos.
  • Next.js
  • TypeScript
  • PostgreSQL
  • Drizzle
  • Vercel Blob

admin@demo.cl · clave demo2026

Arawka Climbing Holds

Tienda en Shopify para una fábrica de macros y volúmenes de escalada que le vende a gimnasios y a personas al mismo tiempo.

Lo que hice

  • Tema propio escrito desde cero, no una plantilla comprada: portada, producto, familia, catálogo, página, carro, búsqueda y 404.
  • Carrito y cotización conviviendo en la misma ficha, porque no se le vende igual a quien compra una pieza suelta que a un gimnasio que equipa una sala.
  • Las fichas técnicas viven como metacampos y no como texto dentro de la descripción, así que se pueden filtrar y ordenar.
  • Bilingüe, con las tipografías alojadas en el tema y sin depender de Google.
  • Un validador propio que revisa schemas, referencias entre secciones, balance de etiquetas Liquid y paridad de traducciones sin necesitar la CLI de Shopify.
  • Shopify
  • Liquid
  • JavaScript
  • Node

La mayor parte de esos años fue construyendo sistemas para el servicio público de salud: múltiples módulos en producción, funcionando hoy en la red asistencial de la provincia de Malleco. No puedo mostrarlos ni describirlos en detalle, y prefiero decirlo yo antes de que parezca un hueco en el currículum. Pero si trabajas en salud en la zona, lo más probable es que ya los hayas usado; y si te has atendido en la red de Malleco, que te hayan atendido con ellos. Lo que aprendí ahí está a la vista en los proyectos de arriba: cómo se modela un dominio enredado y cómo se tratan los datos sensibles.

03Trayectoria

Dónde he estado

  1. 2023 — hoy

    Fundador y desarrollador full stack

    Primero el Proceso

    Diagnóstico de procesos, sistemas a medida y productos propios. Es lo que ves en esta página.

  2. 2022 — hoy

    Ingeniero de desarrollo de software

    Servicio de Salud Araucanía Norte · MINSAL

    Múltiples módulos en producción, funcionando hoy en la red asistencial de la provincia de Malleco. Levantamiento con equipos clínicos y administrativos, modelamiento de datos y desarrollo sobre Laravel, CodeIgniter y Oracle PL/SQL.

  3. 2022

    Profesor

    Centro de Formación Técnica de La Araucanía

    Networking para Técnico Analista Programador, e Introducción a las TIC para Técnico en Gestión de Empresas.

  4. 2019 — 2022

    Ingeniero de desarrollo de software

    Insilec, para el Servicio de Salud Araucanía Norte

    Sistemas de gestión y atención de pacientes en la red asistencial, con levantamiento en terreno.

  5. 2018 — 2019

    Ingeniero de desarrollo de software

    Layner, para el Servicio de Salud Valdivia

    Sistemas de gestión hospitalaria e integración con sistemas heredados del sector.

Formación

  • 2025Diplomado en CiberseguridadUniversidad Autónoma de Chile
  • 2017Ingeniería Civil en InformáticaUniversidad del Bío-Bío

04Cómo trabajo

Las condiciones, antes de que preguntes

Precio fijo, cerrado antes de escribir código

Nunca por hora. Si el alcance no se puede fijar todavía, lo primero es un levantamiento corto y pagado que termina en una propuesta con número.

Dedicación parcial

Trabajo por proyecto y en paralelo a un empleo, así que comprometo plazos que puedo cumplir. Si necesitas disponibilidad en horario de oficina, no soy yo.

En remoto, desde La Araucanía

A todo Chile y afuera. Las conversaciones por videollamada y el avance a la vista en un despliegue que puedes abrir cuando quieras.

Lo que entrego queda andando y documentado

Con sus notas de mantención: las trampas del dominio escritas para quien venga después, aunque ese alguien sea yo en seis meses.

Universidad del Bío-Bío · Chile