Магистратура
2024/2025
Семинар наставника
Статус:
Курс обязательный (Инженерия данных)
Направление:
09.04.04. Программная инженерия
Где читается:
Факультет компьютерных наук
Когда читается:
1-й курс, 1-4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Касьяненко Дарья Алексеевна
Прогр. обучения:
Инженерия данных
Язык:
русский
Кредиты:
9
Программа дисциплины
Аннотация
Данный курс представляет собой ключевую часть образовательного процесса магистратуры для будущих дата-инженеров. В ходе обучения студенты будут вовлечены в обмен опытом с профессионалами в области дата-инженерии, которые выступят в роли наставников. В рамках семинара студенты будут работать над реальными проектами, применяя свои навыки в практических задачах под руководством наставников. Семинар также будет посвящен развитию мягких навыков, таких как коммуникация, руководство, аналитическое мышление и принятие решений, что является важным аспектом успешной карьеры в данной области.
Цель освоения дисциплины
- Узнать о передовых технологиях и лучших практиках в индустрии
- Понимать, как инструменты инженерии данных применяются в российских компаниях
Планируемые результаты обучения
- Оценивает личный уровень сформированности профессиональных компетенций
- Проводит мониторинг формирования профессиональных компетенций в соответствии с индивидуальной траекторией
- Формирует индивидуальную траекторию профессионального развития
- Формулирует личную цель профессионального развития
- Знание профессиональных требований, предъявляемых рынком труда, к выбранному направлению профессионального развития.
- Понимание актуальных направлений развития современного data engineering
- Определять значение и роль данных в современном бизнесе и технологиях, тренды развития профессии, профессиональные требования, предъявляемые рынком
- Оценивать личный уровень сформированности профессиональных компетенцией
- Работать с основными командами Linux: навигация по файловой системе, управление файлами и каталогами, работа с процессами.
- Подготавливать конфигурационные файлы для формирования системы.
- Выполнять основные команды Git: инициализация репозитория, добавление и коммит изменений, просмотр истории.
- Работать с удаленными репозиториями: настройка и использование GitHub, GitLab.
- Создавать свой репозиторий, простые проекты в Git, выполнять операции с ветками.
- Выполнение основных команд и сценариев: работа с файлами и каталогами, перенаправление ввода/вывода, использование пайпов.
- Написание и выполнение скриптов, использование переменных и аргументов командной строки.
- Автоматизация рутинных задач: создание скриптов для автоматизации процессов сбора и обработки данных.
- Работа удаленно с серверами, передает файлы, выполнение настройки сетевого взаимодействия с помощью SCP и SFTP, обеспечение удаленного выполнения команд.
- Владение навыками развертывания своей экосистемы на своем ПК.
- Настройка и запуск контейнеров для различных приложений, используемых в процессе обработки данных.
- Написание и оптимизация Dockerfile для автоматической сборки образов, содержащих необходимые зависимости и настройки.
- Настройка сетевых взаимодействий между контейнерами и внешними сервисами.
- Выполнять настройку и конфигурацию систем мониторинга: установка, настройка агентов и интеграция с источниками данных.
- Выполнять анализ и визуализация данных мониторинга: создание дашбордов, настройка алертов.
- Работать и настраивать Prometheus, Grafana, ELK stack на углубленном уровне
- Реализовать основные возможности PyTest: написание тестов, использование фикстур и параметризация тестов.
- Выполнять организацию тестов: структура тестового проекта, группировка и маркировка тестов.
- Выполнять запуск и анализ результатов тестирования: использование различных опций командной строки, интерпретация результатов.
- Реализует основы работы с RESTful API: принципы REST, основные методы HTTP-запросов.
- Выполняет интеграцию с внешними API: аутентификация, обработка запросов и ответов.
- Владеет навыками взаимодействия с API сервисами и создает свои API сервисы.
- Настраивать пайплайны для автоматической сборки и тестирования кода при каждом изменении в репозитории.
- Настраивать мониторинг для отслеживания выполнения пайплайнов CI/CD и автоматического уведомления о сбоях.
- Использовать системы контроля версий для отслеживания изменений в коде и конфигурациях дата-приложений.
- Создавать модели машинного обучения, используя данные из блокчейна, для прогнозирования трендов и определения аномалий.
- Навыки построения, тренировки и оптимизации моделей машинного обучения.
- Навыки разработки и развертывания API, что позволяет интегрировать модели в приложения и предоставлять доступ к предсказаниям.
- Навыки совместной работы в командах.
- Умение представлять и объяснять свои идеи и результаты
- Навыки эффективного планирования времени и ресурсов.
- Повышение уровня организованности и способности к быстрой адаптации в условиях ограниченных временных рамок.
- Навыки критического мышления, способность находить креативные решения и адаптироваться к возникающим проблемам в процессе работы.
- Составлять эффективное резюме.
- Проходить технические собеседования и выполнять тестовые задания.
- Составлять портфолио дата-инженера в Git.
Содержание учебной дисциплины
- Введение в Data Engineering
- Практика по работе с Linux для инженеров данных
- Практика по работе с Git
- Работа с оболочкой Bash для решения задач в области инженерии данных
- Работа с серверами и протокол удаленного управления SSH
- Работа с Docker
- Работа с системами мониторинга данных
- Использование PyTest в инженерии данных
- Использование API в инженерии данных
- CI/CD: практика и кейсы
- Использование блокчейн технологий и криптовалют в контексте анализа данных
- Машинное обучение: кейсы и аналитика
- Мини-хакатон
- Развитие карьеры инженера данных
Элементы контроля
- Задания с проверкой преподавателемРезультаты выполнения домашних заданий с проверкой преподавателем не подлежат пересдаче на повышенное количество баллов. Повторная сдача задания в случае получения оценки «неудовлетворительно» возможна только по окончанию экзаменационной сессии. При повторной сдаче студенты выполняют то же самое задание, но на основе другого проекта (варианта). Критерии оценки задания в случае пересдачи остаются теми же. Процедура сдачи: 1. Студент выполняет все предлагаемые этапы задания (для каждого задания предусмотрены индивидуальные требования). 2. Студент прикрепляет ссылку на выполненное задание в GitHub. По ссылке есть доступ. 3. Преподаватель в лмс оставляет обратную связь на выполненную работу
- Задания с самопроверкой по чек-листуПроцедура пересдачи: Результаты текущего контроля учебной деятельности (выполнение домашнего задания по чек-листу) студентов по дисциплине не подлежат пересдаче на повышенное количество баллов. Процедура сдачи: 1. Студент выполняет все предлагаемые этапы задания. 2. Студент прикрепляет ссылку на выполненное задание в GitHub. По ссылке есть доступ.
- Мини-хакатонРезультаты мини-хакатона не подлежат пересдаче на повышенное количество баллов. Процедура сдачи: 1. Подготовка (1 неделя до мероприятия) - Определить тему хакатона. - Подготовить необходимые ресурсы: данные, документацию, инструменты. - Создать группы участников (по 3-5 человек). 2. Реализация (на заключительном вебинаре 3 модуля). Команды работают над проектами: - Проводят анализ данных: работа с предоставленными наборами данных. - Создают пайплайны: обработка и трансформация данных. - Визуализация: создание отчетов или дашбордов. 3. Подготовка презентации: - Каждая команда готовит краткую презентацию (3-5 минут) своего проекта. - Определение ключевых моментов: проблема, решение, демонстрация работы. 4. Презентация проектов и обсуждение результатов - Команды по очереди представляют свои проекты - Команды получают обратную связь от преподавателя.
- ПортфолиоРезультаты контроля учебной деятельности (подготовка портфолио) студентов не подлежат пересдаче на повышенное количество баллов. Процедура сдачи: Результатом работы студента в течении 4-х модулей является портфолио —документ, созданный репозиторий в Git. Название репозитория должно содержать номер группы, фамилию, имя студента. В течении обучения студент выполняет домашние задания, загружает в личный репозиторий в Git и формирует портфолио. Студент так же может сохранять в репозиторий проекты других дисциплин.
Промежуточная аттестация
- 2024/2025 2nd moduleЗадания с проверкой преподавателем * 0.4 + Задания с самопроверкой по чек-листу * 0.1 + Мини-хакатон * 0.4 + Портфолио * 0.1
- 2024/2025 4th moduleЗадания с проверкой преподавателем * 0.4 + Задания с самопроверкой по чек-листу * 0.1 + Мини-хакатон * 0.4 + Портфолио * 0.1
- 2025/2026 2nd moduleЗадания с проверкой преподавателем * 0.4 + Задания с самопроверкой по чек-листу * 0.1 + Мини-хакатон * 0.4 + Портфолио * 0.1
- 2025/2026 3rd module0.4 * Задания с проверкой преподавателем + 0.1 * Задания с самопроверкой по чек-листу + 0.4 * Мини-хакатон + 0.1 * Портфолио
Список литературы
Рекомендуемая основная литература
- Вьяс, Д. Kubernetes изнутри / Д. Вьяс, К. Лав , перевод с английского А. Н. Киселева. — Москва : ДМК Пресс, 2023. — 378 с. — ISBN 978-5-93700-153-5. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/314942 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Гаврилов, М. В. Информатика и информационные технологии : учебник для вузов / М. В. Гаврилов, В. А. Климов. — 5-е изд., перераб. и доп. — Москва : Издательство Юрайт, 2023. — 355 с. — (Высшее образование). — ISBN 978-5-534-15819-9. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/509820 (дата обращения: 27.08.2024).
- Заяц, А. М. Инструментальные средства инфокоммуникационных систем. Теория и практика / А. М. Заяц, А. А. Логачев. — Санкт-Петербург : Лань, 2023. — 208 с. — ISBN 978-5-507-45681-9. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/311786 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Криптографические основы блокчейн-технологий / Е. А. Ищукова, С. П. Панасенко, К. С. Романенко, В. Д. Салманов. — Москва : ДМК Пресс, 2022. — 300 с. — ISBN 978-5-97060-865-4. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/314915 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Основы машинного обучения - Лимановская О.В., Алферьева Т.И. - ФЛИНТА - 2022 - https://znanium.com/catalog/product/1891377 - 957065 - ZNANIUM
- Платонов, А. В. Машинное обучение : учебное пособие для вузов / А. В. Платонов. — Москва : Издательство Юрайт, 2023. — 85 с. — (Высшее образование). — ISBN 978-5-534-15561-7. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/520544 (дата обращения: 27.08.2024).
- Программно-аппаратная защита информации - Хорев П.Б. - НИЦ ИНФРА-М - 2021 - https://znanium.com/catalog/product/1189342 - 111937 - ZNANIUM
- Сейерс, Э. Х. Docker на практике / Э. Х. Сейерс, А. Милл , перевод с английского Д. А. Беликов. — Москва : ДМК Пресс, 2020. — 516 с. — ISBN 978-5-97060-772-5. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/131719 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Флах, П. Машинное обучение. Наука и искусство построения алгоритмов, которые извлекают знания из данных / П. Флах. — Москва : ДМК Пресс, 2015. — 400 с. — ISBN 978-5-97060-273-7. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/69955 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Харенслак, Б. Apache Airflow и конвейеры обработки данных / Б. Харенслак, Р. Д. де , перевод с английского Д. А. Беликова. — Москва : ДМК Пресс, 2022. — 502 с. — ISBN 978-5-97060-970-5. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/241133 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Хорев, П. Б. Программно-аппаратная защита информации : учебное пособие / П.Б. Хорев. — 3-е изд., испр. и доп. — Москва : ИНФРА-М, 2022. — 327 с. — (Высшее образование: Бакалавриат). — DOI 10.12737/1035570. - ISBN 978-5-16-015471-8. - Текст : электронный. - URL: https://znanium.com/catalog/product/1865598
Рекомендуемая дополнительная литература
- Трофимов, В. В. Информационные технологии в 2 т. Том 2 : учебник для вузов / В. В. Трофимов. — Москва : Издательство Юрайт, 2023. — 390 с. — (Высшее образование). — ISBN 978-5-534-01937-7. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/512726 (дата обращения: 28.08.2023).