1. Как спортивное программирование формируют «воронку» из крутых специалистов и как это, в конечном счете, работает на рост ИТ-индустрии и стартапов, зарубежный и российский опыт (философский взгляд).
Отношение к олимпиадникам, особенно высшего уровня, в промышленности и высшей школе неоднозначно. Многие относятся к ним отрицательно, так как с этими ребятами сложно: они очень умные, с непростым характером, хотят решать трудные задачи, к которым привыкли на олимпиадах (и которых нет в большинстве компаний), а самое главное для компаний – у них обычно низкие soft skills.
Это, конечно, все так, но если Вы их «приручите», то у Вас будет все классно. Недаром, при приеме на работу в такие компании как, например, Google и Microsoft, которые не боятся олимпиадников, в основном требуются знания и умения, которыми обладают только молодые люди, прошедшие горнила олимпиад.
Например, кто из Ваших знакомых, которые не являются олимпиадниками, через 30 секунд на английском языке сможет ответить по телефону на вопрос, заданный на английском языке: «Обход графа в ширину на Java, диктуй код». Если раздумье продолжится дольше, то интервью на этом заканчивается, и на очное собеседование в компанию тебя не пригласят.
Если же приглашение поступит, то Вам на собеседовании пять человек по часу каждый будет предлагать решать значительно более сложные задачи. При этом указанные компании выясняют, как человек соображает, а не то, знает ли он технологии, так как их знания – вещь наживная, а ума если нет, то уже и не будет.
Я кратко расскажу о пяти карьерах наших выпускников – известных олимпиадников, каждый из которых добился выдающихся успехов в своей области, что сводит на нет устоявшееся мнение о них, приведенное выше.
Роман Елизаров (год рождения – 1977), лауреат премии Президента РФ в области образования 2003 г., чемпион России по программированию 1996 г., председатель жюри полуфинальных соревнований по программированию ACM ICPC в Северо-Восточного Европейском регионе с 1997 г., руководитель группы ICPC Live, которая освещает ход финалов чемпионатов мира в Интернете, член совета директоров компании DevExperts (https://www.devexperts.com/) – разработчика программного обеспечения для финансовых компаний, один из создателей в компании JetBrains языка программирования Kotlin.
Никита Шамгунов (1981), мой аспирант, кандидат технических наук, закончил матмех Уральского государственного университета, бронзовый призер чемпионата мира по программированию ACM ICPC 2001 г., успешно проработал в таких компаниях как «Транзас» (Санкт-Петербург), Microsoft (Редмонд) и Facebook (Пало-Альто). После этого успешно прошел акселератор Y Combinator, по окончании которого, получил начальный капитал от Юрия Мильнера, и стал сооснователем широко известного сегодня в ИТ-мире стартапа MemSQL. В настоящее время руководит этой компанией (http://www.memsql.com/).
Андрей Станкевич (1981) – почетный доктор Университета ИТМО, кандидат технических наук, призер чемпионатов мира ACM ICPC 2000 и 2001 гг., лауреат премии Президента РФ в области образования 2003 г., бессменный председатель жюри Всероссийской командной олимпиады школьников по программированию, начиная с первого года ее проведения (2000), руководитель летних и зимних школ для одаренных в области информатики школьников, тренер команд Университета ИТМО, которые семь раз становились чемпионами мира по программированию ACM ICPC – лучший тренер мира в области спортивного программирования, доцент кафедры «Компьютерные технологии» Университета ИТМО, который ведет различные курсы по информатике.
Федор Царев (1986) – чемпион мира по программированию ACM ICPC 2008 г., кандидат технических наук, автор большого числа публикаций в области генетических алгоритмов, лауреат премии Правительства Санкт-Петербурга в области инноваций (2007), лауреат Гран-при первой молодежной национальной премии «Прорыв» (2009), директор Санкт-Петербургского и Московского подразделений хедж-фонда «WorldQuant Research (Eurasia)» (http://www.zoominfo.com/p/Fedor-Tsarev/-1884041832).
Максим Буздалов (1987) – чемпион мира по программированию ACM ICPC 2009 г., кандидат технических наук, доцент кафедры «Компьютерные технологии» Университета ИТМО, автор более 50 публикаций в области эволюционных вычислений, индексируемых в базах данных Web of Science и Scopus, автор онлайн-курса «How to Win Coding Competitions: Secrets of Champions» EdX (https://www.edx.org/course/how-win-coding-competitions-secrets-itmox-i2cpx-0), лауреат премии Правительства РФ 2016 года в области образования.
Недавно один наш выпускник написал, что студент ничего не должен делать, кроме как хорошо учиться. На это я ответил ему: «У Максима Буздалова в 28 лет около 50 признанных в мире научных работ, о чем в 2016 г. Станкевич рассказал В.В. Путину на встрече в Константиновском дворце (http://www.kremlin.ru/events/president/news/page/23). Для того, чтобы этого добиться – и трудов, и встречи с Президентом России, им надо было «рано» начинать! И Станкевичу, и Буздалову!».
2. У нас такие крутые победители, но это почему-то не приводит к созданию крупных ИТ-историй в России с точки зрения бизнеса? Или они есть и Вы не согласны?
Я думаю, что этот вопрос не к профессору университета, а к Президенту РФ и Председателю Правительства. Я со своей стороны предложил инициативу «Сохраним в университетах лучших!» (http://savethebest.ru/). Это позволило «сохранить» для работы на постоянной основе на кафедре «Компьютерные технологии» Университета ИТМО пять чемпионов и двух призеров чемпионатов мира по программированию, а также других классных наших выпускников. Это обеспечило высококачественный процесс обучения студентов и школьников, проведение олимпиад всех уровней и побед в ряде из них и высокие результаты в науке, в таких областях как системная биология, эволюционные алгоритмы, машинное обучение, включая глубокие нейронные сети, и технологии программирования – 56 место в мире по версии Times Higher Education (https://www.timeshighereducation.com/news/world-university-rankings-2016-2017-results-by-subject-announced). Если председатель Правительства и Президент РФ объявят и будут поддерживать инициативу «Сохраним в России лучших!», то таких же успехов, как наша кафедра, добьется и вся наша страна.
Но и сегодня в России есть крупные ИТ-истории, одна из которых также связана с нашей кафедрой. 17.05.2017 на конференции Google I/O, компания Google объявила, что созданный компанией JetBrains язык программирования Kotlin получил официальную поддержку в качестве второго языка разработки (после Java) приложений на ОС Android, на которой работает более двух миллиардов мобильных устройств.
Лидер команды разработчиков этого языка – выпускник нашей кафедры Андрей Бреслав. В эту команду, в частности, входит наш выпускник чемпион России по программированию 2010 г. Антон Банных, который до этого работал в компании Google. Компания JetBrains, в которой работает всего 600 человек, тратит на поддержку науки и образования около двух миллионов долларов в год для того, чтобы вокруг нее не было «выжженной земли». Начиная с будущего года, она станет одним из спонсоров чемпионата мира по программированию ACM ICPC (https://blog.jetbrains.com/blog/2017/05/23/jetbrains-to-support-the-acm-icpc/) вместо компании IBM!
,b>3. Тренд в мире – соревнования подпитывают ИТ-экономику, с разными примерами и кейсами, о том, какие челленджи есть у тех, кто использует программирование и соревнования как инструмент, а также, что нужно сделать, чтобы он работал еще лучше.
Отличные ИТ-продукты и огромная благотворительная деятельность в области образования и науки привело, в частности, к тому, что в 2016 г. на 30 стажерских мест в компании JetBrains претендовало 600 кандидатов!
Многие компании мира проводят соревнования по спортивному программированию или спонсируют их, что увеличивает приток высококвалифицированных кадров в компании. Так, например, стартап MemSQL является спонсором очного тура соревнований TopCoder Open (https://topcoder.com/).
Компания «Яндекс» много лет является спонсором полуфинальных соревнований по программированию ACM ICPC в Северо-Восточного Европейском регионе, а в последние годы сама проводит соревнования по программированию – «Яндекс.Алгоритм» (https://yandex.ru/blog/company/yandeks-algoritm-2017).
Компания «ВКонтакте» также проводит свою олимпиаду VKCup (https://vk.com/vkcup). Кстати, в этой компании работают три чемпиона мира по программированию – один из Университета ИТМО: Борис Минаев, и двое из СПбГУ: Павел Кунявский и Дмитрий Егоров.
Компания Mail.Ru совместно с нашей кафедрой проводят соревнования Russian Code Cup (http://www.russiancodecup.ru/ru/), а также другие соревнования в области программирования.
Компания «Тинькофф» начала проводить свою олимпиаду Tinkoff Challenge совместно с Саратовским государственным университетом ().
И, конечно же, свои олимпиады проводят ИТ-гиганты: Facebook Hacker Cup (https://www.facebook.com/hackercup/) и Google Code Jam (https://code.google.com/codejam/).
Последнюю из этих олимпиад в 2017 г. в четвертый раз подряд выиграл студент нашей кафедры Геннадий Короткевич (https://en.wikipedia.org/wiki/Gennady_Korotkevich). Он до этого выигрывал все перечисленные выше соревнования, кроме Tinkoff Challenge, в котором не может принимать участия, так как является стипендиатом этой компании (https://www.tinkoff.ru/about/news/27092016-tinkoff-scholarship/).
Май 2017 г.