Batch Service
Motor de Procesamiento de Nóminas
Servicio backend de alto rendimiento encargado de calcular, procesar y dispersar pagos de nómina para más de 20,000 empleados mensualmente.
El Problema
El proceso anterior tomaba 3 días en ejecutarse y requiera supervisión manual constante.
La Solución
Desarrollé un Windows Service (.NET Worker) que se ejecuta en segundo plano, procesando lotes de empleados en paralelo.
Resultados
- Reducción de Tiempo: De 3 días a 4 horas.
- Cero Errores: Validaciones automáticas de cuentas bancarias y montos antes de la dispersión.
Tecnología
- Paralelismo: Uso intensivo de
Parallel.ForEachyTaskde la TPL (Task Parallel Library). - Acceso a Datos: Dapper para máxima velocidad en operaciones de lectura/escritura masiva en SQL Server.
- Archivos: Generación de archivos TXT para bancos (BCP, BBVA, Interbank) almacenados en Azure Blob Storage.