¿Qué es un data engineer? | ESIC Skip to main content
Image
¿Qué es un data engineer?

¿Qué es un data engineer?

Technology | Article
  • Visit
    9732
  • Octubre 2019
  • Date of publication
  • Octubre 2019
  • Technology
  • Article
ESIC Business & Marketing School

ESIC Business & Marketing School

ESIC Business & Marketing School.

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 y Business Analytics.

  • Date of publication
  • Octubre 2019
  • Technology
  • Article
  • Author

You may also be interested in

Customer success: definition and how to implement it

Business

In today's business environment, where competition is fierce and customer expectations continue to grow, customer success has become a key element in ensuring the success of a company's business.

What is the Ishikawa diagram and how to do it. Examples

Business

How many times have we tried to solve a problem by patching it up, without going deep into the real cause, into the root of the problem? There are many companies that, when faced with crises or problems, try to...

JavaScript: what it is, what it is used for and examples

Technology

Undoubtedly, JavaScript is one of the most widely used programming languages worldwide. In fact, as early as 2021 it was being used by 14 million programmers according to Genbeta. The trend has been increasing...

Shall we inform you?