Вам понадобятся знания 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 месяцев?
Да, программа рассчитана на это. Но многое зависит и от вас — чтобы пройти курс до конца, нужно уделять ему достаточно времени: изучать теорию, практиковаться в тренажёре и делать проекты.
Каким требованиям нужно соответствовать?
Вам понадобятся базовые знания по Python и SQL.

Что нужно знать по SQL:
• Базовый синтаксис: операторы SELECT, GROUP BY, WHERE, HAVING и JOIN
• Вложенные запросы и их комбинирование
• Оконные функции
• Ускорение запросов с помощью индексов по вторичному ключу

Что нужно знать по Python:
• Базовый синтаксис: переменные, циклы, функции, условия
• Структуры данных: список, словарь, кортеж, работа с индексами
• Базовые операции с Pandas: открыть csv-файл, посчитать простую агрегацию по столбцу
• Основы объектно ориентированного программирования
Кто будет помогать мне проходить курс?
Все наставники — практикующие специалисты: сотрудники Яндекса и других крупных компаний. Программу составляют опытные методисты, а ещё действующие специалисты Яндекса, Школы анализа данных и других лидеров технологической индустрии.
Как и когда я буду проходить курс?
Курс включает 3 составляющие: теория с закреплением в тренажёре, самостоятельные работы и проекты, онлайн-встречи с наставником. С тренажёром вы можете работать в любое удобное время, а выполнение практики привязано к двух- или трёхнедельному циклу.
Что делать, если я не справлюсь с нагрузкой?
В программе предусмотрен перерыв, во время которого можно отдохнуть или повторить сложные темы.

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

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

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

Чтобы вам было проще сориентироваться, мы указываем примерную стоимость в долларах США, но списание будет в казахстанских тенге, а конвертация — по курсу вашего банка.

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

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