18 ИЮНЯ / 2020
ПЕРСОНА

«Программисты должны учиться постоянно»

Андрей Сергеевич Станкевич, к.т.н., доцент факультета информационных технологий и программирования Университета ИТМО – один из лучших в мире специалистов по поиску IT-талантов – о своей работе, точнее, о призвании.
Андрей Сергеевич, как вы пришли по жизни к программированию? Был какой-то факт или опыт, который вас подтолкнул к этому?

– В 1990-е годы учился в старших классах школы. Эпической истории о том, как я увлекся программированием, нет, но мне было интересно. Читал книги, купил компьютер, ходил на кружок по программированию. Я относительно неплохо выступил на районной олимпиаде, меня позвали на сборы. Потом я познакомился с кафедрой, на которой в итоге учился и где и остался работать. Там проводились подготовительные курсы. Я на них записался и в итоге поступил.

Не могу сказать, что я увидел какого-то великого программиста и принял решение, оно пришло постепенно и осознанно. К тому же времена были тяжелые, а программисты уже тогда хорошо зарабатывали. И это, возможно, стало для меня неким дополнительным аргументом. Программистом я в итоге так и не стал, стал преподавателем.

А что заставило вас остаться на кафедре. Ведь, как вы говорите, можно было работать и хорошо зарабатывать уже тогда?

– Если просто отвечать на этот вопрос, то это – мое призвание. Вряд ли я мог это предсказать, когда был еще в школе, но когда я учился в университете, мы уже вели кружки для школьников. Я помогал своим товарищам в группе по учебе. Именно тогда и понял, что это то, чем я хочу заниматься.

Преподаватели вас подталкивали, просили остаться на кафедре?

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

В общем, программистом вы не стали, стали преподавателем.

– Я поработал программистом совсем немного. И окончательно убедился в том, что это не мое. Но это не сложилось бы само по себе, без фактора денег. Тут нужно сказать огромное спасибо нашему декану, Владимиру Глебовичу Парфенову, и моему наставнику, профессору Анатолию Абрамовичу Шалыто, которые понимали, что преподавать кто-то должен и людей нужно удерживать в университете. Они много работали с компаниями, со спонсорами, чтобы сохранить хороший преподавательский состав. Это превратилось в программу, которая сохраняет в университете лучших, в ее рамках финансировалась преподавательская работа на нашей кафедре. Она до сих пор работает. Но в начале «нулевых» это был очень значимый фактор, который позволил мне и основному костяку нашей кафедры остаться учить других.

Сейчас вы руководите образовательным процессом. Устраивает ли тот формат образования, который есть?

– На этот вопрос нет однозначного ответа «да» или «нет». Есть какие-то процессы, которые просто должны эволюционировать. Предметы, сама форма преподавания. Есть фундаментальные вещи, которые развивают мозг и умение размышлять, математические основы, которые должны остаться неизменными. Есть, с другой стороны, современные технологии, научные и практические знания, которые нельзя передать в академической форме. Так что современные формы образования тоже должны быть, и они у нас есть.

Что касается того, чтобы совсем отказаться от классической формы образования и перейти только на проектную, междисциплинарную форму, тут я не согласен. Фундаментальное ядро должно быть. Оно для тех, кто готов потратить силы и время на образование, и эти люди лучше приспособятся к изменениям технологий в будущем. Тем более что программисты должны учиться постоянно.

Есть ли проблемы в образовательном процессе?

– У нас нет дефицита оборудования или образовательных материалов. Компьютеры не очень дорогие, и с ними проблем нет. Проблема в том, что профессия очень востребованная, спрос значительно превышает предложение. И вузов, которые реализуют наиболее сильные программы по программированию, ограниченное количество. Так что полностью удовлетворить спрос нельзя.

И вторая проблема – преподавателю нужна сильная внутренняя мотивация, чтобы работать. А потолок зарплаты здесь ниже, чем в индустрии. Хотя у нас на факультете все, кто работает на полную ставку, зарабатывают хорошо. Но это совсем не так в региональных вузах, поэтому кадров не хватает. Потому кадровая проблема и проблема пропускной способности – основные.

Есть ли у вас собственные методы преподавания?

– Я всегда особо обращаю внимание на умение студентов презентовать свою работу, показать свои лучшие стороны и результаты. Формат рассказа решения задания перед аудиторией помогает им в будущем и при собеседовании, и при презентации стартапов.

Именно под вашим началом программисты, которые участвуют в олимпиадах, берут первые места и обходят такие известные вузы, как американский MIT (Массачусетский технологический институт). В чем секрет?

– Если бы секрет был, то я бы его не выдал. А если серьезно, то чемпионат мира по программированию – это верхушка айсберга. И есть несколько причин, почему именно Россия и Китай добиваются там успехов. Для китайских и восточно-европейских студентов очень важна мотивация – вырваться вперед, чтобы их заметили, и потом получить хорошее положение на работе, быть на хорошем счету в своем университете, в своей стране. Для студента из провинции до недавнего времени не было другого способа заявить о себе. Мотивация – необходимый инструмент успеха. А еще студентам надо дать возможность этим заниматься.

Второй ключ к успеху – это системная работа и со школьниками, и со студентами. Им становится это интересно, а олимпиады – возможность проверить себя и добиться успеха.

Вы один из лучших в мире по поиску IT-гениев. Как их искать?

– Человек приходит туда, где ему интересно и где он находит поддержку. Моя цель – сделать так, чтобы было интересно и была возможность соревноваться. Про наш факультет говорят, что здесь много олимпиадников, но в реальности их не так уж и много. На первом курсе на двух направлениях 500 студентов, а в итоге занимаются олимпиадами систематически 3–5 человек после второго семестра. Но эти 3–5 человек тратят много времени на спортивное программирование. И первое место в мире по спортивному программированию – это действительно спорт больших достижений. Для большинства остальных – это просто физкультура для мозга.

Недавно к нам на факультет пришел Михаил Мирзаянов, в 2010 году он создал сайт codeforces.com. Codeforces стал настоящей социальной сетью для любителей спортивного программирования, где проводятся соревнования, идет общение специалистов и любителей из разных стран. Только за прошлый январь аудитория ресурса составила около полумиллиона человек со всего мира. Ограничений по участию нет. А на чемпионатах мира есть жесткие ограничения.

Можно ли достичь успеха в IT без высшего образования? Сейчас много рекламы курсов для программистов с нуля. Реально ли это?


– Возможно все. А вот будет ли такой программист лучше или хуже, не знаю. В среднем, при наличии высшего образования программист будет зарабатывать больше и осваивать новые технологии быстрее. Но, помимо образования, огромное количество факторов влияет на его успех.

Многие родители пытаются занять детей с ранних лет ментальной математикой, основами программирования. Ваше мнение, есть ли в этом смысл или это все зарабатывание денег на хайпе?

– Я думаю, что это не так уж сильно на что-то влияет. Опыт работы со школьниками говорит о том, что в среднем фундамент закладывается с 7–8 класса. Если что-то происходило в детстве, конечно, хорошо, если это нравилось ребенку, если у него нет отвращения от слова «программирование» и взаимодействия с компьютером иного, чем игры и серфинг в интернете. На мой взгляд, в итоге не будет особой разницы между теми, кто начал учиться в первом и в восьмом классе. Я всегда привожу в пример нашего чемпиона мира, который в школе занимался физикой и программировал на первом курсе, нажимая на кнопки одним пальцем. Считать, что ранние вливания знаний дадут какую-то значительную фору, ошибочно. Но если ребенку это с детства интересно, то почему бы нет. У нас сейчас есть проект кружка по обучению информатике с четвертого класса. Так что планка неизбежно будет смещаться в сторону более раннего возраста. Кстати, помимо программирования, есть робототехника, моделирование – сейчас это также часть IT-сферы.

Спортивное программирование применимо в жизни? Можно сказать, что победитель олимпиады быстрее и лучше напишет для компании красивый код, или это не так?

– Сложно сказать, можно говорить только о конкретном случае. Можно представить такой случай, когда человек вроде гений, но на работе только кофе пьет и играет в пинг-понг. А можно привести в пример Илона Маска, который никогда не побеждал в олимпиадах и из Стенфорда ушел. Но если посмотреть на вопрос статистически, то спортивное программирование – это не штангу поднимать. Надо изучить алгоритмы, структуры данных, глубоко освоить язык программирования. Уметь быстро принять решение. Это не то же самое, что успешно работать, но такие люди могут быстро сделать и показать успешный прототип, быстро что-то написать или отладить. Каков будет этот человек на длинной дистанции в работе, зависит очень от многих качеств. Опыт показывает, что человек, который направил усилия на развитие мозга, новые навыки приобретает быстрее, а старые теряет медленнее. Может быть и отрицательный эффект: при написании олимпиад есть эффект быстрого подкрепления. А в трудных и долгих проектах такого нет. Это уже психология.

У нас есть примеры компаний, которые набирают спортивных программистов, а потом не знают, как и где их применить. Вроде человек умный и блестяще прошел собеседование, а дальше что-то не получается и великих успехов нет. Другие компании, например, Google, сумели найти ключ к олимпиадникам и успешно пользуются их навыками. Google, Яндекс и Facebook сами постоянно проводят соревнования и отлавливают талантливых специалистов.

Вам жаль, когда ваши выпускники уходят работать в западные компании? Или это глобальная экономика и так все и должно быть?

– В начале, в 2008–2009 годах, многие международные компании открыли в России свои инженерные офисы. Я был тогда очень рад за наших ребят, они могли реализоваться в своей стране и при этом работать на международную корпорацию. Потом в России появилось много ограничений для работы этих компаний. И под давлением ограничений компании стали уходить. Обидно не то, что выпускники хотят и работают в международных компаниях, жаль, что они делают это не в России. Тем более что многие российские компании, тот же Яндекс, частично все равно принадлежат иностранным инвесторам.

Преимущество работы на международную компанию в России не только в уплате налогов, но и в том, какую пользу в целом этот специалист может принести дополнительно, например, преподавая. А вот после закрытия российского отделения Google многие русские специалисты уехали в Польшу и Германию.

Расскажите немного о международной лаборатории компьютерных технологий. Какие у нее задачи?


– Есть несколько направлений, я хорошо знаю три из них, поскольку их возглавляют мои выпускники. Всего их уже больше.

Первое направление – это биоинформатика, проект, который существует уже более пяти лет, над ним работают совместно с университетом Вашингтона в Сент-Луисе. В том направлении очень хорошие результаты, ребята публикуются в самых рейтинговых журналах мира, сотрудничают с Центром им. Алмазова и занимаются изучением и анализом генома.

Второе направление – это лаборатория искусственного интеллекта и машинного обучения. Это направление работает в партнерстве с компанией Huawei, они занимаются не только продажей телефонов, но и такими вот разработками. У них открыты офисы в Санкт-Петербурге и Москве, там работает много наших выпускников, а наши студенты стажируются.

И важное третье направление, которое возглавляет Максим Буздалов, – тоже искусственный интеллект, но через генетическое и автоматное программирование. Там ведется много теоретических исследований.

Руководит лабораторией Владимир Ульянцев, наш выпускник, и вот он уже сможет рассказать о ней подробнее.

Назовите, пожалуйста, ваших талантливых учеников.

– Знаете, я, наверное, буду нагло демонстрировать чемпионов мира, потому что у нас их действительно много. Павел Маврин, чемпион 2004 года, пошел по моим стопам и занимается преподаванием алгоритмов у нас на кафедре, вместе с Михаилом Мирзаяновым он сейчас развивает образовательный раздел Codeforces, где они записывают видеолекции и выкладывают материалы. Павел одним из первых начал записывать и оформлять лекции и выкладывать в интернет. Это очень удобно.

Максим Буздалов, чемпион мира 2009 года, руководитель одного из направлений нашей лаборатории. У него множество публикаций в лучших журналах мира по теоретическим основам эволюционных вычислений.

Дмитрий Павлов после окончания ИТМО передумал, сменил направление на математику, учился и работал в США и стал строить карьеру именно ученого математика. Недавно мы смотрели список его работ, и в названиях, кроме предлогов, уже ничего не понимаем. Он работает в своей глубокой и узкой области.

Федор Царев, чемпион мира 2008 года, руководитель российского подразделения крупного международного закрытого хедж-фонда WorldQuant.

У нас много выпускников, которые работают в индустрии, например, Владислав Исенбаев, чемпион мира 2009 года, работает в Facebook. Чемпион мира 2013 года Михаил Кевер работает в компании, которую основал в США наш выпускник аспирантуры Никита Шамгунов, MemSQL. Совершенно разные карьеры.

Расскажите про ваших наставников и руководителей.

– Как я уже говорил, это Владимир Глебович Парфенов, наш декан, и Анатолий Абрамович Шалыто – вот именно те люди, благодаря которым у преподавателей есть возможность заниматься любимым делом. Именно они сделали так, что наша кафедра стала известной (и по той же причине состоялось и это интервью).

Автор: Оксана Белянская

Фото: личный архив Станкевича А.С.

Энциклопедия промышленности России