Вам понадобятся знания SQL и Python, чтобы пройти курс

Освоите актуальные инструменты и сможете сменить профессию или вырасти на текущей должности

Metabase
Airflow
PostgreSQL
MongoDB
Docker
Redis
Yandex.Cloud
Kafka
Hadoop
Apache Spark
Spark Streaming
NoSQL

Программа курса

Курс идёт 6,5 месяцев, нагрузка ∼12 часов в неделю
3 темы・1 проект・~4 часа
Бесплатно
Как стать инженером данных
1 модуль — бесплатно, чтобы вы попробовали курс и решили, подходит ли он вам
  • SQL
  • PostgreSQL
  • Metabase
Входное тестирование
Ответите на несколько вопросов и поймёте, достаточно ли у вас знаний и навыков, чтобы комфортно проходить курс
Окружение инженера данных
Узнаете, чем занимается инженер данных и как именно он работает с данными, а ещё выясните, чем отличаются инженеры данных от других специалистов
Инфраструктура инженерии данных
Разберётесь в инструментах и технология, которыми пользуются инженеры данных на разных этапах работы
Примерите роль начинающего инженера данных, который только вышел на работу в IT‑компанию: получите требования от лида и построите по ним витрину данных
1
5 тем・1 проект・2 недели
Как построить аналитическое хранилище данных
  • Python
  • PostgreSQL
  • DBeaver
  • DWH
  • SCD
PostgreSQL и DBeaver
Виды данных по степени строгости организации, различия и назначение баз данных SQL и NoSQL, характеристики PostgreSQL, интерфейс и возможности DBeaver
Нормальные формы
Понятие нормализации, нормальные формы
Знакомство с DWH
Минусы нормализации, хранилище данных, OLTP и OLAP, денормализованные модели
Погружение в DWH
Сбор требований, подходы Инмона и Кимбалла, современные модели DWH, выбор подхода для DWH, создание процессов миграции данных
SCD и его типы
Понятие и типы
Построите витрину с инкрементальной загрузкой для аналитики аудитории интернет‑магазина
2
2 темы・1 проект・3 недели
Работа с данными в хранилище
  • PostgreSQL
  • VIEW
  • Витрина данных
Витрина данных и VIEW
Понятие витрины данных, транзакции, инкрементальная загрузка данных, понятие VIEW, визуализация данных
Оптимизация запросов
План запроса, как исследовать запрос, типы индексов и способы их создания
Приведёте в порядок модель данных и осуществите миграцию в текущем хранилище
3
4 темы・1 проект・3 недели
ETL: автоматизация подготовки данных
  • Python
  • PostgreSQL
  • Airflow
Анализ вводных по задаче
ETL-процесс и его пайплайн, требования к ETL-процессу, источники данных, разложение данных по слоям, подключение к API и базам данных, схемы источника, перенос данных в хранилище, автоматизация
Проектирование ETL-процесса
Виды загрузок, слои хранения, как разложить данные по готовым слоям, порядок загрузки объектов, проектирование системы восстановления
Ликбез по Airflow
Понятие, для каких задач используется Airflow, основные концепции, архитектура, первый взгляд на UI, структура кода DAG, статусная модель задач, механики шаблонов, особенности работы со временем, продвинутые механики и альтернативы Airflow для ETL-процессов
Реализация ETL в Airflow
Планирование процесса, как сделать запрос на генерацию файла через API, подключение к хранилищу и получение файла, переведение файла в табличный вид, SCD, добавление технических полей, обновление слоя витрин, постановка процесса на регламент
Построите пайплайн автоматизированного получения, обработки и загрузки данных от источников до витрины
4
2 темы・1 неделя
Проверка качества данных
Требования к качеству данных
Технические и бизнес-качества, как собрать требования к данным, система контроля качества
Проектирование и разработка проверки
Выбор места проверки в пайплайне, разработка проверок, результаты и отслеживание проверок, runbook процесса
Научитесь оценивать качество данных
5
4 темы・1 проект・2 недели
DWH для нескольких источников
  • NoSQL
  • MongoDB
  • PostgreSQL
Сбор требований и исследование источников
Сбор требований для DWH, модель данных в PostgreSQL, MongoDB как NoSQL-СУБД, подключение к MongoDB, данные в MongoDB, как связаны данные в источниках
Проектирование DWH
Проектирование хранилища по слоям, выбор модели данных, проектирование слоёв CDM и STG, хранение исторических данных, проектирование слоя DDS, проектирование ETL между слоями
Реализация DWH
Транзакции и их свойства, изоляция транзакций, паттерн Transactional Outbox, сбор данных из PostgreSQL и MongoDB, перенос данных из STG в DDS, заполнение витрины в слое CDM
Тестирование, интеграция и документация
Тестирование DWH, интеграция с BI‑решением, как писать документацию к DWH
Спроектируете и реализуете DWH для стартапа
6
2 темы・1 проект・2 недели
Аналитические базы данных
  • S3
  • Vertica
  • Airflow
  • PostgreSQL
Аналитические СУБД и Vertica
Знакомство с аналитическими СУБД и Vertica, типы данных в Vertica (строковые и числовые, временные и специальные), запись данных в Vertica, проекции, параметры сегментации и сортировки, удаление и обновление данных в Vertica, партиционирование таблиц, операции с партициями
Разработка аналитической базы данных
Исходные данные, staging-слой, проверка качества данных, выбор модели для аналитического хранилища, разработка аналитического хранилища
Построите DWH для высоконагруженной системы данных с использованием Vertica
7
3 темы・1 проект・4 недели
Организация Data Lake
  • HDFS
  • Hadoop
  • MapReduce
  • Apache Spark
Проектирование Data Lake
Знакомство с Data Lake, сбор требований, знакомство с Hadoop, архитектура HDFS, репликация данных и блоки в HDFS, управление HDFS из консоли, проектирование хранения данных в HDFS
Знакомство со Spark
Парадигма MapReduce, знакомство со Spark, вычисления в Spark, знакомство с YARN, подключение к Spark
PySpark для инженера данных
Знакомство с PySpark, структуры данных в Spark, создание DataFrame и базовые операции: преобразования и действия, JOIN и UNION, кеширование и контрольные точки; встроенные стандартные функции, оконные функции в PySpark, как собрать, запустить и автоматизировать джобу
Построите Data Lake и автоматизируете загрузку и обработку данных в нём
8
2 темы・1 проект・3 недели
Потоковая обработка данных
  • Kafka
  • Spark Streaming
Потоковая обработка с Kafka и Spark Streaming
Что такое потоковая обработка, брокеры сообщений, Kafka, работа с Kafka через kcat, знакомство со Spark Structured Streaming — базовые операции, как создать Spark Streaming Application
Настройка потока данных
Сбор требований к стримингу, проектирование стриминговой системы, изучение данных в Kafka, преобразование потоковых данных, дедупликация, подключение к PostgreSQL и изучение данных, проектирование выходного сообщения, отправка сообщения в Kafka
Разработаете систему для обработки данных в режиме реального времени
9
5 тем・1 проект・3 недели
Облачные технологии
  • Redis
  • NoSQL
  • Kubectl
  • Kubernetes
  • PostgreSQL
  • Yandex Cloud
Облачные технологии Yandex Cloud
Что такое облачные технологии, подключение к Yandex Cloud, внутри Yandex Cloud, сбор требований к DWH
Подготовка и изучение источников
Redis — key-value хранилище, как его поднять в Yandex Cloud, изучение данных в Redis, как поднять Kafka в Yandex Cloud, изучение данных в Kafka
Создание окружения сервисов
Микросервисная архитектура, контейнеризация в Docker, создание образов контейнеров, репозиторий для образов, знакомство с Kubernetes, возможности утилиты kubectl, подготовка манифестов, пакетный менеджер Helm, разбор шаблона сервиса
Написание первого сервиса
Как поднять PostgreSQL в Yandex Cloud, структура баз данных, подготовка контейнера, планирование и написание логики первого сервиса
Знакомство с DataLens
Подключение источников данных, создание диаграмм, создание дашборда
Разработаете инфраструктуру для хранения и обработки данных в облаке
10
Самостоятельно・2 недели
Итоговый проект или пет-проект
В конце курса у вас будет выбор: выполнить ещё один учебный проект или реализовать пет-проект. В первом случае нужно выбрать бизнес-задачу и разработать архитектуру данных с использованием всех изученных инструментов. Во втором случае вы сможете воплотить в жизнь и защитить личный проект. Идея для пет-проекта может быть любой, главное — чтобы она была связана с инженерией данных и при её реализации использовались все изученные инструменты. Что бы вы ни выбрали, вас поддержат наставники и ревьюеры, а получившийся кейс украсит ваше портфолио.

Как вы будете учиться

YandexGPT помогает учиться

Когда в теории что-то непонятно, нейросеть объяснит это другими словами. А в конце каждого урока подготовит краткий пересказ о самом главном.

В качестве выпускной работы сможете выполнить пет‑проект — то есть сами выберете тему и пути решения

Такой проект может заметно усилить ваше портфолио

  • Он должен быть основан на открытых источниках, а тема — связана с инженерией данных
  • Будете использовать технологии, которые освоили на курсе, чтобы продемонстрировать свои знания
  • Представите результаты перед командой курса и другими студентами — расскажете о задумке и ценности своей работы

Этот курс может оплатить
ваш работодатель
Полностью или разделив оплату с вами,
например 50/50 или 75/25
  • Расскажем всё про курс
  • Поделимся презентацией
  • Ответим на ваши вопросы
  • Подготовим договор и счёт

Отвечаем на вопросы

Подойдёт ли мне эта профессия?
Для тех, кто ещё нетвёрдо уверен в своём намерении, мы спроектировали бесплатную часть, которая поможет получить ответ на этот вопрос. Если вы убедитесь, что инженерия данных не для вас, это тоже положительный результат.
Подробнее о профессии инженера данных вы можете узнать из нашей статьи.
Можно ли обучиться профессии за 6,5 месяцев?
Думаем, что да. Для этого уделяйте занятиям в среднем от 12 часов в неделю: читайте теорию в тренажёре, выполняйте задания, разрабатывайте проекты и общайтесь с наставником.
Каким требованиям нужно соответствовать?
Для старта достаточно иметь законченное среднее образование и возможность заниматься в среднем 15 часов в неделю. Также нужно иметь базовые знания по Python и SQL, какие именно — смотрите в разделе «Какие знания потребуются, чтобы учиться на курсе»
Кто будет меня учить?
Программа составлена опытными преподавателями, методологами и действующими специалистами не только Яндекса, но и других лидеров технологической и образовательной индустрии.
Как и когда я буду учиться?
Обучение состоит из 3 больших частей: теории с закреплением в тренажёре, домашних заданий с самостоятельными проектами и вебинаров с наставниками и экспертами из индустрии.

Теория в тренажёре и домашние задания не привязаны к расписанию — можно учиться когда угодно. Главное — уложиться в дедлайн, обычно это спринт из 2 недель. Вебинары проходят в определённое время, о котором вам заранее скажет куратор.
Что делать, если я не справлюсь с нагрузкой?
В программе предусмотрены каникулы, во время которых можно отдохнуть или повторить сложные темы.

Если случилось непредвиденное или понадобилось больше времени на закрепление материала, напишите своему куратору. Он поможет перенести дедлайн сдачи проекта или перевестись в более поздний поток. На общую стоимость курса это не повлияет.
Если не понравится, я могу вернуть деньги?
Конечно. Если поток ещё не стартовал, вернём всю сумму. Если учёба уже началась, придётся оплатить прошедшие дни со старта вашего первого потока — но мы вернём деньги за остаток курса. Более подробно рассказываем об этом в 7 пункте оферты.
Получу ли я какой-то документ после курса?
Да, вы получите сертификат о переподготовке.
Как можно оплатить?
Банковской картой: внести всю сумму сразу или платить ежемесячно.

Ежемесячные платежи работают так: вы вносите первую оплату, и в этот момент привязывается карта. С этой карты автоматически будут списываться следующие платежи каждые 30 календарных дней. Например, оплатили 25 марта — следующий платёж пройдёт 24 апреля. Обучение будет стоить меньше, если оплатить весь курс сразу.

Через компанию: юридические лица также могут оплатить обучение в Практикуме. Чтобы заказать счёт для оплаты, оставьте заявку на странице для корпоративных клиентов.
На каком языке проходит обучение?
Всё будет на русском: теория, практические задания и вебинары, а ещё чаты с куратором, наставником и другими студентами.

Давайте поможем

Напишите, как вас зовут и по какому номеру можно связываться — позвоним и расскажем всё про курсы