Получи случайную криптовалюту за регистрацию!

Еще один кейс, что самообучение – наилучший форма обучения и п | Михаил Гаркунов / Аналитика для бизнес решений

Еще один кейс, что самообучение – наилучший форма обучения и профессионального роста.

В компании решили отказаться от Google Analytics, по понятным геополитическим причинам, но план продаж завязан на источники и каналы Google Analytics, а алгоритм расчета источников и каналов в Яндекс Метрике сильно отличается от GA, поэтому нужно было решить вопрос сведения данных ЯМ и GA.
Ну и для “полного счастья”:
- Дата инженеры загружены и свободных ресурсов нет. Да и целом, дата инженеров, понимающих веб-аналитики и атрибуцию трафика я не встречал…
- Серверную платформу не удалось расширить из-за ухода вендоров из РФ, поэтому пришлось MVP проект сведения каналов и источников делать на обычном ПК.

В процессе:
- 250-300 часов работы над проектом.
- 5-6 раз переписал весь код Python скриптов для ETL.
- 3-4 раза пересобрал базу из 600-700 млн. строк, т.е. загрузил 2-3 млрд. строк в ClickHouse

В итоге:
- Удалось свести 85-88% заказов в среднем по всем заказам.
- По ключевым источникам и каналам удалось добиться сведения до 95%.
- Нашел кучу инсайтов для проверки в 2023 году.

Что удалось еще?
- Прокачался как DevOps.
Научился управлять Linux сервером через командную строчку, а ранее нужен был визуальный интерфейс.
Научился работать с микро-сервисами на основе Docker. Позволяет без проблем поднять ClickHouse, который работает только на Linux, на Windows машине.
- Прокачался на Python
Перешел от просто кода к ООП и создал несколько классов для удобства работы с API Яндекса. В следующем году доведу до нормального состояния, подготовлю документацию и выложу на GitHub.
Научился делать модули / пакеты для Python, чтобы можно было удобно переносить наработки между компьютерами.
- Прокачался как дата инженер
Познакомился с ClickHouse и научился с ним работать на практике и в целом построил фундамент для будущей системы сквозной аналитики на базе Яндекс Метрики.
Научился писать оптимальный код для ETL c последовательным итерационным обновлением данных, что позволило реализовать весь ETL на обычном ПК, который стоят на порядок дешевле промышленного сервера. Да, промышленная реализация работы с данными потребует нормального сервера, как MVP можно реализовать на обычном ПК даже с промышленным объемом данных.

В конечном результате у меня есть хорошие и детальное ТЗ в формате прототипа, т.е. дата инженеру нужно проверить и доработать скрипты для внедрения их в промышленные системы, что можно будет сделать достаточно быстро.