Готовим разработчиков, архитекторов IDE и компиляторов, специалистов по анализу программ, исследователей в области качества ПО и верификации
Корпоративная программа компании YADRO

ИНСТРУМЕНТЫ РАЗРАБОТКИ
И АНАЛИЗА ПРОГРАММ

язык обучения
Русский
форма обучения
Очно
длительность обучения
2 года
руб. стоимость обучения в год
680 000
платных мест
5
бюджетных мест
27
Магистерская программа для тех, кто хочет:

  • получить глубокие знания в области создания методов обеспечения качества
  • практический опыт в области проектирования инструментов для разработчиков ПО
Студенты ИТМО

КОМУ ПОДОЙДЕТ ПРОГРАММА

Выпускникам IT-направлений
Для успешного обучения необходимо иметь профильное бакалаврское образование: информатика и вычислительная техника, информационные системы и технологии, программная инженерия, прикладная информатика, математика и компьютерные науки и др.

ЧЕМУ ВЫ НАУЧИТЕСЬ

Анализировать программы и создавать статические и динамические анализаторы, верификаторы, фаззеры, средства автоматизации тестирования ПО
Проектировать IDE и разрабатывать плагины к ним
Разбираться во внутренней организации языков программирования
Разрабатывать эффективные компиляторы для  языков программирования
КАК ПРОХОДИТ ОБУЧЕНИЕ
КАК ПРОХОДИТ ОБУЧЕНИЕ
  • 1 семестр
    Студенты изучают курсы, отвечающие за формирование общих знаний и навыков, необходимых для обеспечения жизненного цикла ПО, а также получают базовые знания в области математической логики, анализа и верификации программ.
  • 2−3 семестры
    Со второго семестра студенты выбирают 3 из 8 треков: Статический анализ программ, Динамический анализ программ, Верификация ПО, Проектирование компиляторов, Проектирование языков программирования, Проектирование IDE, Виртуальные машины и Свободный трек.
  • Проектная деятельность
    С первого семестра студенты в составе групп работают над промышленными проектами, представленными компаниями-партнерами. Кураторы — специалисты из отрасли.

КЕМ ВЫ СМОЖЕТЕ РАБОТАТЬ

Разработчиком или архитектором IDE
Специалистом по верификации ПО
Разработчиком или архитектором компиляторов
Инженером-разработчиком инструментов анализа программ
Исследователем / руководителем исследований в области качества ПО
Инженером по качеству / фаззинг-инженером / специалистом по автоматизации QA

ПРЕПОДАВАТЕЛИ

ПРЕПОДАВАТЕЛИ
  • Владимир
    Ицыксон
    Курсы: Программная инженерия, Введение в статический анализ и верификацию ПО, Технологии проектирования и архитектура ПО, Тестирование ПО, Научный семинар по подготовке ВКР
  • Александр
    Ерошкин
    Курсы: Углубленное программирование на языке Java, Технологии проектирования и архитектура ПО, Тестирование ПО, Управление программными проектами (Project management)
  • Николай
    Шилов
    Курсы: Верификация методом model checking, Дедуктивная верификация ПО
  • Даниил
    Степанов
    Курсы: Фаззинг программного обеспечения, Программная инженерия (практика), Технологии проектирования и архитектура ПО (практика), Углубленное программирование на языке Java (практика)
СТУДЕНТЫ И ВЫПУСКНИКИ
О ПРОГРАММЕ
Евгений Букреев
Выпускник 2025 года, руководитель команды разработки средств статического анализа в Positive Technologies
На этой программе я на практике научился создавать современные виды инструментального ПО. Это и полноценный компилятор языка программирования, и различные статические анализаторы, и даже правки кода OpenJDK в рамках проектной работы, организованной компанией YADRO. Кроме практической деятельности, программа дает теоретический фундамент, необходимый для данной сферы (математическая логика, теория типов и т. д.).

Также могу отметить профессионализм преподавателей (многие из них действующие сотрудники профильных организаций и/или исследователи), неформальное общение, уникальность предлагаемых дисциплин и программы в целом. Я считаю, что для исследователя/разработчика в сфере инструментального ПО сложно (если вообще возможно) найти более подходящую профильную магистратуру.
Вячеслав Ковалевский
Выпускник 2025 года, аспирант, инженер-исследователь в лаборатории «Верификация и анализ программ»
Это программа с авторскими курсами от преподавателей-экспертов (в том числе из других университетов), созданных на основе реального опыта. Во время обучения можно выбрать несколько треков (например, разработка компиляторов, динамический или статический анализ), что позволяет сфокусироваться на своих интересах.

Также хочу отметить увлекательные практические работы и групповые проекты по самым разным темам, которые помогают освоить как профессиональные навыки, так и универсальные, связанные с коммуникацией и кооперацией при работе в команде. Например, я занимался оптимизацией JIT компилятора JVM под RISC-V, а также интеграцией инструментов тестирования смарт-контрактов NeoGo со средой разработки VSCode. За время обучения я получил необычный и нескучный опыт в разработке и стал более уверенным специалистом.
Валерий Кечин
Выпускник 2025 года, инженер-исследователь в лаборатории «Верификация и анализ программ»
Когда я поступал в магистратуру «Инструменты разработки и анализа программ», я не ожидал, что будут настолько уникальные и практико-ориентрованные курсы. Все преподаватели — востребованные действующие специалисты в узких наукоемких областях. Более того, видно, что они любят свое дело и хотят вовлечь студентов. Думаю, что этот факт очень сильно повлиял на мою заинтересованность в обучении.

Отдельно хочу отметить, что практические задания не являлись формальностью. Они были или приближены к реальным условиям, или на самом деле являлись частными задачами в рамках известных открытых проектов. Все лекции и семинары также были содержательными и интерактивными.

Уже в процессе обучения я заинтересовался применением статического и динамического анализа для проверки качества ПО, чем сейчас продолжаю с удовольствием заниматься на работе.
Даниил Бакин
студент 2 курса, разработчик в Positive Technologies
После двух лет обучения могу сказать, что мне было очень интересно потрогать руками вещи, которыми в России мало кто занимается — инструменты разработки. Также было приятно и полезно поработать с преподавателями, которые в этой области имеют реальную экспертизу. Отдельно хочу отметить очень крутых приглашенных экспертов из Иннополиса и других университетов.

Отдельный важный для меня момент — возможность совмещать магистратуру с работой. Ну и интеграция с корпоративным партнером — компанией YADRO. Это позволило попробовать свои силы в действительно интересных проектах, которые мы разрабатывали в рамках взаимодействия с ними. К сожалению, не всегда на эти проекты хватало времени, но, например, возможность внести вклад в разработку движка Google Chrome (V8) стала для меня значимым событием и классной строчкой в портфолио. Также от компании YADRO была очень достойная студенческая стипендия, что, безусловно, приятный бонус.
Владислав Феофилактов
студент 2 курса, старший программист в Positive Technologies
Магистратура дала мне фундаментальные знания и возможность попробовать себя в разных областях, связанных с разработкой туллинга, до которых я бы не добрался сам. Я получил опыт, максимально приближенный к реальному, пока делал проекты для компании YADRO и огромное количество лабораторных работ.

Я углубил свои знания в разных областях: в сборщиках мусора, математике, связанной с системами типов, дизайне языков программирования и в анализе кода. Успел написать символьную виртуальную машину для языка go и простой компилятор. Думаю, что это время было потрачено с пользой, и навыки, которые я получил, если и не пригодятся напрямую, то точно станут хорошей основой для других.
Иван Ступницкий
студент 1 курса, младший инженер по разработке ПО в YADRO
Обучение в магистратуре «Инструменты разработки и анализа программ» позволило мне глубоко погрузиться в сферы проверки качества и тестирования программного обеспечения. Учебный процесс построен таким образом, что мы рассматриваем вопрос оценки качества ПО с разных сторон, например, с точки зрения динамического тестирования или обычной верификации модели системы. Такой подход позволяет создавать в голове полную картину, что мне очень нравится.

Также хочу отметить, что во время обучения нам часто приводят актуальные примеры реализации изучаемых методов в разных компаниях. Оцениваю полученные знания и опыт на 10 из 10!
НОВОСТИ