Системный анализ

С 2004 года занимался созданием web-сайтов как системный аналитик и разработчик. В числе них: собственный проект - сайт и база данных фигурного катания России, рабочие коммерческие проекты - сайты Детской футбольной лиги России и международного турнира UTLC Cup, сайты эстонской фигуристки Елены Глебовой и российского футболиста Валерия Леонова. На всех проектах собирал или формулировал бизнес-требования, разрабатывал технические задания и планы реализации. Подробнее о проектах сайтов.

В работе использую диаграммы (ER, UML Sequence Diagram, Use Case Diagram / PlantUML, Draw.io, знаком с BPMN 2.0), документацию веду в wiki-системе (Confluence, «Сфера»), задачи завожу в Jira, код храню в Git.
Инженерия данных

Много лет стремлюсь систематизировать и анализировать данные. Для ETL на работе использовал Apache Airflow и MS SSIS. Изучаю Python (Django) и работу с Big Data, поднимаю в Docker различные СУБД. Создаю свои датасеты по аэропортам России, электростанциям, НПЗ, городам. В 2022 году работал аналитиком данных в «Альфа-Банке», использовал Python и Airflow.
Базы данных и SQL

Опыт работы с SQL с 2004 года.

Могу эффективно работать как аналитиком, так и разработчиком - такой опыт был с DWH в ВТБ и «Европлане».

СУБД: Greenplum, PostgreSQL (PL/pgSQL), ClickHouse, MS SQL (T-SQL), Oracle, MySQL, Teradata, MongoDB.

Экосистема Hadoop: PySpark, Hive, Impala, HDFS

Свой проект, созданный самостоятельно: база данных фигурного катания России (главный справочный ресурс в России в 2009-19 годах)

Использую:
  • DDL (table, view, function)
  • Пишу хранимые процедуры на PostgreSQL и MS SQL Server
  • Работа с планом запроса (explain analyze) и обновление статистики (analyze)
  • Индексы (create [unique] index)
  • Разные виды джоинов (inner join, left join, full join)
  • Агрегатные функции (count, sum, avg, max, min)
  • Оконные функции (ранжирующие - row_number, dense_rank; смещения - first_value, last_value, lag)
  • Общие табличные выражения (CTE)
  • Временные таблицы и вложенные запросы
  • Выражения case, coalesce, nullif, предикат [not] exists
  • Поля JSON
DWH

Большой интерес к работе с корпоративными хранилищами данных (DWH). Умею выделять сущности, выстраивать связи между ними и проектировать архитектуру баз данных. Разрабатывал логические и физические модели данных. Понимаю версионирование записей, SCD1/SCD2, нормальные формы и методологию DataVault 2.0.

Проектирую и разрабатываю витрины данных с нуля, со сложной логикой, склейкой бизнес-историчности, инкрементальной загрузкой. Составляю маппинги S2T. Пишу хранимые процедуры. Оптимизирую запросы с учётом особенностей конкретной СУБД.

В 2022-24 годах работал системным аналитиком с функционалом разработчика на проекте миграции DWH в ВТБ. Также являлся SQL-разработчиком в «Европлане» в 2021-22 годах.

Хорошо пониманию работу MPP-систем и конкретно Greenplum (Arenadata DB).

Просмотрел три сезона лекций проекта DataTalks от «РТ» и абсолютное большинство материалов про DWH на YouTube и в подкастах.
Python

Парсинг данных игроков чемпионата России по футболу 2020/21 с сайта Championat.com: Python+Jupyter Notebook (успешное тестовое задание на разработчика аналитических систем)

Фреймворки: PySpark, Django и Django REST Framework (в процессе изучения)

Библиотеки для работы с данными: pandas, NumPy

Библиотеки для визуализации: Matplotlib, Seaborn, Plotly

Прочие библиотеки: Beautiful Soup

ML-библиотеки: Scikit-learn (fit/predict, построение моделей - дерево решений, логистическая регрессия и случайный лес). Делал кластеризацию клиентов с помощью KMeans.

Основные инструменты - VS Code и Jupyter Notebook, а также PyCharm.

Для проверки гипотез использовал тесты: t-критерий Стьюдента, U-критерий Манна - Уитни, Z-тест.

Курсы

Яндекс.Практикум:

  • «Инженер данных (Data Engineer)» (бета 6-месячного курса)
  • Managed Service for Greenplum

Karpov.Courses

  • Docker, мини-курс

Stepik

  • Постановка задачи на разработку ПО
  • Введение в Data Science и машинное обучение (Анатолий Карпов)
  • Основы статистики (Анатолий Карпов)

Прочие

  • Мини-курс Брайана Кукси «Введение в API»
Презентация

Графики в Numbers:

Статистика аэропортов и авиакомпаний (собственное исследование):

Numbers: Пассажиропоток аэропортов Краснодарского края в 2016-2020 годах Numbers: Динамика пассажиропотока аэропортов России и Краснодара в 2017-2020 годах Numbers: Перевозка грузов авиакомпанией AirBridgeCargo в 2010-2020 годах

Tableau:
Дашборд со статистикой авиакомпаний России (собственное исследование)