Бакалавриат
2023/2024
DevOps
Статус:
Курс по выбору (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Кто читает:
Базовая кафедра МТС
Где читается:
Факультет компьютерных наук
Когда читается:
4-й курс, 3 модуль
Формат изучения:
с онлайн-курсом
Онлайн-часы:
32
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Захаров Елисей Владимирович
Язык:
английский
Кредиты:
5
Контактные часы:
28
Course Syllabus
Abstract
The course “DevOps: Methodology and Practice” is an introductory and practice-oriented course consisting of 7 lectures and 7 workshops, developed together with MTS experts. It covers basic DevOps principles aimed at minimizing business risks associated with the development and management of IT infrastructure, as well as training in modern DevOps tools, including CI/CD, containerization and automation. The course includes theoretical and practical components to provide students with the relevant knowledge and skills to successfully perform the tasks of a DevOps engineer, and also focuses on developing GitLab skills and application deployment skills. The program aims to prepare students to solve business problems using DevOps methodologies and tools, which contributes to their professional growth.
Expected Learning Outcomes
- To be able to distinguish between development methodologies
- To know the differences between the stages of the development cycle
- To understand the difference between DevOps approaches at different scales
- To navigate the interface of basic DevOps tools
- To learn the basic principles of DevOps and differences from traditional approaches. To study examples of real practices and cases of DevOps application in the industry.
- To master basic Git commands for version control and branching in team development.
- To understand the stages of the DevOps cycle: from planning to monitoring. To evaluate the importance of each stage and role within DevOps.
- To customize automatic code assembly using CI/CD tools.
- Select and customize DevOps tools based on tasks and environment. Apply core tools including GitLab, Jenkins, Ansible, Docker.
- To automate configurations and manage infrastructure with Ansible.
- To understand the impact of DevOps on the quality of the product being released.
- To configure and manage CD pipelines to automate application deployment.
- To identify the core competencies of a DevOps engineer, including automation and containerization. To explore career paths and necessary skills for growth in DevOps.
- To containerize apps using Docker.
- General preparation for interviews with HR, engineer and manager. Recommendations on resume writing.
- To create and optimize pipeline for continuous integration and delivery.
- To analyze and improve the CI/CD process for various projects and environments.
Course Contents
- DevOps methodology and its place in development approaches
- Software development cycle and DevOps tools
- DevOps practices at different scales
- More about DevOps tools
- DevOps engineer, skills, knowledge
- Containers, virtual machines and hardware: deployment examples
- Tips for choosing a place and role, development in DevOps
Assessment Elements
- HomeworkA set of materials for self-study (specialized literature and videos)
- Test5 multiple-choice questions based on the lecture materials
- Practical task
Interim Assessment
- 2023/2024 3rd moduleTotal = Rounding(0.6*Tests + 0.2*Participation in mini-quizzes + 0.2*Practical task), where Tests is the average score for all test tasks, participation in mini-quizzes: 1 - participation, 0 - absence.
Bibliography
Recommended Core Bibliography
- Bass, L., Weber, I. M., & Zhu, L. (2015). DevOps : A Software Architect’s Perspective. Old Tappan, NJ: Addison-Wesley Professional. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1601433
Recommended Additional Bibliography
- Херинг, М. DevOps для современного предприятия : учебное пособие / М. Херинг , перевод с английского М. А. Райтмана.. — Москва : ДМК Пресс, 2020. — 232 с. — ISBN 978-5-97060-836-4. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/140580 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.