caso práctico
Caso práctico de data engineer para una empresa mediana de energías renovables
Desafío, Contexto, Problemas por resolver
Con sede en el Reino Unido, la empresa ofrece evaluaciones energéticas comerciales, en todo el sur del país, en forma de modelado térmico, certificados de eficiencia energética, cálculos SAP, etiquetas de eficiencia energéticos y mucho más.
Desde el principio se vio claramente la necesidad de automatizar muchos procesos. De las muchas áreas en las que era necesaria la data engineering, nos centramos en un objetivo concreto: mejorar los análisis de modelos térmicos y evaluaciones de sobrecalentamiento.
Misión, herramientas y metodología
Los candidatos a la «digitalización» eran tanto las operaciones empresariales como la analítica. Por un lado, parte de las operaciones de negocio pedían un cambio. Mientras que hasta hace poco los clientes enviaban la documentación del proyecto por correo electrónico, optamos por elegir Google Suite, Google Sheets y Google Apps Script para automatizar todo el proceso de carga de la documentación del proyecto.
Entregado finalmente como una app web e impulsado por Google apps script, que está escrito en Javascript moderno, se pide a los clientes que suban una serie de documentos a través de Google sheets. A continuación, se ejecutan funciones personalizadas que cargan los datos dinámicamente en el drive principal de Google del cliente.
Por otro lado, en el frente analítico, la empresa se apoya en gran medida en el software IESVE, una suite en profundidad de herramientas de análisis integradas que, en el momento en que se inició la integración de la data engineering, carecía de un número considerable de características.
Después de que los clientes carguen los correspondientes documentos del proyecto, sus data architects, diseñan y ejecutan modelos de simulación dinámica en 3D, generando resultados y datos del proyecto, que luego estarán disponibles a través de una API. Sin embargo, la empresa seguía echando en falta una granularidad importante y solicitaba que se diseñaran más dimensiones y características nuevas. Abordar cada nueva característica por separado nos permitió familiarizarnos a fondo con la profundidad y amplitud de la API de IESVE y considerar en detalle todas las salvedades, particularidades, posibles carencias de dicha aplicación y acomodar nuestros recursos en consecuencia.
En cuanto se completó el proceso, buscamos ampliar el análisis, es decir, diseñamos y creamos nuevos atributos, que se convertirían en nuevas características, cuyo cálculo y lógica subyacente se transferirían a un conjunto de ETL pipelines que reanudarían todas las combinaciones posibles de lógica de transformación en un banco donde cada uno de los pipelines se activaría conforme a un conjunto de reglas elaboradas conjuntamente con los arquitectos.
La obtención de datos de la API de IESVE y la recuperación de los puntos de datos calculados y los parámetros de configuración para cada tipo de modelado térmico aseguraron el éxito de la activación de la lógica ETL.
Por último, justo al final, pasando por el pipeline, más allá del banco ETL instalamos un servicio para generar informes que se encarga de dar formato a los datos para adaptarse a la estética de diseño específico de acuerdo con diversos diseños propuestos por la empresa.
Resultados obtenidos
Mientras duró este proyecto, un mes y medio aproximadamente, quedó clarísimo el poder que la data engineering y la automatización aportan a los clientes, facilitando el trabajo y acortando los tiempos en el negocio, las operaciones y la analítica, y cuando se evalúa con precisión, surgen una serie de nuevas y apasionantes oportunidades, no solo de crecimiento en toda regla, sino de una visión y comprensión más matizada de lo que se puede hacer con los datos.
Competencias imprescindibles de un Data Engineer
Estos perfiles tan relevantes deben dominar las siguientes capacidades:
- Creación, parametrización y mantenimiento de estructuras de datos y bases de datos.
- Diseño de sistemas y organizaciones de tratamiento de datos
- Análisis de datos y habilitar el Machine Learning.
- Diseño para la fiabilidad.
- Visualización de datos y promoción de políticas.
- Modelación de procesos empresariales para su análisis.
- Diseño para la seguridad y el cumplimiento.
Otras competencias importantes de un data engineer:
- Depuración y resolución de problemas.
- Herramientas ETL y software.
- Competencias de data engineering en la cloud – AWS, GCP, Azure, IBM (2+)
- Otras competencias: Hive, Apache Spark, Mongodb, MySQL, PostgreSQL.