ND Nicolás Díaz Hablemos

Villa María, Córdoba · Argentina

Nicolás Díaz

Desarrollador Full Stack · Automatizaciones · Sistemas a medida

Construyo software que los negocios
usan todos los días.

Un sistema de gestión que una pastelería abre todos los días para producir, cobrar y saber cómo viene el mes, y un catálogo que le toma los pedidos sola. Nada de esto es una demo: están en producción y hay alguien que depende de que anden.

Nicolás Díaz
Villa María, Córdoba Full Stack · automatización de procesos · IA aplicada al desarrollo
4 aplicaciones entregadas a un cliente
7 sistemas en producción
26 herramientas en el stack
2024 programando desde
01

Mi historia

Aprendí a programar construyendo cosas que alguien iba a usar. No es una frase: la diferencia entre un ejercicio y un sistema aparece el día que una persona que no sabe nada de código abre tu pantalla a las siete de la mañana, con las manos ocupadas, y necesita que ande.

Ahí es donde me interesa el oficio. No en que el código compile, sino en decidir qué tiene que gritar y qué puede esperar, qué se automatiza y qué conviene dejar a mano, qué pasa cuando se corta internet. Un sistema no vale por lo que tiene adentro: vale por la cantidad de veces que alguien lo abre sin pensarlo.

Trabajo solo, de punta a punta: la idea, la base de datos, la interfaz, el despliegue y el mensaje de WhatsApp que le llega al cliente. Estudio la Tecnicatura en Programación en la UTN Villa María, que me dio las bases —orientación a objetos, estructuras de datos, arquitectura, Java—. Todo lo demás lo fui aprendiendo por afuera porque un cliente lo necesitaba: automatización con n8n, autenticación y datos en Supabase, despliegues, y configuración seria de agentes de IA para ir más rápido sin perder control.

Empecé porque me gusta crear soluciones. Veo cómo trabaja alguien y ya estoy pensando cómo sacarle tres pasos de encima. Lo que más me engancha no es escribir el código: es el rato de antes, cuando el problema todavía está desarmado y hay que darse cuenta de que en realidad era otro problema. Programar resultó ser la forma más directa que encontré de que una idea que se me ocurre un martes esté funcionando el jueves.

02

Lo que hago hoy

i

Desarrollo Full Stack

Aplicaciones web a medida, de la base de datos a la pantalla. React y TypeScript adelante, Java con Spring Boot o Python atrás, y PostgreSQL o Supabase abajo. Sin plantillas: el sistema se arma alrededor de cómo trabaja el negocio, no al revés.

  • React
  • Spring Boot
  • Python
  • PostgreSQL
  • Supabase
ii

Automatización de procesos

Flujos con n8n, integraciones por API, bots de WhatsApp y email marketing para negocios que hoy hacen todo eso a mano. La regla es simple: si una persona repite la misma tarea tres veces por semana, esa tarea es de una máquina.

  • n8n
  • APIs REST
  • WhatsApp
  • Email marketing
iii

IA aplicada al desarrollo

No la uso para que escriba el código por mí: la uso como un equipo que dirijo. Cada proyecto tiene sus reglas escritas —qué puede tocar un agente, qué tiene que mostrarme antes y qué no toca nunca— y su propia memoria, para que cada sesión arranque sabiendo las decisiones que ya se tomaron y por qué.

  • Skills propias para los procesos que repito, en vez de volver a explicar lo mismo cada vez.
  • Agentes especializados por tarea: esquema de base de datos, componentes de front, limpieza de código muerto.
  • Nada destructivo sin aprobación, y lo entregado se verifica contra el sistema andando, no contra lo que dice el agente.
  • Claude Code
  • Codex
  • Gemini
  • Skills propias
  • Subagentes
iv

Marca y demanda

Un sistema que nadie usa es una demo cara. Trabajo también el otro lado: posicionamiento, líneas de contenido con función separada, campañas de Meta Ads por etapa del embudo, y todo el embudo terminando en un pedido armado y no en un mensaje suelto.

  • Del perfil al pedido en la menor cantidad de toques posible.
  • Cada formato con un trabajo: alcance, interacción o captación. No todos buscando lo mismo.
  • Decisiones con datos de margen, porque el sistema que los produce lo construí yo.
  • Meta Ads
  • Contenido
  • Instagram

No entrego y me voy. Los sistemas que están andando siguen creciendo: estoy en contacto con el cliente todo el tiempo y cada mes salen funciones nuevas de lo que va necesitando. Un sistema que se entrega y se abandona queda viejo en seis meses.

03

Proyectos destacados

Problema, qué construí, con qué, y qué cambió después.

Sistema de gestión · Cliente freelance

Gestor de pedidos

Clems Delicatessen · en uso todos los días

En producción
Tablero de pedidos con cuatro columnas por estado, resumen de facturación y bandeja de pedidos web

El problema

Los pedidos vivían en un cuaderno. Qué hay que entregar mañana, quién debe plata y si el mes cerró bien eran tres preguntas que sólo se respondían releyendo la agenda entera. Y el cuaderno queda en el local.

Qué construí

Un tablero por estados con calendario, vista semanal y una pestaña de Plata que junta todo lo que falta entrar: lo entregado sin cobrar con los días de atraso, las señas pactadas que no entraron y los saldos de lo que todavía no se entregó. Cada pedido trae su armador de mensajes de WhatsApp, que completa la plantilla con los datos y abre el chat listo para mandar.

El resultado

Reemplazó el cuaderno. Se usa de pie en la cocina, con las manos ocupadas y mirando de reojo, y también de noche sentada para planificar la semana. Son dos formas de usar opuestas y el diseño resuelve las dos.

  • Sincronizado en vivo. Lo que se toca en el celular aparece en la computadora sin recargar, por realtime de Supabase.
  • Los pedidos entran solos. Lo que el cliente arma en el catálogo cae en una bandeja y se acepta con un toque, ya precargado.
  • Anda sin internet. El tablero se sigue consultando desde una caché local de solo lectura, avisando que no se guarda.
  • Un archivo, sin framework. 300 KB de JavaScript nativo, sin paso de compilación, publicado como Worker de Cloudflare.
  • Productizado para vender. Web comercial de cuatro páginas y un CRM propio de prospección para ofrecer el sistema a otras pastelerías.
  • JavaScript
  • Supabase
  • PostgreSQL
  • Auth + RLS
  • Realtime
  • Cloudflare Workers
  • WhatsApp

Las tres aplicaciones tienen bastante más adentro de lo que entra en una tarjeta. El sitio las recorre función por función, con el circuito de un pedido en video y el caso real de la pastelería que lo usa todos los días. Las capturas usan datos de ejemplo.

Vidriera pública · Cliente freelance

Catálogo con carrito

Clems Delicatessen

En vivo
Catálogo web con buscador, filtros por categoría y grilla de productos con foto y precio

El problema

Cada pedido arrancaba con la misma ronda de preguntas: cuánto sale, qué tamaños hay, si llega para el sábado.

Qué construí

Una vidriera donde el cliente arma el pedido solo, con productos configurables, calendario que ya aplica la anticipación mínima y bloquea los días que la pastelería no elabora, y aviso automático de seña. Al confirmar, el pedido se guarda en la base y abre WhatsApp escrito.

El resultado

25 productos y 58 combinaciones de precio en vivo. En vez de un mensaje suelto llega un pedido completo, con fecha ya validada.

  • JavaScript
  • Supabase
  • Cloudflare Pages
  • WebP

Carga en 0,48 s (LCP medido en vivo): dentro del rango “bueno” de Core Web Vitals de Google.

Costos y precios · Cliente freelance

Qué deja cada producto

Clems Delicatessen

En producción
Panel de costos con margen promedio y avisos de rentabilidad por producto, con los números difuminados

El problema

Los precios salían de una planilla que quedaba vieja a los tres meses. Sube la harina y se sigue vendiendo lo que menos deja, sin saberlo.

Qué construí

Una app que arma el costo de cada producto desde los ingredientes con la fórmula real de la planilla, y muestra el margen contra la meta y el precio al que habría que venderlo para llegar. Los aumentos pasan por un borrador con historial: se simulan antes de aplicarse, y un cartel frena si un precio salta más del 30% o queda por debajo del costo.

El resultado

La conversación cambió de «¿a cuánto lo pongo?» a «este deja 22% y debería dejar 50». Los precios de venta viven en Supabase con historial automático; el costeo de los 41 productos queda en el dispositivo, exportable entre la computadora y el celular.

  • JavaScript
  • Supabase
  • PostgreSQL
  • localStorage
  • Cloudflare Pages

Los números van difuminados: son los márgenes reales de la clienta.

Herramienta interna · Producto propio

CRM de prospección

Para vender el sistema a otras pastelerías

En uso
Tablero del CRM de prospección con negocios de ejemplo, puntaje, estado y próximo toque de cada uno

El problema

Conseguir clientes para el sistema era buscar pastelerías una por una en Instagram y llevar la cuenta de a quién ya le escribí en la cabeza.

Qué construí

Un CRM propio que arma el padrón por ciudad, califica cada prospecto con un puntaje automático de Postgres y ordena la escalera de seguimiento (DM, WhatsApp, mail) con un techo diario para no gastar la cuenta de Instagram.

El resultado

Reemplazó la lista mental: cada prospecto tiene un próximo toque, una plantilla y un motivo para calificar mejor o peor.

  • JavaScript
  • Supabase
  • Auth + RLS
  • PostgreSQL

La captura usa negocios de ejemplo. Sin demo pública: los contactos reales están detrás de clave propia e inicio de sesión.

Sitio comercial · Producto propio

Web del sistema para pastelerías

Para vender el sistema a otras pastelerías

En vivo
Página de inicio del sitio comercial del sistema para pastelerías, con capturas del catálogo y del gestor de pedidos

El problema

Explicar el sistema a cada pastelería interesada era mandar capturas sueltas por WhatsApp y repetir la misma explicación cada vez.

Qué construí

Un sitio de cuatro páginas —inicio, el sistema función por función, el caso real de Clementina con métricas, y los planes con precio— sin build ni backend, con recorridos de capturas navegables del catálogo, el tablero y el costeo.

El resultado

Es el destino de todo el embudo del CRM: cada prospecto que responde termina acá, mirando el sistema funcionando antes de la reunión.

  • JavaScript
  • HTML
  • CSS
  • WebP

Punto de venta (POS) · Cliente freelance

Sistema de punto de venta

La Huella VM · pet shop, en uso todos los días

En producción
Punto de venta de La Huella con el ticket armado, atajos de teclado y forma de pago, con productos de ejemplo

El problema

El stock y los precios vivían en un Excel que nadie actualizaba a tiempo, y una caída de internet dejaba al local sin poder vender.

Qué construí

Un punto de venta táctil con más de 480 artículos: el stock se calcula sumando movimientos y nunca se pisa, precio y costo quedan con historial, y la venta, la anulación y el cierre de caja los decide una función de la base, no el JavaScript de la pantalla.

El resultado

483 artículos y 41 clientes cargados, con atajos de teclado pensados para vender con las manos ocupadas. Lo uso yo mismo atendiendo el local.

  • JavaScript
  • Supabase
  • PostgreSQL
  • Cloudflare Workers

La captura usa productos de ejemplo. Sin demo pública: el sistema real tiene clientes, deudas y stock reales de un negocio.

Proyecto personal

Finanzas personales

En uso
Balance del mes, ingresos y gastos, barra de presupuesto y últimos movimientos de la PWA de finanzas personales, con datos de ejemplo

El problema

Quería ver de un vistazo en qué se me iba la plata, sin mandar mis movimientos a ningún servidor.

Qué construí

Una PWA instalable con gráficos de gastos por categoría, compras en cuotas y gastos recurrentes, con los montos en centavos enteros para que nunca falte un peso por redondeo.

El resultado

Todo vive en el dispositivo, sin backend ni cuenta, con 14 pruebas automatizadas sobre la lógica de cálculo.

  • React 18
  • TypeScript
  • Tailwind 4
  • recharts
  • PWA

La captura usa datos de ejemplo, no mis movimientos reales.

Backend en Java · Proyecto en equipo

TPI-PRODE

Junio 2026

El problema

Un trabajo práctico integrador que exigía una API de verdad: usuarios, autenticación, persistencia y reglas de negocio, no un CRUD de ejemplo.

Qué construí

Una plataforma de pronósticos deportivos con backend en Spring Boot: autenticación por JWT con Spring Security, modelo de datos sobre Hibernate/JPA y PostgreSQL alojado en Supabase.

El resultado

Entregado en equipo, con documentación técnica y demo en vivo. El código está público.

  • Java 21
  • Spring Boot 4
  • Spring Security
  • JWT
  • Hibernate / JPA
  • PostgreSQL
  • Maven

Trabajo Final Integrador

Gestor de stock

El proyecto con el que me recibo

En desarrollo

El problema

[COMPLETAR: qué problema resuelve] — para quién es y qué se hace hoy a mano.

Qué construí

[COMPLETAR: qué hace el sistema] — las tres o cuatro cosas que lo hacen distinto de un ABM de stock cualquiera.

El resultado

[COMPLETAR: estado y stack] — con qué está hecho y para cuándo se entrega.

Lugar reservado. Pasame el detalle y completo la tarjeta.

Producto propio

Tablero de pronósticos

En desarrollo

El problema

Los datos que sirven para leer un partido —probabilidades, xG, Elo— están desparramados y nadie los muestra juntos con qué tan confiable es cada predicción.

Qué construí

Un tablero que ordena los partidos por día, marca el nivel de confianza de cada pronóstico y guarda el histórico de aciertos en su propia pantalla, para que el sistema quede expuesto a su propio resultado.

El resultado

Renderizado en el servidor con Next.js, leyendo directo de una función de PostgreSQL. En desarrollo.

  • Next.js 16
  • React 19
  • TypeScript
  • Supabase SSR
  • Tailwind

Proyecto personal

Registro de comidas

En desarrollo

El problema

Las apps de registro de comidas piden cuenta, mandan notificaciones y opinan sobre lo que uno come. Queríamos anotar y nada más.

Qué construí

Una app para dos perfiles donde los datos viven en el dispositivo: sin backend, sin cuenta y sin conexión obligatoria. Se agrega a la pantalla de inicio y queda como una app nativa.

El resultado

Compilada, en uso diario y con su propio arnés de pruebas corriendo sobre el runner de Node, sin traer una librería de testing.

  • React 19
  • Vite
  • Tailwind 4
  • localStorage
  • node --test
04

Marca y demanda

Al mismo cliente al que le construí las herramientas, le construí la demanda.

Gestión de marca y demanda

Clems Delicatessen

@clems_delicatessen · pastelería 100% sin gluten, Villa María

En curso

Tomé una cuenta que ya existía pero estaba estancada y le monté el sistema completo en tres semanas, desde el .

Alcance de personas · últimos 30 días contra los últimos 90

99,7 %

del alcance del trimestre se produjo en el mes de trabajo.

Total de los 90 días · 14.429 espectadores

  • 28 %

    de las visitas al perfil terminaron en un clic al sitio: 430 de 1.524.

  • 40,9 %

    de las visualizaciones vienen de gente que no sigue la cuenta. En la ventana de 90 días era 29,8 %: el contenido dejó de circular sólo entre la base que ya estaba.

  • 70 %

    de las 89.947 visualizaciones del trimestre cayeron en el último mes.

Visualizaciones · 30 días
63.097
Interacciones
2.573 sobre 408 cuentas
Visitas al perfil
1.524
Toques en el enlace
430
Seguidores
1.269 siguiendo a 4 cuentas
Pieza más vista
23,5 mil 5× la siguiente
Pieza más compartida
213 compartidas · 96 comentarios · 1.884 me gusta
Reparto por formato
52 % / 68,3 % historias en alcance · publicaciones en interacción

Qué hice

  1. El pedido no tenía dónde caer

    Lancé el sitio propio y lo puse como destino del embudo. El contenido dejó de terminar en un mensaje suelto y pasó a terminar en un pedido armado, con fecha validada.

  2. El perfil no tenía por dónde entrar

    Convertí las destacadas en un menú navegable —Catálogo, Individuales, Tortas, Box, Sorteos— que lleva al pedido en un toque, en vez de ser un archivo de historias viejas.

  3. En tres líneas no se entendía qué se vendía

    Reescribí el posicionamiento de la bio: categoría, el diferencial sin TACC, la zona y las líneas de producto, legibles antes de tener que tocar «más».

  4. Todo el contenido peleaba por lo mismo

    Separé las líneas por función: historias para alcance, publicaciones para interacción, piezas de captación de pedido y sorteos. Cada formato con un trabajo distinto, no todos buscando lo mismo.

  5. El negocio nunca había pautado

    Primeras campañas de Meta Ads de la marca, con objetivos diferenciados por etapa del embudo: una a visitas al perfil, otra a tráfico al sitio.

Las piezas que lo alimentaron

  • Historia de Instagram: quedaron tres tortas para retirar mañana, sin encargue previo
  • Historia de Instagram: la agenda del fin de semana quedó completa
  • Historia de Instagram: torta de cumpleaños con sticker de reserva
  • Historia de Instagram de Clems Delicatessen
  • Historia de Instagram de Clems Delicatessen
05

Stack técnico

Lo que uso de verdad, agrupado por para qué lo uso.

Lenguajes

  • JavaScript
  • Java
  • Python
  • TypeScript

Frontend

  • React
  • HTML
  • CSS

Backend y datos

  • Spring Boot
  • MySQL
  • PostgreSQL
  • Supabase

Automatización e IA

  • n8n
  • APIs REST
  • Claude Code
  • Codex
  • Gemini

Herramientas

  • Git
  • GitHub
  • VS Code
  • Maven
  • Cloudflare

Contenido y marketing

  • Meta Ads
  • Gestión de redes
  • Remotion
  • Canva
  • Edición de video

Formación

Tecnicatura Universitaria en Programación

UTN Facultad Regional Villa María · en curso, me recibo en 2026

Testing QA Manual

Coderhouse · certificación

Secundario completo

Escuela Superior Integral de Lechería (ESIL) · 2022

Cómo trabajo

  • Código que se entiende.

    El que lo abra dentro de un año tiene que poder cambiarlo sin llamarme. Eso incluye a mí mismo.

  • Entregas que funcionan desde el día uno.

    Se prueba antes de decir que está listo. Si algo falló, se dice con la salida a la vista.

  • Nada destructivo sin aprobación explícita.

    Borrar, sobrescribir y publicar se avisan antes. Es la única familia de operaciones que no se puede deshacer.

  • Iterativo y directo, sin vueltas.

    Prefiero mostrarte algo andando el martes que un plan perfecto el viernes.

06

Hablemos

Elegí por dónde entrar. Contesto los dos.

Trabajo full time

Posiciones Junior o Trainee

Busco un equipo donde seguir creciendo, con gente que revise mi código y me diga cuándo está mal.

nicodiazxs@gmail.com

Proyectos freelance

Sistemas y automatizaciones

Si tu negocio hace a mano algo que se repite todas las semanas, probablemente se pueda automatizar. Contame qué es.

nicodiazxs@gmail.com