Профессор Сергей Михайлович Авдошин рассказывает об истории создания и развития направления «Программная инженерия» в НИУ ВШЭ.
— Сергей Михайлович, расскажите, пожалуйста, как и когда зародилась идея создания направления «Программная инженерия» в Вышке? Что стало катализатором? Кто стоял у истоков? Если оглянуться на самое начало, что для вас лично стало главным вызовом или вдохновением, когда вы принимали участие в создании этого направления? Был ли это ответ на какой-то конкретный вызов времени в IT-индустрии? Какие задачи ставились 20 лет назад?
— Это прекрасный и очень глубокий вопрос, который возвращает меня в конец 1990-х — начало 2000-х годов. Зарождение направления «Программная инженерия» в Вышке было не мгновенным озарением, а скорее сложной, кристаллизующейся реакцией на системный кризис в отечественной IT-сфере. По сути, мы вместе с коллегами пытались дать ответ на боль, которую сами же и наблюдали.
Катализатор: хаотичная гонка вместо инженерии
Катализатором стал очевидный и болезненный разрыв. С одной стороны, бурный рост российского IT-рынка, аутсорсинга, появление первых крупных продуктовых компаний, с другой — катастрофическая нехватка специалистов, которые умеют не просто писать код, а создавать сложные, надежные, сопровождаемые программные системы. Индустрия задыхалась от хаотичной гонки: проекты срывали сроки, выходили за бюджеты, а результат зачастую не соответствовал ожиданиям заказчика. Мы готовили блестящих математиков-программистов, но не хватало инженерной дисциплины, управления процессами, работы с требованиями. Это и был главный вызов времени: Россия рисковала навсегда остаться цифровым кустарем, неспособным создавать софт мирового уровня.
Идея и ключевые люди: «троица» и поддержка ректората
Идея родилась в дискуссиях с двумя незаменимыми людьми, без которых этого направления просто не было бы. Это была наша внутренняя «троица»:
• Виктор Васильевич Никитин — тогда декан факультета бизнес-информатики, человек с глобальным видением. Он понимал, что будущее — на стыке дисциплин и что программная инженерия — это не раздел математики, а самостоятельная инженерная наука.
• Игорь Рубенович Агамирзян — наш главный идеологический локомотив. Именно он, опытнейший специалист, болел инженерией как философией, знал международные стандарты (ISO, SWEBOK) и настаивал на строгом следовании им.
• И я в роли, условно говоря, системного интегратора и организатора, который должен был превратить идеи в рабочий учебный план, договориться с кафедрами, найти баланс между теорией и практикой.
Абсолютно ключевой была поддержка ректората Вышки в лице Ярослава Ивановича Кузьминова и Льва Львовича Любимова. Они поверили в этот проект, когда он казался многим экзотическим и рискованным. Они дали нам карт-бланш на эксперимент, понимая, что классическое университетское образование в IT требует радикального обновления.
Главный вызов и вдохновение
Для меня лично главным вызовом (и одновременно вдохновением) было преодолеть глубокий скепсис академического сообщества. Нам говорили: «Зачем вам эта инженерия? У нас есть прекрасная прикладная математика и информатика». Мы ломали стереотип, что программист — это одиночка-гений. Мы доказывали, что создание современного ПО — это командная инженерная работа, такая же, как строительство моста, со своими стандартами, процессами контроля качества и управления проектами. Вдохновляла же возможность создать с чистого листа то, в чем остро нуждалась страна. Мы не адаптировали старую программу, мы конструировали новую, ориентируясь на лучшие мировые практики (SEI, IEEE) и прямой запрос от таких компаний, как Luxoft, которые стали нашими первыми партнерами. Это было чувство исторической ответственности и азарт первостроителей.
Задачи, которые мы ставили 20 лет назад
Если сформулировать коротко, наши задачи были таковы:
Мы тогда мечтали не просто открыть еще одну специальность. Мы мечтали изменить саму культуру создания программного обеспечения в России, подняв ее с ремесленного на инженерный уровень. И, оглядываясь на путь, пройденный нашими выпускниками, я думаю, нам это в значительной степени удалось.
Этот разговор можно продолжить — я готов подробнее рассказать и о битве за учебный план, и о первых партнерствах, и о том, как мы искали баланс между наукой и практикой.
Это нерв всей нашей ранней истории — преодоление внутреннего сопротивления и построение того самого учебного плана.
Если первые дискуссии были идеологическими («зачем это нужно?»), то дальше началась конструктивная, но не менее жаркая фаза «как это сделать?». И главным полем битвы стал именно учебный план.
Битва за план: математика vs инженерия
Нам нужно было найти баланс между двумя мирами:
Ключевой спор разворачивался вокруг объема и места этих новых дисциплин. Коллеги-математики справедливо опасались, что «эта менеджерская шелуха» вытеснит курсы ядра. Нам же было очевидно, что без этой «шелухи» не построить сложный софт. Найти формулу компромисса было моей ключевой организационной задачей.
Мы действовали так:
• Не вырезали, а добавляли и переупаковывали. Сохранили мощный математический блок, но сделали его более прикладным для будущих инженеров.
• Вводили инженерные курсы постепенно. Начиналось все с пилотных спецкурсов от практиков, которые потом, доказав свою ценность, врастали в обязательную программу.
• Сделали ставку на инженерное проектирование — сквозной проект на нескольких курсах, где теория тут же применялась на практике. Это и стало нашим главным козырем и аргументом.
Рождение партнерств: Luxoft и другие первые
Параллельно с учебным планом мы решали вторую гигантскую задачу: где взять тех, кто будет учить этим новым дисциплинам? Университетских профессоров по управлению требованиями в России тогда просто не существовало.
Ответ был очевиден: идти в индустрию. И здесь нам невероятно повезло встретить команду Luxoft. Они стали нашими первыми и главными стратегическими партнерами. Это не было простым «читайте у нас лекции». Это было глубокое погружение индустрии в образовательный процесс:
• Практики как преподаватели. Ведущие архитекторы, менеджеры проектов, аналитики Luxoft вели курсы и руководили дипломными проектами.
• Реальные кейсы. Студенты работали не с учебными задачами, а с упрощенными, но реальными проблемами из проектов компании.
• Стажировки и трудоустройство. Появилась ясная карьерная траектория: университет → стажировка в партнерской компании → job offer.
Успех модели с Luxoft стал сигналом для всего рынка. Позже к нам потянулись и другие лидеры — «Яндекс», КРОК, «Лаборатория Касперского». Но именно Luxoft, как первопроходец, поверил в нас на этапе идеи и помог отлить ее в конкретные учебные курсы. Это было партнерство, основанное на общей боли и общей мечте изменить индустрию.
Главный принцип: инженер — это состояние ума
В итоге, рождаясь, направление сформулировало для себя главный принцип: мы готовим не продвинутых программистов, а инженеров. Инженер — это системное мышление:
• это понимание того, что, прежде чем писать код, нужно понять задачу, договориться с заказчиком и спроектировать решение;
• это знание, что код пишется не для себя, а для коллег, которые будут его читать и поддерживать годами;
• это ответственность за сроки, бюджет и качество.
Этот принцип и стал нашей путеводной звездой. Все решения — от выбора тем для курсовых до приглашения лекторов — мы проверяли на соответствие ему.
Учебник Владимира Васильевича Липаева «Программная инженерия. Методологические основы» был для нас своего рода интеллектуальным маяком и одновременно точкой отталкивания.
Почему Липаев был важен как маяк?
В начале 2000-х в России практически не было русскоязычных фундаментальных трудов, которые бы системно рассматривали создание ПО именно как инженерную дисциплину. Работы Липаева, вышедшие в начале 2000-х, были одними из первых. Они давали нам, организаторам, концептуальный каркас и язык. В них была та самая системность, строгость и попытка вывести ремесло программирования на уровень инженерной науки, что полностью соответствовало нашей миссии. Это был важный сигнал легитимности для скептиков внутри академического сообщества.
Почему он стал точкой отталкивания?
Однако для магистерской программы «Управление разработкой программного обеспечения», ориентированной на подготовку современных IT-менеджеров и лидеров проектов, подход Липаева был уже недостаточным. И вот почему:
Что стало основой вместо одного учебника?
Поэтому мы пошли по пути синтеза и постоянного обновления.
• Международный стандарт как основа. Нашим главным «учебником» стал свод знаний SWEBOK (Software Engineering Body of Knowledge) и стандарты ISO/IEC. Они давали нам актуальный и признанный в мире каркас.
• Живые лекции от практиков. Основной материал доносили приглашенные эксперты из индустрии. Их слайды, кейсы, разборы реальных проектов и были самым ценным контентом. Это были не просто лекции, а мастер-классы носителей самого передового опыта.
• Актуальная переводная литература. Мы активно использовали переводы ключевых книг, например С. Макконнелла, Р. Пресса, Ф. Брукса, а позже — литературы по Agile, Scrum, DevOps.
• Создание собственных материалов. Постепенно у нас самих, у преподавателей-практиков накопился уникальный опыт, который лег в основу наших собственных методичек и, позже, учебных пособий.
Таким образом, учебник Липаева был важным историческим этапом, который показал нам дорогу, но не мог быть конечным пунктом. Он помог сформировать запрос на нечто большее — на живую, динамичную, интегрированную с индустрией образовательную модель, которая могла бы меняться быстрее, чем выходят печатные учебники.
Этот принцип — программа как живой организм, а не застывший канон — стал, на мой взгляд, одним из главных секретов долголетия и актуальности нашего направления.
— Расскажите подробнее об академических лидерах первого состава команды направления ПИ Вадиме Подбельском и Владимире Липаеве.
— Профессор Вадим Валерьевич Подбельский (1937–2021) — инженерный лидер и консолидатор образовательной школы программной инженерии НИУ ВШЭ, один из ключевых преподавателей программной инженерии НИУ ВШЭ периода становления и консолидации направления, сыгравший важную роль в превращении программной инженерии из организационного проекта в устойчивую инженерно-образовательную практику.
Место в истории направления
Отделение программной инженерии ВШЭ было институционально создано в 2006 году. В первые годы его развития сформировались два взаимодополняющих типа академических ролей:
• стратеги и архитекторы направления, определявшие концепцию и институциональные рамки;
• преподаватели-инженеры, обеспечившие практическую реализуемость и педагогическую устойчивость программ.
Вадим Подбельский относится именно ко второй группе — преподавателям, которые делают направление работающим. Вадим Валерьевич усилил блок дисциплин, связанных с программированием, инженерные аспекты разработки ПО, культуру корректного и воспроизводимого программного решения. На этом этапе его вклад был особенно значим в балансировке управленческого и инженерного компонентов программной инженерии.
В 2009–2010 годах, когда направление переходило от экспериментального режима к устойчивой академической модели, Вадим Подбельский закрепился как опорный преподаватель базовых курсов, участвовал в стандартизации учебных материалов, обеспечивал преемственность между бакалавриатом и магистратурой.
Фактически он стал одним из тех, кто сформировал скелет инженерной подготовки, на который в дальнейшем наращивались специализации и исследовательские треки.
Педагогический подход Подбельского характеризовался инженерной строгостью, вниманием к архитектуре и внутренней логике программных решений, ориентацией на качество реализации, а не формальное выполнение требований, высокой требовательностью к культуре кода и мышлению студента.
В обобщенном виде его курсы и методическая работа были направлены на формирование у студентов инженерного мышления программиста, способности работать с реальной сложностью программных систем, понимания программной инженерии как профессии, а не набора технологий.
В истории программной инженерии НИУ ВШЭ роль Вадима Валерьевича Подбельского может быть сформулирована следующим образом. Он сыграл ключевую роль в институциональном приземлении программной инженерии, превратив ее из концепции и управленческой модели в систематическую инженерную образовательную практику. Его вклад — это вклад в качество, устойчивость и профессиональную культуру направления.
Профессор Владимир Васильевич Липаев (1928–2015) — методолог и научный ориентир программной инженерии НИУ ВШЭ. Один из наиболее авторитетных отечественных специалистов в области программной инженерии, качества программного обеспечения и системной инженерии, чье участие в образовательном процессе ВШЭ сыграло ключевую роль в академической легитимации и теоретическом углублении направления «Программная инженерия».
Если создание отделения программной инженерии в ВШЭ (2006) было институциональным и организационным шагом, то участие В.В. Липаева стало шагом научно-методологическим.
Владимир Васильевич выступал как внешний, но системообразующий авторитет, обеспечивший связь программной инженерии ВШЭ с советской и российской научной школой инженерии ПО, международной традицией software engineering (IEEE, ISO, SEI).
В период запуска и раннего развития направления Владимир Липаев выступал как носитель строгой инженерной парадигмы программной инженерии, задавал высокую планку формализации, жизненного цикла, верификации и качества ПО, служил точкой отсчета научной корректности для формируемых курсов и программ.
Его присутствие в образовательном контуре ВШЭ означало, что программная инженерия трактуется не как набор практик программирования, а как полноценная инженерная дисциплина с собственной теорией.
На этапе консолидации (конец 2000-х) вклад В.В. Липаева проявился в формировании научно корректного языка программной инженерии, ориентации магистратуры на системность, стандарты, доказуемость инженерных решений, укреплении связи обучения с научными публикациями и монографиями.
Фактически он выполнял функцию академического эталона, с которым соотносились курсы и требования.
Ключевые области экспертизы:
• программная инженерия как инженерная дисциплина;
• качество и надежность программного обеспечения;
• жизненный цикл сложных программных систем;
• стандарты и нормативные модели разработки ПО.
Значение для студентов и ППС
Для студентов это знакомство с классической инженерной школой, понимание глубины и ответственности профессии.
Для преподавателей это методологическая опора, защита от излишней технологической конъюнктурности, прививка академической строгости.
— Если бы вы рисовали не официальную хронологию, а график эмоциональной кривой развития направления, какие были бы самые яркие пики (моменты прорыва) и впадины (трудные моменты)? Как менялось восприятие «Программной инженерии» внутри университета и со стороны работодателей в IT-индустрии?
— Если бы я рисовал эту эмоциональную кривую, она была бы очень динамичной — с крутыми взлетами от осознания прорыва и глубокими спадами сомнений. Вот ее ключевые точки.
Самые яркие пики
Глубокие впадины (трудные моменты)
Эволюция восприятия: от скепсиса к эталону
• Внутри университета: путь от «секты инженеров-еретиков» до уважаемого донора методик и доходного направления.
— Тогда (2000-е): «Зачем вам этот менеджмент? Программист должен писать код, а не диаграммы рисовать».
— Сейчас: «Программная инженерия» — это бренд ФКН и Вышки, один из самых востребованных и конкурентоспособных образовательных продуктов. Наши наработки используют другие факультеты. Из маргиналов мы стали центром притяжения и распространения лучших практик.
• Со стороны IT-индустрии: путь от настороженного непонимания до стратегического партнерства и конкуренции за выпускников.
— Тогда (2000-е): «Ваши студенты слишком теоретизированны. Дайте нам просто кодеров на Java».
— Сейчас: крупнейшие компании (VK, «Яндекс», Сбер, Ozon, Tinkoff) создают с нами совместные магистерские программы, базовые кафедры, лаборатории. Они ценят не кодеров, а выпускников с архитектурным и системным мышлением, способных сразу включаться в сложные проекты. Работодатели участвуют в разработке программ, потому что видят в этом прямые инвестиции в свой кадровый потенциал.
Эмоциональная кривая — это история взросления. От юношеского максимализма и борьбы через кризисы и периоды усталости к зрелой уверенности, устойчивости и признанию. Самое главное, что низкие точки никогда не перевешивали высокие, потому что всегда находились люди (коллеги, студенты, партнеры), которые разделяли веру в нашу общую идею.
— Были ли решения в развитии направления, которые тогда, несколько лет назад, казались спорными или рискованными, а сегодня считаются одними из самых правильных? Какие события или решения вы назвали бы самыми значимыми для развития направления за эти годы?
Решения, казавшиеся спорными, но ставшие прорывными
1. Отказ от монополии одного партнера.
• Риск тогда. Первые годы мы глубоко интегрировались с Luxoft. Было искушение пойти по пути эксклюзивного партнерства, создав целевую подготовку для одной компании. Это дало бы стабильность и ресурсы.
• Наше решение. Мы сознательно пошли на плюрализм, начав развивать партнерства с Институтом системного программирования РАН, «Яндексом», КРОК, потом Mail.ru, Сбером и другими. Это создавало организационную головную боль: разные стандарты, разные запросы, конкуренция за студентов.
• Почему это было правильно. Это сформировало у студентов критическое отраслевое мышление. Они не учились «под один завод», а видели разные культуры, методологии, бизнес-модели. Они стали более адаптивными и независимыми. Это создало здоровую конкуренцию работодателей за наших выпускников, а не наоборот.
2. Размывание границ между бакалавриатом и магистратурой.
• Риск тогда. Классическая модель: бакалавр — фундамент, магистр — специализация. Мы же стали внедрять элементы управления проектами, работы в командах, презентации результатов уже на 2–3-м курсе бакалавриата.
• Споры: «Они еще не освоили языки программирования, а вы заставляете их UML-диаграммы рисовать и устав проекта писать! Это формализм!»
• Почему это было правильно. Мы воспитывали инженерное сознание с самого начала. Студент к выпуску из бакалавриата приходил не просто пишущим код, а с пониманием полного цикла. Это резко сокращало время его адаптации на работе и закладывало основу для осознанного выбора магистратуры.
3. Ставка на преподавателей-практиков как на ядро, а не приложение.
• Риск тогда. В академической среде статус дают ученые степени, монографии. Мы же дали ключевые курсы («Архитектура ПО», «Управление проектами», DevOps) людям из индустрии, часто без PhD. Их курсы были живыми, но теоретически менее строгими.
• Споры: «Вы обесцениваете академическую составляющую, превращаетесь в курсы повышения квалификации».
• Почему это было правильно. Это гарантировало актуальность знаний на уровне индустрии. Теорию студенты получали в фундаментальных курсах, а вот практическую инженерию — из первых рук. Сегодня эта модель — золотой стандарт, но тогда мы были одними из первых, кто поставил на это так смело.
Самые значимые события и решения
Если выбирать не решения, а события-вехи, то это:
1. Разработка и утверждение первого в России ГОС (государственного образовательного стандарта) по «Программной инженерии».
• Значимость. Мы не просто открыли программу в Вышке. Мы легитимизировали профессию на уровне страны, создали нормативный каркас, по которому потом стали работать десятки других вузов. Это была не локальная, а системная победа.
2. Создание факультета компьютерных наук (ФКН) в 2014 году.
• Значимость. Выход из состава более общего факультета (бизнес-информатики) и создание ФКН стало для нас качественным скачком. Программная инженерия перестала быть одной из специальностей, а стала одним из столпов мощного IT-факультета наравне с data science и компьютерным зрением. Это дало невиданный синергетический эффект, приток сильнейших абитуриентов и новый уровень ресурсов.
3. Запуск и феноменальный успех магистратуры «Управление разработкой ПО» (Software Engineering and Management).
• Значимость. Эта программа стала нашим флагманом и лабораторией инноваций. Она привлекла не только вчерашних бакалавров, но и действующих тимлидов и архитекторов, желающих прокачаться системно. Она доказала, что можно делать магистратуру не для галочки, а для реального карьерного рывка, и стала эталоном для подражания.
4. Формирование сообщества выпускников, которые вернулись преподавать.
• Значимость. Это было не запланированное решение, а органически выросшее событие, ставшее ключевым. Когда наши выпускники, достигнув высот в индустрии (в VK, Tinkoff, Ozon и т.д.), стали возвращаться читать курсы и руководить проектами, образовательная петля замкнулась. Они стали самым сильным «каналом обратной связи» и гарантией того, что программа не оторвется от реальности. Это высшая форма признания и устойчивости экосистемы.
Эти решения и события не были прописаны в изначальном плане. Они рождались в спорах, на острие проблем. Но их общая черта — готовность делегировать часть контроля индустрии и выпускникам, довериться обратной связи и создать не иерархическую структуру, а живую сеть. Именно это и обеспечило не просто выживание, а лидерство направления.
За прошедшие годы портрет идеального выпускника совершил эволюцию от технически компетентного исполнителя к техническому лидеру и архитектору ценностей. Если раньше мы добавляли менеджерские навыки к технической основе, то сегодня они органически сплавлены в новое качество.
Тогда vs сейчас: эволюция портрета
Критически важные качества сегодня (помимо технических навыков)
1. Системное и продуктовое мышление (№1). Выпускник должен видеть не «таск», а целый продукт, бизнес-контекст и жизненный цикл. Как его решение повлияет на пользователя, на бизнес-метрики, на сопровождаемость через 5 лет? Это мышление архитектора, а не кодера.
2. Коммуникация как инженерный инструмент. Речь не об умении выступать. Речь о способности:
• декомпозировать и объяснять сложное — бизнесу, коллегам, заказчику;
• вести трудные переговоры о сроках, качестве, требованиях;
• писать документацию и комментарии как для людей, а не как для компилятора.
Это ключевой навык для масштабирования impact — своего и команды.
3. Этическая и социальная ответственность. Раньше это было на периферии. Теперь это must-have. Выпускник должен осознавать последствия своих решений: безопасность данных, этичность алгоритмов (AI ethics), инклюзивность интерфейсов, экологичность вычислений (green IT). Он — не нейтральный технократ, а создатель новой цифровой среды, отвечающий за ее качество.
4. Навык управления вниманием и непрерывного переобучения (learnability). Скорость изменений такова, что конкретный фреймворк устаревает за 2–3 года. Критически важен метанавык — умение эффективно фильтровать информацию, быстро погружаться в новое и отсеивать шум. Это когнитивная выносливость.
5. Командная резильентность (устойчивость). Умение работать в распределенных, кросс-культурных, междисциплинарных командах, разрешать конфликты, поддерживать других в условиях стресса и неопределенности (как в том же кризисном переходе на удаленку). Ценят не того, кто просто не ломается, а кто помогает не сломаться команде.
Что это значит для образования сегодня?
Раньше мы добавляли soft skills отдельным курсом. Теперь они интегрированы в саму ткань обучения:
• любой групповой проект — это тренировка коммуникации, лидерства и управления конфликтами;
• разбор кейсов из этически сложных областей (соцсети, финтех) — формирование ответственности;
• работа с open source или реальным заказчиком — развитие продуктового мышления.
Идеальный выпускник сегодня — это T-shaped-специалист нового поколения:
• вертикальная черта буквы T — глубокое инженерное ядро (принципы, а не только технологии);
• горизонтальная черта — широчайший набор мягких компетенций (коммуникация, этика, менеджмент), позволяющих применять это ядро в сложном социальном и бизнес-контексте.
Мы больше не готовим «специалистов для IT-индустрии». Мы готовим технических лидеров, которые будут формировать ландшафт всей цифровой экономики. И это смещение фокуса — самый важный итог последних двадцати лет.