Sistema de gestión clínica diseñado, construido y operado de extremo a extremo por un solo desarrollador — en uso productivo real.
Estado En producciónAutor George Montero NúñezPerfil Full-Stack DeveloperStack React · ASP.NET Core · PostgreSQL
I. Motivo de consulta
Un ciclo operativo completo, sin sistema propio
La clínica necesitaba un sistema único que cubriera todo su ciclo operativo diario — desde que un paciente agenda una cita hasta el cierre de caja al final del día — con permisos distintos para cada rol del personal: Administrador, Secretaria y Médico.
El encargo se validó contra una lista de requerimientos escrita por la clínica: pacientes, agenda, consultas, recetas, usuarios, productos, ventas y control de caja. Cada módulo de este expediente responde a uno de esos puntos.
II. Plan de tratamiento
Módulos entregados
Pacientes— ficha, historia clínica y antecedentes
Agenda / Citas— programación y seguimiento por médico
ASP.NET Core (.NET)
Entity Framework Core
AutoMapper
JWT · BCrypt
Base de datos
PostgreSQL
Npgsql
Infraestructura
Docker · Nginx
VPS propio
Despliegue manual
IV. Arquitectura
Cómo se comunican las piezas
Autenticación sin estado por JWT: el token lleva usuario, médico (si aplica) y rol, y el frontend muestra u oculta rutas y módulos según ese rol. El cierre de caja nunca confía en el total que envía el cliente — el backend lo recalcula a partir de los pagos y ventas reales del día.
V. Evolución
Notas de seguimiento
Diagnostiqué y corregí un bug donde una validación de esquema desactualizada ocultaba la lista completa de pacientes en cuanto un solo registro tenía un campo opcional en null — el frontend exigía datos que el backend ya permitía omitir.
Amplié los permisos del rol Médico para registrar pagos y gestionar productos, sin exponer el dashboard financiero de otros médicos ni del negocio completo.
Diseñé e implementé el módulo de Cierre de Caja — la tabla existía desde la primera migración, pero nunca se había construido API ni interfaz sobre ella.
Despliego y opero el sistema yo mismo en un VPS propio: build, contenedores, verificación y monitoreo continuo.
VI. Confidencialidad
Sobre los datos de este expediente
Institución
Contacto
Sysgenda opera en una clínica privada real. ANONIMIZADO — los nombres, logos y contactos que aparecían en los formatos de impresión se removieron por confidencialidad del cliente. El código, la arquitectura y las funcionalidades de este expediente son los mismos que corren en producción.