Pasar al contenido principal
Imagen
¿Qué es un data engineer?

¿Qué es un data engineer?

Tecnología | Artículo
  • Enero 2018
  • Fecha de publicación
  • Enero 2018
  • Tecnología
  • Artículo
Texto

Existen tantas definiciones de data engineer como profesionales que se dedican a esta rama del desarrollo de aplicaciones. A diferencia de sus primos los data scientists, el de data engineer es un rol que no aparece con grandes rótulos de neón.

Se trata de una tarea silenciosa pero fundamental para el desarrollo de sistemas de información complejos, en particular aquellos que hacen uso de las tecnologías big data.

En el proceso de tratamiento avanzado de datos, los data scientists entrenan modelos que extraen conocimiento sobre el problema a tratar a partir de los datos usando herramientas matemáticas y conocimientos del dominio de negocio.

Pero antes de que sea posible definir y entrenar el modelo es necesario tener disponible un conjunto de datos válido sobre el que trabajar.

Para ello es necesario obtener, depurar y preparar los datos para su explotación. El encargado de realizar esta tarea es, cómo no, el data engineer, que es el encargado de asegurarse de definir e implementar un flujo de datos desde su origen hasta su explotación de una forma controlada y automatizada.

Son por tanto un componente vital en el proceso de análisis avanzado de los datos y son imprescindibles en cualquier empresa que pretenda que los datos sean el centro de su actividad. Ya sea para la toma de decisiones o para su monetización.

Por tanto, en una definición formal podríamos decir que el data engineer es el profesional enfocado en el diseño, desarrollo y mantenimiento de los sistemas de procesamiento de datos dentro de un proyecto big data.

¿Qué conocimientos le son útiles a un data engineer para llevar a cabo sus
funciones?

En primer lugar debe tener un conocimiento fluido de bases de datos relacionales y del lenguaje de consulta SQL. Esto le da el conocimiento sobre las técnicas de modelado de datos más utilizadas y conocimiento sobre cómo acceder a los datos de origen cuando estos residen en este tipo de almacenamiento.

En el mundo del big data no se huye tampoco del uso de esta tecnología cuando el caso en cuestión lo requiere. Además dado que el SQL es un estándar en lo referente a las consultas de datos, cada vez más y más herramientas big data lo soportan como lenguaje de acceso a los mismos.

El data engineer debe conocer técnicas de limpieza, sumarización y validación de los datos, de modo que la información llegue a los usuarios de la misma en la forma más adecuada para su correcta explotación.

El data engineer conoce como usar de forma óptima motores de procesamiento de datos big data de alto rendimiento como MapReduce, Spark o Flink.

Entre sus tareas habituales suele encontrarse el dar soporte a la configuración de los clusters de procesamiento, número de cores, memoria y otros parámetros de bajo nivel. Todo enfocado a que la ejecución de los modelos sea lo más eficiente.

¿Qué tecnologías son clave para un data engineer?

Entre las tecnologías usadas por un data engineer suelen encontrarse otras como bases de datos no relacionales y cómo modelar los datos en ellas. Ejemplos de estas tecnologías son HBASE, Cassandra o MongoDb. También es interesante que conozca el uso de motores de indexación como SolR o ElasticSearch.

En los sistemas de obtención de datos, en la actualidad, es muy importante para un data engineer el tener conocimiento de las tecnologías que permiten el acceso a los mismos en tiempo real. Generalmente hablamos de tecnologías de streaming, como Flume, Kafka o Spark Structured Streaming.

Su sistema operativo habitual es linux donde un data engineer debería tener gran soltura a la hora de desarrollar sus actividades habituales. Sus lenguajes de programación habituales son Java, Scala o Kotlin para el desarrollo de procesos de tratamiento de datos.

Y Python como lenguaje para el análisis y preparación previa de los datos y otras tareas de soporte al proceso de los mismos. También debe conocer las técnicas y herramientas habituales hoy en día para el desarrollo de aplicaciones git, metodologías ágiles, etc…

Además, es cada día más urgente para él tener conocimientos del desarrollo de aplicaciones nativas para la nube. En el mundo empresarial actual éste es un movimiento que cada vez más y más empresas están llevando a cabo. Conocer las diferencias entre el desarrollo de aplicaciones locales y basadas en la nube es necesario para realizar este movimiento con seguridad.

Para terminar, como profesional el data engineer debe ser capaz de moverse con confianza dentro de una gran cantidad de campos diferentes de la informática de sistemas y no debe parar en ningún momento de aprender y añadir nuevas herramientas a su cinturón.

¿Quieres dominar las tecnologías Big Data y convertirte en Director de Proyectos end to end? Fórmate con el Máster en Big Data Management de ICEMD. Toa la información e inscripciones, aquí.

  • Fecha de publicación
  • Enero 2018
  • Tecnología
  • Artículo

También te puede interesar

Salesforce y el CRM

Marketing y Comunicación

Si el mundo del CRM y el marketing fuese una carrera de Fórmula 1, el equipo de marketing tendría que prepararse como lo hacen las escuderías.  ¿Qué es salesforce? Es más que un CRM. Sirv...

Impresiona al cliente; te juegas la venta en ello

Comercial y Ventas

«Las primeras impresiones nunca tienen una segunda oportunidad». Charles R. Swindoll En los tres primeros segundos, cuando conocemos a alguien o nos presentan algo, hacemos suposiciones que n...

Clickbait, failure & the Hall of Fame

Management

La búsqueda del éxito como fin en sí mismo acostumbra a desvirtuar la esencia sobre la que se construye toda compañía. Los intereses espurios de unos pocos se vuelven verdaderos anzuelos que act�...