Esta publicación fue revisada por: Luis Moneda, Tiago Magalhães, Jessica Sousa, Cristiano Breuel y Henrique Lopes


Los Científicos de Datos (DS) e Ingenieros de Aprendizaje Automático (MLE) existen desde hace algún tiempo (al menos según los estándares tecnológicos), pero eso no significa que las definiciones y expectativas específicas para cada función estén bien acordadas en la industria en su conjunto.

Lejos de ello. Muy a menudo la gente no está segura de en qué se diferencian exactamente y en qué se superponen.

En esta publicación compartiremos nuestra opinión sobre este tema, es decir, el alcance de estos roles en Nubank. 

Como verás en las siguientes secciones, hay algunas dimensiones que analizar aquí, por lo que hay una respuesta corta con los insights más importantes y una respuesta larga donde explicamos lo que sucede con más detalle.

Entonces, ¿en qué se diferencian los roles DS y MLE? ¿Dónde residen las similitudes y en qué se diferencian?

Respuesta corta: Es un espectro de habilidades y se superponen

skills needed for a functioning squad lie on a spectrum
Las habilidades necesarias para un equipo funcional se encuentran en un espectro, y DS/MLE se encuentran justo en el medio de él.
El grado de superposición dependerá de qué tan maduro sea su equipo (con respecto a las soluciones de Aprendizaje Automático).

Descubre las oportunidades

Respuesta larga: Depende

Depende mucho, sobre todo del tipo de equipo en el que estés.

Aunque se pueden definir pautas generales para cada función, habrá mucha variación en las actividades diarias típicas de un DS o MLE en Nubank, principalmente dependiendo del tipo de equipos en los que estén trabajando.

Las dos distinciones más importantes suelen ser: 

  • a) qué tan maduro es el equipo con respecto a las soluciones DS/ML
  • b) si ese equipo está más centrado en modelos en tiempo real o por lotes.

Como regla general, cuanta más experiencia tenga un equipo en la aplicación del aprendizaje automático a problemas empresariales, menos superposición habrá entre los científicos de datos y los ingenieros de aprendizaje automático. 

En los equipos con mayor madurez, el enfoque suele cambiar de implementaciones ad-hoc a soluciones escalables y rentables.

La superposición DS/BA está presente en todos los equipos. Aunque los DSs empiezan a trabajar en modelos más especializados a medida que crece la madurez del equipo, estos dos roles son clave porque conectan el mundo de los datos con el mundo de los negocios.

En los equipos orientados a la transmisión en tiempo real, los MLE serán los más cercanos a los ingenieros de software habituales, ya que ejecutarán muchas tareas similares aquí. Por el contrario, los MLE tendrán un alcance más cercano al de los ingenieros analíticos (AE) y los ingenieros de datos en equipos donde los modelos se ejecutan en lotes o en trabajos de larga duración.

El siguiente diagrama muestra lo que entendemos que son estas diferencias de equipo. Los analizaremos en detalle en las siguientes secciones.

General overview of types of teams
Descripción general de los tipos de equipos:
 El eje X separa los equipos de baja madurez de los de alta madurez, con respecto a las soluciones basadas en ML.
El eje Y separa los equipos en los que los modelos deben proporcionar resultados justo a tiempo (enfoque en tiempo real) frente a aquellos en los que podemos permitirnos puntuar instancias por lotes 

Tipos de equipos

1) Enfoque en tiempo real, baja madurez

Diagram showing the different roles present in a low-maturity, real-time-focused squad.

En una plantilla que está trabajando en su primer modelo en tiempo real hay mucha ambigüedad en el aire. Aún no está claro qué tareas deben realizarse (y quién debe realizarlas), por lo que esto da como resultado una gran superposición entre roles. Se espera que todos desempeñen un papel más “generalista” en todo momento.

Puntos clave

  • El MLE conecta el “mundo de la ingeniería” y el “mundo de los datos”. Las habilidades de comunicación son clave aquí.
    • Tendrán que desempeñar varias funciones, por lo que se superponen mucho con los Ingenieros de Desarrollo de Software (SDEs) y los Ingenieros de Confiabilidad del Sitio (SREs).
  • ¡Considerable superposición entre científicos de datos e ingenieros de aprendizaje automático!
    • Tendrán que trabajar juntos para acordar los detalles de implementación, resolver las compensaciones (rendimiento versus velocidad, desempeño versus complejidad, desempeño versus tiempo de comercialización, etc.) y solucionar problemas como el sesgo del servicio de trenes.
  • Hay mucha superposición entre los científicos de datos (DS) y los analistas de negocios (BA): se necesita mucha interacción para traducir problemas comerciales a veces vagos en modelos, políticas y acciones a tomar.
  • Probablemente se espera que los DSs proporcionen a los Gerentes de Producto (PMs) experiencia técnica para ayudarlos a priorizar las tareas y definir el trabajo pendiente del equipo.

2) Enfoque en tiempo real, alta madurez

Diagram showing the different roles present in a high-maturity, real-time-focused squad.

Se trata de equipos que ya han tenido experiencia en la aplicación de modelos en tiempo real a un par de problemas empresariales. Las personas comprenden las responsabilidades de cada rol y cuáles son los desafíos habituales. El enfoque se desplaza de la implementación al mantenimiento, la optimización y la eficiencia.

Puntos clave

  • La superposición entre DS y MLE ha disminuido considerablemente, pero todavía hay algunas tareas que pueden compartir, como monitorear y depurar problemas de datos.
  • Los MLEs dedicarán mucho tiempo a mantener, depurar y monitorear los modelos existentes, por lo que las habilidades de SRE ganan en importancia
  • Las habilidades SDE siguen siendo muy útiles para los MLE, especialmente para crear herramientas que hagan que el procesamiento sea más simple y eficiente (por ejemplo, extraer patrones comunes en bibliotecas, refactorizar código, etc.). 
  • La superposición entre DS y BA disminuye: los problemas comerciales ahora son más claros y los científicos de datos generalmente pueden dedicar más tiempo a optimizar y ajustar los modelos.
  • Probablemente ya no habrá superposición entre DS y PM en este punto: el BA probablemente podrá traducir los objetivos comerciales en tareas técnicas (un gerente de tecnología también puede participar aquí).

3) Enfoque en lotes, baja madurez

Diagram showing the different roles present in a low-maturity, batch-focused squad.

Los equipos centrados en lotes sin modelos de ML previos generalmente intentarán adaptar sus rutinas de datos (es decir, flujos ETL) y/o administradores de programación (por ejemplo, trabajos cron, flujo de aire) para admitir la puntuación en lotes. Una vez más, es de esperar que haya mucha superposición entre varios roles.

Puntos clave

  • Al igual que en el escenario en tiempo real, existe una superposición considerable entre los roles de MLE y DS: necesitan comunicarse con frecuencia para estar al tanto de lo que hacen los demás.
  • Una vez más, los BAs y DSs deberán estar en estrecho contacto para asegurarse de que los modelos de ML realmente generen valor comercial.
  • Las habilidades de Ingeniería Analítica (AE) serán útiles para los MLEs.
    • El preprocesamiento de datos, la limpieza y la ingeniería de funciones consumirán mucho tiempo para su construcción y esto generalmente se realiza en herramientas como Spark o bases de datos relacionales (es decir, mucho SQL).

4) Enfoque en lotes, alta madurez

Diagram showing the different roles present in a high-maturity, batch-focused squad.

Un equipo de alta madurez y centrado en lotes ya tendrá varios modelos en producción y la mayoría de los problemas iniciales (implementación, integridad de datos, monitoreo) ya se habrán resuelto para los modelos individuales, por lo que la atención se centra en el escalamiento y la eficiencia. Se reduce la superposición entre DS/MLE.

Puntos clave

  • Menos superposición entre MLE y DS, ya que el equipo ya comprende los tipos de tareas necesarias y las personas tienen expectativas más claras.
  • Un poco menos de superposición entre BA y DS, pero aún necesitarán comunicarse, como en los equipos de enfoque en tiempo real y de alta madurez.
    • Los DSs podrán centrarse en tareas más técnicas, como optimizar modelos, agregar nuevas funciones, etc.
    • De manera similar, hay menos superposición entre DS y PM, por la misma razón.
  • La superposición entre MLE y los Ingenieros de Analítica no desaparece. Una vez que se alcanza un determinado nivel de madurez en equipos orientados por lotes, la atención suele centrarse en hacer las cosas más precisas, más eficientes y más económicas
    • Esto suele incluir cosas como optimización de consultas, rutinas ETL y otros flujos relacionados con la gestión de datos.
  • Las habilidades generales de ingeniería de software (es decir, SDE) vuelven a ser importantes para los MLEs
    • La eficiencia y la rentabilidad también se logran mediante la redacción de herramientas ad hoc y la refactorización/deduplicación de responsabilidades entre modelos.

5) Equipos horizontales/de apoyo

Diagram showing the different roles present in a horizontal team, focused on support and ml-ops.

Hay Ingenieros de Aprendizaje Automático (rara vez, también Científicos de Datos) que trabajan en equipos de soporte horizontales. Es difícil encajarlos en las descripciones anteriores, entonces, ¿qué les sucede?

Bueno, antes que nada, ¿a qué nos referimos con equipos horizontales? 

En el ámbito de la ciencia de datos/aprendizaje automático, los equipos horizontales son equipos de equipos cruzados que trabajan con varias unidades de negocios a la vez, brindando soporte y creando herramientas y plataformas para que las utilice el resto de la empresa. 

Recientemente, esto también se conoce como MLOps (ML Operations).

Puntos clave

  • En los equipos de soporte/plataforma, normalmente no hay científicos de datos. La mayor parte del trabajo de plataforma/herramientas no es tan diferente del trabajo normal de SDE/SRE, por lo que pueden realizarlo ingenieros de aprendizaje automático.
    • Sin embargo, es importante que los MLEs horizontales comprendan al menos los conceptos básicos del trabajo de los científicos de datos para poder respaldarlos mejor.
  • La superposición de SDE es grande aquí (los equipos horizontales suelen ser responsables de crear/mantener las herramientas utilizadas por otros equipos), por lo que las habilidades generales de ingeniería de software son esenciales.
    • De manera similar, para las habilidades de AE, los flujos por lotes también necesitarán herramientas, soporte, etc.
  • Las habilidades de SRE también son importantes, ya que las herramientas y los procesos entre equipos fallarán inevitablemente, lo que requerirá soporte, rotaciones de guardia, monitoreo, depuración, etc.
  • Incluso si el equipo tiene un PM dedicado, los MLE deberán usar un sombrero de PM para ayudar a priorizar lo que se debe hacer.

Descripciones de Funciones Sugeridas

Con todas estas especificidades en mente e independientemente del tipo de equipo, todavía hay algunas actividades principales que están inequívocamente dentro del alcance de los científicos de datos y los ingenieros de aprendizaje automático, respectivamente.

Científico de Datos: Descripción de Función Sugerida

Debería hacer

  • Preparación de datos: preprocesamiento de datos, limpieza de datos, creación de tablas, extracción de funciones, selección de funciones
  • Trabajo de modelado: estrategias de muestreo, modelado, formación, evaluación, optimización.
  • Comunicación: explicar y presentar análisis, conclusiones y compensaciones a las partes interesadas y a los tomadores de decisiones. 
  • Enfoque empresarial: Ayudar a los expertos empresariales a definir qué problemas debe manejar DS/ML (y cómo). 

Puede hacer

  • Monitoreo/depuración de modelos
  • Análisis y estimaciones relacionadas con el impacto empresarial de los modelos (por ejemplo, definir políticas, umbrales de puntuación, etc.)

Ingeniero de Aprendizaje Automático: Descripción de Función Sugerida

Debería hacer 

  • Implementación: Todo el trabajo relacionado con tomar un modelo e integrarlo dondequiera que se vaya a ejecutar en producción (sin importar si es por lotes o en tiempo real).
  • Soporte de implementación/ciclo de vida: Ocuparse de las rutinas de CI/CD y solucione los problemas a medida que surjan. Desarrollar soluciones ad-hoc como scripts.
  • Comunicación: cerrar la brecha entre ingeniería (por lotes y en tiempo real), científicos de datos y partes interesadas del negocio.
  • Enfoque empresarial: Ayudar a DS y a las partes interesadas a comprender el esfuerzo/costo de implementación de las decisiones, ayudarlos sugiriendo compensaciones.

Puede hacer

  • Monitoreo/depuración de modelos
  • Ayudar a las partes interesadas y a los líderes a definir qué problemas deben ser manejados por DS/ML (y cómo). 

Relacionado

Otros roles

Una empresa moderna se compone de varios roles y, por supuesto, no los incluimos todos en los diagramas. Entre los que pueden interactuar de alguna manera con DS/MLE, tenemos:

  • Ingenieros de Desarrollo de Software (SDE)
    • El SDE es su ingeniero de software generalista habitual. Un SDE construye sistemas, trabaja en sistemas normales (no ML) y realiza tareas relacionadas. Las responsabilidades de las SDE se superponen en su mayoría con las de los MLEs.
  • Ingenieros de Confiabilidad del Sitio (SRE) (también conocidos como Ingenieros de Producción)
    • Los SRE son responsables de monitorear, solucionar problemas de los sistemas, lidiar con interrupciones, soporte de guardia, etc. Una vez más, los MLEs a menudo usarán el “sombrero” de los SRE, principalmente cuando se trata de sistemas y herramientas basados en ML.
  • Analistas de Negocios (BA)
    • Los BAs son analistas generalistas cuyo trabajo principal es impulsar los objetivos comerciales utilizando los datos como principal fuente de información. Muy a menudo, los científicos de datos interactúan estrechamente con los BAs para determinar los objetivos comerciales y cómo se relacionan con los modelos, etc.
  • Ingenieros de Analítica (AE) 
    • También llamados analistas de datos en algunas otras empresas, generalmente tienen la tarea de mantener la integridad de los datos desde un punto de vista semántico. Sus responsabilidades incluyen gestión/mantenimiento de bases de datos, optimización de consultas, herramientas basadas en SQL y rutinas generales de ETL.
  • Gerentes de Producto (PM)
    • Se trata de personas que piensan en las necesidades del cliente y, por lo general, impulsan el trabajo pendiente. Se puede esperar que un científico de datos comunique/traduzca conceptos de modelado a los PM. Los científicos de datos senior pueden incluso “usar un sombrero de PM” de vez en cuando.
  • Ingenieros de Datos (DE)
    • Los ingenieros de datos trabajan garantizando la integridad y la calidad general de los datos utilizados por la empresa en su conjunto (no solo DSs y MLEs). Aunque los DE generalmente funcionan en un nivel más bajo de abstracción (optimizando bases de datos, tablas y similares), puede haber ocasiones en las que un MLE (o incluso DS) tenga que interactuar con ellos para solucionar problemas de datos (generalmente en equipos centrados en lotes).
  • Analistas de Operaciones (Ops) 
    • Los equipos de operaciones son los puestos de cara al usuario para las empresas B2C, interactuando directamente con los usuarios finales y resolviendo sus problemas de forma individual, a través de las redes sociales, herramientas CRM, chat/correo electrónico, etc. Tanto los científicos de datos como los ingenieros de aprendizaje automático pueden interactuar con los Analistas de Operaciones porque a veces son los consumidores intermedios o las partes interesadas de los modelos.

All information here is to be taken as a rough guideline only! While we have tried to make the text as widely applicable as possible, what works for us at Nubank may not necessarily work for everyone.

Descubre las oportunidades