← Trabajo
2025 — presente · en producción

Sistema de tiempo y nómina

Registro de horas por proyecto y empleado con cálculo automático de pagos, reportes y control de feriados. Un problema aburrido, resuelto con la seriedad de un sistema financiero.

RustAngularPostgreSQLOpenAPI
Horas → pago
cálculo automático por proyecto y tarifa
XLSX · PDF
reportes exportables por período
JWT + roles
permisos por departamento y perfil

Problema

El registro de horas y el cálculo de pagos por proyecto se resuelve casi siempre igual: hojas de cálculo que alguien consolida a mano a fin de mes, con errores que cuestan dinero y discusiones que cuestan confianza.

Decisiones

Tratarlo como sistema financiero, no como formulario. Detrás de cada hora registrada hay un pago: el backend está escrito en Rust sobre PostgreSQL, con la misma disciplina de tipos y transacciones que exigiría un libro contable.

El cálculo vive en el servidor. Tarifas por proyecto, feriados, vacaciones y roles se resuelven en un solo lugar auditable — no en fórmulas repartidas por celdas que nadie versiona.

Reportes como ciudadanos de primera. Exportación a Excel y PDF por período, proyecto o empleado, porque el output real de un sistema de nómina es el documento que alguien firma.

Contrato OpenAPI documentado. La API se explora en Swagger y el frontend Angular consume tipos generados: el contrato es la fuente de verdad.

Resultado

En producción para gestión interna: registro diario, cierres de período sin consolidación manual y reportes que antes tomaban horas, en segundos.