¿Qué es un ingeniero de datos?
Un ingeniero de datos es un trabajador de TI cuyo trabajo principal es preparar datos para usos analíticos u operativos. Estos ingenieros de software suelen ser responsables de crear canalizaciones de datos para reunir información de diferentes sistemas de origen. Integran, consolidan y limpian datos y los estructuran para su uso en aplicaciones de análisis. Su objetivo es hacer que los datos sean fácilmente accesibles y optimizar el ecosistema de big data de su organización.
La cantidad de datos con la que trabaja un ingeniero varía con la organización, particularmente con respecto a su tamaño. Cuanto más grande sea la empresa, más compleja será la arquitectura de análisis y más datos será responsable del ingeniero. Algunas industrias son más intensivas en datos, incluida la atención médica, la venta minorista y los servicios financieros.
Los ingenieros de datos trabajan en conjunto con los equipos de ciencia de datos, mejorando la transparencia de los datos y permitiendo que las empresas tomen decisiones comerciales más confiables.
El rol del ingeniero de datos
Los ingenieros de datos se centran en recopilar y preparar datos para que los utilicen los científicos y analistas de datos. Asumen tres roles principales de la siguiente manera:
- Generalistas. Los ingenieros de datos con un enfoque general suelen trabajar en equipos pequeños, realizando la recopilación, el ingreso y el procesamiento de datos de un extremo a otro. Es posible que tengan más habilidades que la mayoría de los ingenieros de datos, pero menos conocimientos de arquitectura de sistemas. Un científico de datos que busque convertirse en ingeniero de datos encajaría bien en el rol de generalista.
Un proyecto que un ingeniero de datos generalista podría emprender para un pequeño servicio de entrega de alimentos en un área metropolitana sería crear un tablero que muestre el número de entregas realizadas cada día durante el último mes y pronostique el volumen de entrega para el mes siguiente.
- Ingenieros centrados en oleoductos. Estos ingenieros de datos suelen trabajar en un equipo de análisis de datos de tamaño mediano y en proyectos de ciencia de datos más complicados en sistemas distribuidos. Es más probable que las empresas medianas y grandes necesiten este rol.
Una empresa regional de entrega de alimentos podría emprender un proyecto centrado en la canalización para crear una herramienta para que los científicos y analistas de datos busquen metadatos para obtener información sobre las entregas. Pueden analizar la distancia recorrida y el tiempo de conducción requerido para las entregas en el último mes, luego usar esos datos en un algoritmo predictivo para ver lo que significa para el futuro negocio de la empresa.
- Ingenieros centrados en bases de datos. Estos ingenieros de datos tienen la tarea de implementar, mantener y completar las bases de datos analíticas. Esta función suele existir en empresas más grandes donde los datos se distribuyen en varias bases de datos. Los ingenieros trabajan con canalizaciones, ajustan las bases de datos para un análisis eficiente y crean esquemas de tablas utilizando métodos de extracción, transformación y carga (ETL). ETL es un proceso en el que los datos se copian de varias fuentes en un único sistema de destino.
Un proyecto centrado en una base de datos en un servicio de entrega de alimentos a gran escala, multiestatal o nacional sería diseñar una base de datos analítica. Además de crear la base de datos, el ingeniero de datos escribiría el código para obtener los datos de donde se recopilan en la base de datos de la aplicación principal en la base de datos de análisis.
Responsabilidades del ingeniero de datos
Los ingenieros de datos a menudo trabajan como parte de un equipo de análisis junto con los científicos de datos. Los ingenieros proporcionan datos en formatos utilizables a los científicos de datos que ejecutan consultas y algoritmos contra la información para aplicaciones de análisis predictivo, aprendizaje automático y minería de datos. Los ingenieros de datos también entregan datos agregados a ejecutivos y analistas comerciales y otros usuarios finales para que puedan analizarlos y aplicar los resultados para mejorar las operaciones comerciales.
Los ingenieros de datos se ocupan de datos estructurados y no estructurados. Los datos estructurados son información que se puede organizar en un repositorio formateado como una base de datos. Los datos no estructurados, como archivos de texto, imágenes, audio y video, no se ajustan a los modelos de datos convencionales. Los ingenieros de datos deben comprender diferentes enfoques de la arquitectura y las aplicaciones de datos para manejar ambos tipos de datos. Una variedad de tecnologías de big data, como la ingesta de datos de código abierto y los marcos de procesamiento, también forman parte del conjunto de herramientas del ingeniero de datos.
Conjunto de habilidades de ingeniero de datos
Los ingenieros de datos son expertos en lenguajes de programación como C #, Java, Python, R, Ruby, Scala y SQL. Python, R y SQL son los tres lenguajes más importantes que utilizan los ingenieros de datos.
Los ingenieros necesitan una buena comprensión de las herramientas ETL y las API orientadas a REST para crear y administrar trabajos de integración de datos. Estas habilidades también ayudan a proporcionar a los analistas de datos y usuarios comerciales un acceso simplificado a conjuntos de datos preparados.
Los ingenieros de datos deben comprender los almacenes de datos y los lagos de datos y cómo funcionan. Por ejemplo, los lagos de datos de Hadoop que descargan el trabajo de procesamiento y almacenamiento de los almacenes de datos empresariales establecidos respaldan los esfuerzos de análisis de big data en los que trabajan los ingenieros de datos.
Los ingenieros de datos también deben comprender las bases de datos NoSQL y los sistemas Apache Spark, que se están convirtiendo en componentes comunes de los flujos de trabajo de datos. Los ingenieros de datos también deben tener conocimientos de sistemas de bases de datos relacionales, como MySQL y PostgreSQL. Otro enfoque es la arquitectura Lambda, que admite canalizaciones de datos unificadas para procesamiento por lotes y en tiempo real.
Las plataformas de inteligencia empresarial (BI) y la capacidad de configurarlas son otro enfoque importante para los ingenieros de datos. Con las plataformas de BI, pueden establecer conexiones entre almacenes de datos, lagos de datos y otras fuentes de datos. Los ingenieros deben saber cómo trabajar con los cuadros de mando interactivos que utilizan las plataformas de BI.
Aunque el aprendizaje automático se encuentra más en el conjunto de habilidades del científico de datos o del ingeniero de aprendizaje automático, los ingenieros de datos también deben comprenderlo para poder preparar datos para las plataformas de aprendizaje automático. Deben saber cómo implementar algoritmos de aprendizaje automático y obtener información de ellos.
Por último, el conocimiento de los sistemas operativos (SO) basados en Unix es importante. Unix, Solaris y Linux ofrecen funciones y acceso de root que otros sistemas operativos, como Mac OS y Windows, no ofrecen. Le dan al usuario más control sobre el sistema operativo, lo que es útil para los ingenieros de datos.
A medida que el trabajo de ingeniero de datos ha ganado más tracción, empresas como IBM y el proveedor de Hadoop Cloudera Inc. han comenzado a ofrecer certificaciones para profesionales de la ingeniería de datos. Algunas certificaciones de ingenieros de datos populares incluyen las siguientes:
- Profesional de datos certificado es ofrecido por el Instituto de Certificación de Profesionales de la Computación, o ICCP, como parte de su programa profesional general de bases de datos. Se ofrecen varias pistas. Los candidatos deben ser miembros del ICCP y pagar una cuota de membresía anual para realizar el examen.
- Ingeniero de datos profesional certificado por Cloudera verifica la capacidad de un candidato para ingerir, transformar, almacenar y analizar datos en el entorno de herramientas de datos de Cloudera. Cloudera cobra una tarifa por su prueba de cuatro horas. Consta de cinco a diez tareas prácticas y los candidatos deben obtener una puntuación mínima del 70% para aprobar. No hay requisitos previos, pero los candidatos deben tener una amplia experiencia.
- Ingeniero de datos profesional de Google Cloud prueba la capacidad de una persona para utilizar modelos de aprendizaje automático, garantizar la calidad de los datos y crear y diseñar sistemas de procesamiento de datos. Google cobra una tarifa por el examen de opción múltiple de dos horas. No hay requisitos previos, pero Google recomienda tener algo de experiencia con Google Cloud Platform.
Al igual que con muchas certificaciones de TI, las de ingeniería de datos a menudo se basan en el producto de un proveedor específico, y las capacitaciones y los exámenes se enfocan en enseñar a las personas a usar su software.
Cómo convertirse en ingeniero de datos
Las certificaciones por sí solas no son suficientes para conseguir un trabajo de ingeniería de datos. La experiencia también es necesaria para ser considerado para un puesto. Otras formas de incursionar en la ingeniería de datos incluyen las siguientes:
- Títulos universitarios. Los títulos útiles para los aspirantes a ingenieros de datos incluyen títulos de licenciatura en matemáticas aplicadas, ciencias de la computación, física o ingeniería. Además, los títulos de maestría en ciencias de la computación o ingeniería informática pueden ayudar a los candidatos a diferenciarse.
- Cursos online. Los cursos en línea económicos y gratuitos son una buena manera de aprender habilidades de ingeniería de datos. Hay muchos videos útiles en YouTube, así como cursos y recursos gratuitos en línea, como las siguientes seis opciones:
- Aprende Python de Codecademy. El conocimiento de Python es esencial para los ingenieros de datos. Este curso no requiere conocimientos previos.
- Guía de Coursera para la administración y seguridad de servidores Linux. Este curso de cuatro semanas cubre los conceptos básicos de Linux.
- Hoja de referencia de SQL de GitHub. Este repositorio de GitHub se actualiza constantemente con ejemplos de consultas SQL.
- O’Reilly ingeniería de datos e-libros. Los títulos de la sección de arquitectura de big data cubren temas de ingeniería de datos.
- Udacity Data Ingeniería Nanogrado. Las ofertas de aprendizaje en línea de Udacity incluyen una pista de ingeniería de datos.
- Aprendizaje en base a proyectos. Con este enfoque más práctico para aprender habilidades de ingeniería de datos, el primer paso es establecer un objetivo del proyecto y luego determinar qué habilidades son necesarias para alcanzarlo. El enfoque basado en proyectos es una buena forma de mantener la motivación y estructurar el aprendizaje.
Ingeniero de datos frente a científico de datos
Los ingenieros de datos y los científicos de datos trabajan juntos. Los ingenieros de datos preparan y organizan los datos que tienen las empresas en bases de datos y otros formatos. También construyen canalizaciones de datos que ponen los datos a disposición de los científicos de datos. Los científicos de datos utilizan todos esos datos para análisis y otros proyectos que mejoran las operaciones y los resultados comerciales.
Los científicos de datos y los ingenieros de datos difieren en sus habilidades y enfoque. Los ingenieros de datos no tienen necesariamente un enfoque específico; tienden a ser competentes en varias áreas y completos en sus conocimientos y habilidades. Por el contrario, los científicos de datos suelen tener áreas de interés especializadas. Les preocupa un análisis de datos más exploratorio. Los científicos de datos abordan problemas nuevos y generales, mientras que los ingenieros de datos ponen las piezas en su lugar para hacerlo posible.
Además de los ingenieros de datos y los científicos de datos, los equipos de análisis y gestión de datos contienen una variedad de funciones y especialidades. Lea más sobre los conjuntos de habilidades y el personal necesarios para tener un sólido equipo de ciencia de datos empresariales.