Senior Database Developer / Data Engineer
Data engineer at UPG, a Ukrainian gas-station network, who designs and maintains ETL/ELT pipelines and analytical data models: writing and optimizing complex PostgreSQL SQL, building Python data services, orchestrating with Apache Airflow and dbt, and supporting staging/intermediate/marts warehouse layers.
- Compensation
- Not disclosed
- Location
- UA
- Work setup
- Not specified
- Seniority
- Senior
- Employment
- Not specified
- Experience
- Not specified
- Category
- Data engineering
- Posted
Skills
Must have
- 2+ years of experience in Data Engineering, SQL development, or Python development for data processing
- Practical experience with PostgreSQL
- SQL query optimization, indexes, and large tables
- Creating and maintaining views, functions, procedures, and other database objects
- Confident Python for data processing and transfer
- Working with JSON, CSV, Excel, Parquet and other data formats
- Writing maintainable, modular, testable code
- Understanding OOP, exception handling, logging, configuration management
- Experience with pandas, SQL connectors, REST API and external sources
- Apache Airflow: creating and maintaining DAGs, orchestrating ETL/ELT, dependencies, scheduling, retries, timeouts
- Airflow Connections, Variables, Secrets; pipeline monitoring and troubleshooting
- Understanding idempotency and safe re-run of processes
- dbt: creating and maintaining dbt models
- dbt sources, ref, tests, snapshots, seeds
- Jinja and macros in dbt; understanding incremental models
- Building data lineage and technical documentation; organizing staging, intermediate, marts layers
Nice to have
- Experience integrating with REST APIs: authorization, response handling, pagination, retries, error handling
- Understanding Data Warehouse, Data Lake, ETL/ELT, OLTP and OLAP principles
- Dimensional modeling, Star Schema, Snowflake Schema
- Experience with NoSQL databases
- Experience with Git, branching strategy, code review
- Understanding or practical experience setting up CI/CD
- Containerization experience with Docker
- Experience with cloud platforms AWS, Microsoft Azure, or Google Cloud Platform
- Understanding of Data Quality, Data Validation, monitoring and logging principles
- Basic understanding of AI, ML, and LLM capabilities for data processing automation
Full description
Middle/Senior Data Engineer / SQL Developer
Задачі, над якими потрібно буде працювати
SQL-розробка та робота з базами даних: розробка складних SQL-запитів, процедур, представлень та інших об’єктів бази даних для аналітичних систем.
аналіз і оптимізація продуктивності запитів, робота з індексами, планами виконання, партиціонуванням і великими обсягами даних.
побудова Data Pipelines: проєктування, розробка та підтримка надійних ETL/ELT-процесів для завантаження, трансформації та передачі даних між різними системами.
оркестрація пайплайнів за допомогою Apache Airflow та dbt.
розробка на Python: створення Python-скриптів і сервісів для обробки, перевірки, трансформації та передачі даних. Інтеграція з базами даних, REST API та зовнішніми джерелами.
моделювання даних: проєктування схем і моделей даних для аналітичних систем, Data Warehouse та Data Lake. Побудова і підтримка шарів staging, intermediate та marts.
оптимізація та підтримка: рефакторинг і підвищення продуктивності наявних SQL- та Python-розробок, усунення технічного боргу, аналіз проблем у процесах завантаження та обробки даних.
якість і надійність даних: реалізація перевірок Data Quality, валідації даних, логування, моніторингу та обробки помилок у data pipelines.
аналітична звітність: підготовка структурованих наборів даних і моделей для побудови аналітичних дашбордів та звітності.
Які навички стануть у нагоді
Загальний досвід:
від 2 років досвіду у сфері Data Engineering
SQL-розробки або Python-розробки для задач обробки даних.
Практичний досвід роботи з PostgreSQL.
досвід оптимізації SQL-запитів, роботи з індексами та великими таблицями.
досвід створення та підтримки views, functions, procedures та інших об’єктів бази даних.
Python для Data Engineering:
впевнене володіння Python для задач обробки та передачі даних.
робота з форматами JSON, CSV, Excel, Parquet та іншими форматами даних.
написання підтримуваного, модульного та тестованого код
розуміння ООП, exception handling, logging та configuration management.
досвід роботи з pandas, SQL-конекторами, REST API та зовнішніми джерелами.
Apache Airflow:
практичний досвід створення та підтримки DAG.
оркестрація ETL/ELT-процесів.
налаштування dependencies, scheduling, retries та timeout.
робота з Airflow Connections, Variables та Secrets.
моніторинг і troubleshooting помилок у pipeline.
розуміння принципів idempotency та безпечного повторного запуску процесів.