|
| 1 | +# 4. Data Modeling & Manipulation |
| 2 | + |
| 3 | +Этот трек охватывает ключевые технические навыки, связанные с подготовкой данных для визуализации. Он включает в себя владение SQL, Python, dbt, понимание принципов работы хранилища данных, а также умение проектировать, создавать и поддерживать эффективные и надежные витрины данных. |
| 4 | + |
| 5 | +## BI1 (Junior) |
| 6 | +- Пишет корректные SELECT, JOIN, UNION, GROUP BY; оформляет код читаемо. |
| 7 | +- Проверяет запрос EXPLAIN-ом, избегает full scan; исправляет замечания ревьюера. |
| 8 | + |
| 9 | +## BI2 (Middle) |
| 10 | +- Использует CTE, оконные функции, массивы ClickHouse, выбирая подходящий тип данных. |
| 11 | +- Читает план запроса и переписывает его (фильтры, предагрегация, тип JOIN), получая как минимум двукратное ускорение. |
| 12 | +- Умеет настраивать ETL и создавать витрины с помощью Airflow по шаблонам коллег. |
| 13 | +- Успешно анализирует проблематику для доработок хранилища. |
| 14 | +- Скорость загрузки дашбордов не превышает 15 секунд. |
| 15 | +- Создает корректные витрины данных без дублей. |
| 16 | + |
| 17 | +## BI3 (Middle +) |
| 18 | +- Проектирует витрины с оптимальным ddl (ORDER BY, типы, партиции). |
| 19 | +- Делает peer-review сложных SQL, устраняет N+1 и дубли. |
| 20 | +- Использует партиции для обновления данных. |
| 21 | +- Понимает разницу и знает когда применять инкрементальное обновление данных или полную перезапись. |
| 22 | +- Делает стабильную и быстро загружаемую отчетность, которая не падает и не лагает. Уникальных пользователей с ошибками не должно превышать 10%. |
| 23 | +- Знает детали базы данных и умеет оптимизировать сложные запросы различными способами - изменяя структуру хранения, отчетность, или запрос. |
| 24 | +- Проактивно вносит исправления в витрины и датасеты, на которых строится отчетность. |
| 25 | +- Привлекает владельцев в качестве ревьюера, а не исполнителя, чтобы ускорить решение проблемы. |
| 26 | +- Использует dbt. |
| 27 | +- Применяет DQ. |
| 28 | +- Умеет создавать ETL, начиная с этапа интеграции данных и их очистки. |
| 29 | +- Понимает логику ETL, который создают DE. |
| 30 | +- Разбирается в чужих скриптах по автоматизации Python. |
| 31 | +- Может написать свой скрипт по автоматизации Python, используя шаблоны и примеры. |
| 32 | +- Применяет сенсоры в дагах. |
| 33 | +- Создает алерты на ошибки в ETL. |
| 34 | + |
| 35 | +## BI4 (Senior) |
| 36 | +- Проектирует архитектуру хранения данных сервисов (end-to-end пайплайн под новый аналитический продукт: raw →...→ mart). |
| 37 | +- Ведёт пост-мортемы медленных запросов, пишет гайды, организует воркшопы «Advanced SQL». |
| 38 | +- Умеет оптимизировать схему хранения данных, используя проекции, индексы и прочие вещи, если понадобится. |
| 39 | +- Проактивно следит за потреблением данных отчетами. |
| 40 | +- Проектирует ETL, применяя временные таблицы. |
| 41 | +- Скорость загрузки дашбордов не превышает 10 секунд. |
| 42 | +- Разбирается в API других сервисов (умеет подключаться и работать с API для загрузки данных и манипуляций на самом сервисе). |
| 43 | +- Пишет оптимальные скрипты по автоматизации Python (рассылка, автоматизация рутинных задач). |
| 44 | +- Оптимизирует чужие скрипты по автоматизации Python. |
| 45 | +- Находит и предлагает решения/системные подходы, которые оптимизируют работу с хранилищем. (Например, процесс Мониторинга и исправления аналитических запросов, ограничения по утилизации cpu и памяти, автоматизированные проверки новых sql запросов). |
| 46 | + |
| 47 | +## BI5 (Staff) |
| 48 | +- Является экспертом по нескольким бизнес-процессам. |
| 49 | +- Предлагает и реализует проекты по моделированию хранилища данных. |
0 commit comments