Ingeniería de Casos

Análisis detallado de tres arquitecturas en producción para entornos de alta criticidad. El objetivo: eliminar la deuda técnica, saltar barreras de infraestructura hostil y transformar datos muertos en decisiones operativas.

Framework Unificado Multi-Tenant

REF: CORE-ABSTRACT-V3
Deuda Técnica & Rigidez

La gestión de diversos entornos (Ayuntamientos, Servicios de Emergencias, Aseguradoras) se basaba en scripts clonados. Corregir un bug implicaba editar múltiples archivos. Existía una fuerte inconsistencia de datos y una configuración rígida donde cambiar una IP en un cliente afectaba al código fuente.

Arquitectura: Núcleo Abstracto

Desarrollo de un núcleo en Python 3.11 que desacopla totalmente la lógica de negocio de la configuración. Implementación de un patrón de Inyección de Dependencias: el sistema lee cliente.yml al arranque y activa dinámicamente las clases necesarias (ej. Cluster CUCM) según si es un entorno de emergencias o corporativo.

  • Type Hinting & POO: Uso estricto de tipado para robustez en tiempo de desarrollo.
  • Validación de Esquema: Uso de config.schema.json para impedir que el bot arranque con datos corruptos.
  • Modularidad: Clases separadas para Capturador (Selenium), Generador (OpenPyXL) y Red (SSH).
  • Web Scraping Híbrido: Combinación de Selenium y Playwright según la complejidad del DOM.
"Resultado: Despliegue de un nuevo cliente en 5 minutos. Mantenimiento centralizado: una mejora en el Core beneficia automáticamente a todos los proyectos, desde Centros de Salud hasta Aseguradoras."
Python 3.11 Selenium / Playwright Pydantic OpenPyXL JSON Schema

Dockerized Secure Access Bot (Black Box)

REF: SEC-CONTAINER
Infraestructura Hostil

El acceso a datos en Centros de Emergencia y Administración Pública estaba bloqueado por VPNs corporativas (Ivanti/FortiClient/AnyConnect) con desconexiones por inactividad. Los scripts locales fallaban por diferencias de entorno, requiriendo intervención humana diaria.

Arquitectura: Encapsulamiento Total

Creación de una "Caja Negra" autónoma mediante Imágenes Docker Custom. El contenedor actúa como una unidad de operaciones completa: gestiona su propia capa de red (negociando la VPN con entrypoint), mantiene el túnel vivo y ejecuta la navegación en un entorno aislado.

  • Navegación Headless Robusta: Uso de Xvfb (X11 virtual) para renderizar portales gráficos sin monitor físico.
  • Capa de Red Autónoma: Gestión de certificados y reconexión automática de OpenFortiVPN/Ivanti.
  • Self-Healing: Scripts internos (health_checker.py) que reinician el contenedor si cae el túnel.
  • Gestión de Procesos: Uso de Supervisord para orquestar VPN y Bot simultáneamente.
"Resultado: Ejecución Zero Touch. Auditoría de entornos de Sanidad y Emergencias (112) saltando barreras de seguridad de forma legítima, auditada y sin intervención humana."
Docker & Compose Bash Scripting Ivanti / OpenFortiVPN Xvfb / Linux Supervisord

Ecosistema de Observabilidad Inteligente

REF: FULLSTACK-OPS
Datos Muertos & Reactividad

Los reportes en Excel eran "datos muertos": se archivaban y perdían el contexto histórico. No era posible responder a preguntas simples como "¿Cuándo empezó a degradarse el servicio?". La operación era reactiva: solo se detectaban fallos cuando el reporte de las 8:00 AM salía vacío.

Arquitectura: Data Pipeline

Implementación de una plataforma de datos completa (V3). n8n actúa como cerebro orquestador que coordina los contenedores Docker y gestiona la lógica de reintentos. Los datos se ingentan estructuradamente en un Data Warehouse (PostgreSQL) para su explotación visual.

  • Orquestación Visual: Flujos lógicos en n8n para manejo de errores y notificaciones.
  • Persistencia de Artefactos: Uso de MinIO (S3 compatible) para guardar capturas históricas.
  • Observabilidad Real-Time: Dashboards en Grafana + Loki para trazas y logs centralizados.
  • Caché & Colas: Redis para gestión de estados transitorios.
"Resultado: Transformación de 'Scripting' a 'Plataforma de Operaciones'. Detección de anomalías basada en tendencias históricas y dashboards vivos para la toma de decisiones."
n8n Workflow PostgreSQL Grafana & Loki MinIO (S3) Redis