- Fecha de publicación
- Octubre 2019
- Tecnología
- Artículo
_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.
También te puede interesar
Maestría en recursos humanos España: plan de estudios, proceso y requisitos
Si bien es cierto que en el pasado no se tenía tan en cuenta la gestión de los recursos humanos en las compañías, se trata de una disciplina cada vez más valorada en las organizaciones. Con el ca...
- Publicado por _ESIC Business & Marketing School
Churn rate: qué es y cómo se calcula
Conseguir un cliente es complicado, pero retenerlo tampoco es una tarea fácil. Por eso, hay que tener muy claro qué demanda el cliente y cómo ofrecerlo, cumpliendo al máximo sus expectativas para ...
- Publicado por _ESIC Business & Marketing School
Estudiar un MBA en España: requisitos, proceso y consejos
Si existe un país atractivo para los extranjeros que quieren estudiar un MBA es España. Con su clima, el carácter de su gente, su idioma, su gastronomía, el ambiente de sus calles y el elevado niv...
- Publicado por _ESIC Business & Marketing School