Cómo desarrollar artefactos que agilicen el trabajo de tus equipos de datos

Datos confiables

Aquellos que hemos trabajado en proyectos de Software, sabemos que para construir un Software de calidad es imprescindible contar con una buena metodología DevOps, en virtud a que promueve el trabajo colaborativo entre los equipos de desarrollo y operación para estandarizar, asegurar y desplegar los desarrollos según los estándares requeridos por la organización.

Ahora bien, si pensamos en el mundo de los datos, vemos que cada día aparecen nuevas tecnologías, nuevas bases de datos y distintas formas de hacer las cosas. 

Que representan un gran riesgo para generar datos confiables.

En este artículo hablaremos de cómo crear artefactos o piezas de software estándares y reutilizables que permitan a los equipos de datos reducir el esfuerzo aplicado en su trabajo.

Antes de comenzar daremos algunos ejemplos de lo que consideramos una pieza de software en datos.

  • Cuántas veces nos ha pasado que tenemos que normalizar un rut? o un correo? o un teléfono? en realidad cualquier dato de un cliente
  • Cuántas veces nos ha pasado que tenemos que normalizar la limpieza de nuestros datos?
  • O simplemente vemos que todos nuestros ingenieros de datos integran o despliegan en producción a su manera

Analizando rápidamente estos puntos observamos algunos problemas que tenemos frecuentemente, por ejemplo: datos inconsistentes y trabajo duplicado que nos impiden reducir los riesgos de productos de datos defectuosos o no confiables y escalar de una forma eficiente.

Revisando en detalle estos problemas, tenemos que los datos inconsistentes se deben a las múltiples formas en la que los ingenieros de datos hacen las cosas, mientras que el equipo de gobierno de datos se esfuerza en generar reglas de negocio que corrijan las cosas.

Por otro lado, el trabajo duplicado se debe a que diversos integrantes del equipo, de las áreas, gerencias y la organización realizan tratamientos de datos similares incluso con pequeñas variaciones que se alejan de los lineamientos de gobierno de datos.

En conclusión vemos que los ingenieros de datos o analistas avanzan por su lado, mientras que el equipo de gobierno de datos busca la forma de reparar las incidencias en el camino.

Mientras que los gerentes de las áreas de datos buscan generar nuevos proyectos de datos cada vez más rápidos y eficientes.

Para resolver estos problemas te recomendamos seguir los siguientes lineamientos

Piensa en módulos

Uno de los puntos más importantes para reducir el trabajo es pensar en módulos esto quiere decir que los ingenieros de datos desarrollen componentes por cada funcionalidad que tenga un potencial de negocio.

Una forma efectiva de realizar esto, es hacer una reunión con algunos integrantes de gobierno de datos y otros de ingeniería de datos, para definir las funcionalidades claves que se deberán utilizar. En este punto no te limites a filtrar u omitir ideas, todas las ideas aportan y se podrán filtrar en etapas posteriores.

Esta reunión sólo tiene como objetivo identificar ¿Qué necesitamos?

Si quieres hacerlo más didáctico y gráfico puedes utilizar herramientas de Design Thinking.

Cuando este proceso haya terminado, recomendamos que el equipo de gobierno de datos tome estas funcionalidades claves y las valide con las áreas de negocio que se verían beneficiadas.

El feedback obtenido con las áreas de negocio será de suma importancia, dado que pueden ayudarnos a definir nuevas funcionalidades y a ponderar las funcionalidades según el impacto que representan al negocio, que a la vez representan un beneficio para nuestra organización. Esto lo consideramos nuestro ¿Por qué?

Es importante que priorices y comiences generando las funcionalidades que representen un mayor beneficio para la organización. No más de 3 por iteración.

Cuando hayamos completado estas etapas, recién debemos pensar en cómo generar estos módulos / artefactos.

Creación de artefactos

En esta etapa se toman puntos más técnicos, por lo tanto, deberían estar dedicados tus ingenieros de datos, no obstante, si ellos no poseen muchos conocimientos en desarrollo de software puedes sumar a tu equipo a algunos desarrolladores, arquitectos de software y devops para que complementen a tu equipo.

Los artefactos que se van a generar deben ser seguros, de buena calidad y reutilizables, por lo tanto, recomendamos agregar flujos automatizados que permitan validar y cumplir cada una de estas etapas.

Para conseguir esto, puedes generar un flujo CI/CD (integración y despliegue continuo) que automatice el análisis de la calidad del código, detectando incidencias, bug, código defectuoso, vulnerabilidades y lo paquetizado en un objeto reutilizable y lo almacene en un repositorio de fácil acceso y utilización.

Esto te permitirá reducir el esfuerzo de tus ingenieros de datos, dado que ellos podrán acceder a los artefactos que resuelven problemáticas comunes y que tienen un impacto considerable para el negocio.

No obstante, para los flujos CI/CD todavía necesitas personas con el cargo de DevOps.

Si quieres hacer aún más eficiente este proceso y no depender de las personas con rol DevOps que suelen ser escasos y normalmente no hay en los equipos de datos. 

Puedes realizar otra reunión entre los equipos de ingeniería, desarrollo y DevOps para generar templates de DevOps que permitan automatizar y generar artefactos de DevOps que agilicen aún más el trabajo de los ingenieros.

El escenario al que debemos aspirar como líderes de equipos de datos es:

  • tener un proceso automatizado de generación de nuevos artefactos de datos
  • tener un catálogo que permita el descubrimiento y búsqueda de artefactos de datos
  • promover el ciclo de trabajo expuesto en este artículo con otras áreas de negocios para agregar más usuarios, más casos y más beneficios para tu organización

Una vez que contemos con variados artefactos que representen un beneficio para el negocio, debemos comenzar con una etapa que es reducir la complejidad del trabajo de los ingenieros de datos para que éstas capacidades puedan ser utilizadas por personal más generalista.

¿Quieres aumentar la confiabilidad de tus datos?

Si te gusto este blog y quieres implementarlo en tu compañía no dudes en revisar nuestros servicios de Data Reliability.

¡QUIERO SABER MÁS!