Data Engineer | Python + SQL + PostgreSQL
- Hiring from
- Spain
- Work type
- Remote
- Posted
Show job descriptionHide job description
Data Engineer | Python + SQL + PostgreSQL
Sobre el proyecto
Buscamos un/a Data Engineer con experiencia sólida en Python, SQL y PostgreSQL para incorporarse a un proyecto con un fuerte enfoque en tecnologías Open Source.
Buscamos un perfil hands-on, acostumbrado a desarrollar soluciones de datos desde cero mediante código. En este proyecto no se trabaja con herramientas ETL visuales ni soluciones de tipo drag & drop: el trabajo se realiza directamente mediante scripts Python y SQL avanzado.
El cliente utiliza StarRocks como motor analítico de alto rendimiento, por lo que buscamos profesionales con una base sólida en bases de datos relacionales, Data Warehousing y optimización SQL, con capacidad para adaptarse rápidamente a nuevas tecnologías.
Responsabilidades
Desarrollo de procesos de ingesta y transformación de datos mediante Python y SQL.
Creación de scripts desde cero para procesamiento de datos y archivos.
Diseño y desarrollo de procesos ETL / ELT completamente orientados a código.
Gestión de cargas incrementales y cargas completas.
Implementación de mecanismos robustos de control de errores y recuperación ante fallos.
Desarrollo de controles de calidad de datos mediante código.
Optimización de consultas y procesos sobre grandes volúmenes de información.
Diseño, creación y optimización de índices en PostgreSQL.
Análisis de planes de ejecución mediante EXPLAIN.
Identificación y resolución de problemas de rendimiento.
Trabajo con estructuras de datos y optimización del consumo de memoria durante los procesos de ingesta.
Automatización y mantenimiento de procesos de datos.
Colaboración en el diseño y evolución de soluciones analíticas.
Requisitos imprescindibles
Python
Experiencia sólida desarrollando scripts Python desde cero.
Experiencia en tratamiento e ingesta de datos.
Gestión eficiente de archivos, especialmente grandes volúmenes de información.
Conocimientos sobre gestión de memoria y uso adecuado de estructuras de datos.
Gestión robusta de excepciones y errores durante procesos de ingesta.
Capacidad para desarrollar código mantenible y reutilizable.
SQL avanzado
Dominio de SQL complejo.
Experiencia con diferentes tipos de JOIN y relaciones entre tablas.
Funciones de agregación y filtros complejos.
Dominio de WHERE vs HAVING.
Detección y tratamiento de duplicados.
Gestión de registros huérfanos.
Dominio de Window Functions.
Capacidad para optimizar consultas y trabajar con grandes volúmenes de datos.
PostgreSQL
Experiencia real trabajando con grandes tablas y volúmenes de datos.
Creación, gestión y optimización de índices.
Interpretación de planes de ejecución.
Experiencia utilizando EXPLAIN.
Capacidad para detectar cuellos de botella.
Conocimiento de situaciones en las que un índice puede resultar contraproducente.
ETL / ELT
Experiencia desarrollando procesos ETL/ELT mediante código.
Diseño de cargas incrementales y completas.
Gestión de errores durante procesos de ingesta.
Capacidad para diseñar mecanismos de recuperación y control.
Implementación de validaciones y controles de calidad de datos.
Se valorará
Experiencia con StarRocks.
Experiencia con bases de datos analíticas columnares como ClickHouse o Apache Doris.
Conocimientos de Data Warehousing.
Modelado dimensional:
Esquema en estrella
Tablas de hechos
Dimensiones
Conocimientos de arquitectura OLTP vs OLAP.
Experiencia con Git.
Conocimientos de herramientas de orquestación como Apache Airflow, Cron u otras soluciones Open Source.
Conocimientos básicos de visualización de datos, por ejemplo Power BI.
Importante
No buscamos perfiles orientados a Big Data tradicional ni profesionales cuyo trabajo se base principalmente en herramientas ETL visuales.
No es necesario tener experiencia previa en Spark, Hadoop, Hive o HDFS. El proyecto está orientado principalmente a una ingeniería de datos relacional y analítica, basada en:
Python + SQL + PostgreSQL + ETL/ELT por código.
Perfil que buscamos
Buscamos una persona muy técnica, autónoma y hands-on, acostumbrada a programar y resolver problemas directamente mediante código.
Será especialmente importante tener una base sólida de SQL, PostgreSQL, optimización de consultas y desarrollo de procesos ETL, así como capacidad para trabajar con grandes volúmenes de datos y aprender rápidamente nuevas tecnologías como StarRocks.
Condiciones
100% remoto.