За последние 17 лет российские программисты 11 раз выигрывали мировое первенство по программированию АСМ ICPC, а в последние пять лет кубки уезжали в Россию ежегодно. Журнал РБК выяснил, как сложилась карьера нескольких финалистов одного из самых престижных IT-конкурсов мира

РБК

Крупный план — IT

Самый умный

Чем занимаются победители чемпионата мира по программированию

За последние 17 лет российские программисты 11 раз выигрывали мировое первенство по программированию АСМ ICPC, а в последние пять лет кубки уезжали в Россию ежегодно. Журнал РБК выяснил, как сложилась карьера нескольких финалистов одного из самых престижных IT-конкурсов мира

Текст: Ирина Юзбекова
Фото: Асхат Бардынов для РБК

Международный студенческий чемпионат по программированию Assoсiation for Computing Machinary International Collegiate Programming Contest (далее — ICPC) проводится с 1977 года. До финала, который каждый раз проходит в разных странах, доходит 100–120 команд, состоящих из трех человек. Организаторы турнира разыгрывают 12 комплектов медалей — по четыре золотые, серебряные и бронзовые награды.

За все время проведения ICPC чемпионами становились студенты в основном двух российских вузов — Санкт-Петербургского государственного университета (СПбГУ) и Санкт-Петербургского национального исследовательского университета информационных технологий, механики и оптики (ИТМО). В 2006 году победу одержала команда Саратовского государственного университета.

Соревнование студенческое, но даже через пять-десять лет участие в нем котируется при найме на работу, рассказал журналу РБК руководитель группы рекрутмента платформы Amazing Hiring Александр Пашинцев. Чаще всего медалистов и чемпионов таких олимпиад нанимают интернет-гиганты — «Яндекс», «ВКонтакте», Facebook (соцсеть признана в РФ экстремистской и запрещена), Google, Amazon, Mail.Ru Group, Avito или специализированные компании, занимающиеся, например, высокочастотным трейдингом, отмечает Пашинцев. По его данным, в крупных IT-компаниях 5–10% общего числа сотрудников — специалисты, прошедшие через турниры ICPC.

Молодежь, побеждающая на специализированных олимпиадах, может интересовать крупные западные компании, которые привыкли обучать сотрудников самостоятельно, считает старший консультант департамента «IT и телеком» кадрового агентства Cornerstone Ирина Лукавская. Уровень зарплат таких сотрудников зависит от современности технологии, в которой они разбираются, и числа профессионалов-конкурентов на рынке. Например, для тех, кто работает с программным обеспечением «1С» месячная заработная плата в 150 тыс. руб. — достойная, продолжает Лукавская, а АВАР-разработчики (знают внутренний язык программирования немецкой SAP) еще до кризиса 2008 года зарабатывали более 200 тыс. руб. в месяц.

Несколько участников ICPC отказались общаться из-за корпоративной политики компаний, в которых они сейчас работают. Журнал РБК поговорил с четырьмя чемпионами и медалистами ICPC и узнал, как сложилась их карьера и помогло ли им «олимпийское» прошлое.

Играющий тренер

Андрей Лопатин, двукратный чемпион мира по программированию (2000 и 2001 годы), считает, что ему удается совмещать карьеру в IT и педагогику. Его бывший наставник — старший преподаватель факультета информационных технологий и программирования СПбГУ Наталья Вояковская ушла после 15 лет работы, и Лопатин после второй победы в ICPC занял место главного тренера вуза. «Я хотел, чтобы дело жило. Если бы я не подхватил, оно бы развалилось», — рассказывает чемпион-преподаватель.

Программисты — это ценный ресурс, если они умеют не только писать код, но и знают, как должна работать программа, уверен Адрей Лопатин

Интерес к соревнованию в СПБГУ растет: еще десять лет назад число желающих заниматься спортивным программированием не превышало 100 человек в год. Теперь количество студентов, которые хотят испытать свои силы в чемпионате, достигает 200 человек ежегодно — к Лопатину приходят студенты с различных факультетов СПбГУ. В основном это студенты-математики — у каждого свои успехи, но в среднем обучение занимает около трех-пяти лет. Итоговый отбор на участие в конкурсе проходят примерно 50 человек, а в финал ICPC выходят лишь три человека.

На начальном этапе можно заниматься один-два раза в неделю по несколько часов, делится опытом Лопатин, на более продвинутом уровне — три раза в неделю по пять часов. Также необходимо постоянно выполнять домашние задания: например, студенты, которые не решили какие-то задачи в ходе занятий, обязаны доделывать их дома, иначе не будет прогресса, отмечает тренер.

При хорошем уровне подготовки студенты начинают раз в месяц-полтора участвовать в выездных мероприятиях — в одном из университетов собираются команды из разных вузов, которые соревнуются между собой. Сильнейшая по составу участников и тренеров площадка в России находится в Петрозаводском государственном университете, говорит Лопатин.

Периодически сборы проходят и за рубежом, но они, как правило, «гораздо слабее, чем в России» — из-за среднего уровня подготовки участников, рассказывает один из главных тренеров страны. Россия в последние годы доминирует в ICPC. В числе тех, кто может полноценно соперничать с российскими программистами, Лопатин называет американских, но это происходит за счет «импортированных» студентов — поляков, китайцев и других, поскольку в ведущие вузы США приезжают учиться со всего мира.

«Говорят, у китайцев есть сборы, подобные нашим, но нас на них никогда не звали, поэтому доподлинно неизвестно», — усмехается Лопатин. Когда он сам был школьником и участвовал в олимпиадах по программированию, о китайских участниках ходило множество слухов: якобы их вывозят в горы на год и заставляют тренироваться. Так это или нет, но китайские команды составляют «достаточно сильную конкуренцию», становится серьезен Лопатин.

Программирование требует «больших математических знаний», продолжает он: если начинать знакомство с математикой с детства, то развивается определенный склад ума. На ICPC участнику нужно не просто написать код — необходимо решить сложную проблему и открыть что-то новое, и без математического мышления и знания алгоритмов никуда, категоричен тренер. С каждым годом задания на чемпионате усложняются — задачи, которые 15 лет назад казались нереальными, сейчас можно решить за 15 минут.

Многие IT-компании проводят собственные соревнования по программированию: это позволяет им искать будущих сотрудников. Однако ICPC — самый престижный конкурс: его участники — не просто кодеры, которые создают программы, а специалисты, придумывающие, как такая программа может быть устроена, объясняет Лопатин. Финалисты ICPC могут сэкономить работодателю бюджет: 10 тыс. серверов обойдутся компании в $50 млн, а два толковых программиста могут рассказать, что необходимо сделать, чтобы не закупать эти серверы, объясняет тренер.

Подготовка команд СПбГУ к соревнованиям по программированию — основная работа Лопатина. В разные годы он работал во «ВКонтакте» и Telegram, созданных Павлом Дуровым, но сейчас параллельно с педагогикой занимается консультированием российского сервиса для построения логистических маршрутов VeeRoute. Лопатин признается, что с момента последнего своего личного чемпионства 15 лет назад он отказал примерно десяти крупным компаниям, которые звали его на работу.

Главный по котикам

Чемпионом мира ICPC Дмитрий Егоров стал в 20 лет — в 2014 году, когда учился на третьем курсе математико-механического факультета СПбГУ. Сейчас он возглавляет отдел разработки и оптимизации баз данных крупнейшей соцсети России «ВКонтакте» и продолжает учиться в магистратуре НИУ Высшей школы экономики. Впрочем, совмещение университета с работой — привычное для Егорова дело.

Дмитрий Егоров год назад возглавил отдел «ВКонтакте». Под его руководством — четыре чемпиона мира по программированию

Будущий чемпион мира окончил физико-математический лицей №239 в Санкт-Петербурге — престижную школу, в которой учились, к примеру, математик Григорий Перельман, доказавший гипотезу Пуанкаре, и родной брат основателя «ВКонтакте» Павла Дурова Николай, вместе с ним работавший над созданием и развитием соцсети.

В 2014 году финал чемпионата ICPC проходил в первых числах июля в Екатеринбурге. Команда СПбГУ, в которой выступал Егоров, заняла первое место — это была третья подряд победа России на мировом турнире. В первые годы учебы в университете Егоров стажировался в «Яндексе» — с 2012 по 2014 год. В компании прием «практикантов» поставлен на поток, поэтому при желании и «некотором уровне базовой подготовки» попасть туда совсем не сложно, рассказывает студент. Стажировку в «Яндексе» он называет «крайне полезной» — не только с точки зрения полученных навыков программирования, но и с точки зрения организации внутри большой компании. После стажировки Егоров понял, что не видит себя рядовым сотрудником большой корпорации.

«Я всегда был готов работать заметно больше и лучше других, но и ожидаю большей отдачи», — объясняет бывший студент СПбГУ. В больших компаниях недостаточно возможностей для роста и развития, им не хватает индивидуального подхода, сетует Егоров. И это касается не только «Яндекса», но и других IT-гигантов вроде Google. «Если хочется спокойной жизни с хорошей зарплатой и уверенностью в завтрашнем дне, то крупные IT-компании — отличный вариант. Но это не для меня», — считает чемпион ICPC.

Сразу же после церемонии награждения к Егорову подошел один из сотрудников «ВКонтакте» и предложил присоединиться к команде. Через несколько месяцев студент пришел на работу в крупнейшую соцсеть. Перспективы для него очевидны: весной 2014 года из «ВКонтакте» ушел Павел Дуров, вслед за ним компанию покинули многие разработчики. «Несмотря на десятки миллионов пользователей в день, вокруг вновь витал дух стартапа», — улыбается чемпион. Меньше чем через год Егоров возглавил отдел, в который пришел на рядовую позицию. В его отделе — семь человек: все они в разные годы участвовали в ICPC, четверо становились чемпионами мира.

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

Степень важности своего отдела для компании студент магистратуры оценивать не готов: во «ВКонтакте» сложно выделить ключевые и второстепенные отделы разработки. Для полноценной работы и развития необходимы все составляющие — и базы данных, и бэкэнд, и фронт-энд, и группа системных администраторов, и мобильная разработка. Без любой из этих частей сайт начнет деградировать довольно быстро, уверен Егоров: «Вы же не спрашиваете, какой орган у человека важнее — мозг или сердце? Без любого из них человек может жить разве что в анекдотах».

Все победители чемпионатов ICPC, как правило, могут выбирать место работы из довольно большого списка: например, генеральный спонсор чемпионата мира компания IBM во время награждения раздает всем призерам приглашение связаться с их HR-службой и обсудить вакансии, вспоминает Егоров. Для себя он сразу решил, что не хочет уезжать из России.

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

Поле возможностей

Студент 1-го курса механико-математического факультета СПбГУ Глеб Леонов и двое друзей увидели на стенде университета объявление о наборе желающих заняться олимпиадным программированием. Выпускник математической школы — Академической гимназии СПбГУ, в которой учился Павел Дуров, заинтересовался. Так он попал в «класс» Андрея Лопатина. Дважды Леонов становился финалистом ICPC, один раз завоевал серебряную медаль. Во время учебы в СПбГУ Леонов не подрабатывал: в этом не было особой необходимости, а учеба и тренировки по программированию занимали много времени, вспоминает он. После университета Леонов поступил в аспирантуру, но через год ушел: захотел сконцентрироваться на программировании.

Глеб Леонов с детства любил решать математические задачи, а уже в университете увлекся олимпиадным программированием

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

Леонов уверяет, что участникам ICPC теперь не составляет труда уехать за рубеж и найти там работу: к примеру, уровень письменного английского языка олимпиадников автоматически поднимается до высокого, так как на соревнованиях и тренировках все условия задач указаны на английском языке. Кроме того, большинство специальной обучающей литературы можно найти только на этом языке, разводит руками медалист ICPC.

Участие в чемпионатах и работа в компаниях — не одно и то же. Если речь идет о спортивном программировании, то твоя цель — как можно быстрее решить задачу и написать программу. А во время работы в компании цель специалиста — разработать софт, который можно модифицировать. Иногда необходимо «порезать» программу на части и заменить одну из «деталей», не трогая остальные, поэтому главное в работе программиста — практический навык. В университете его приобрести сложно, говорит Леонов. Более того, чем выше должность, тем больше дополнительных навыков необходимо.

Уже семь лет Леонов работает в компании JetBrains в Санкт-Петербурге. Созданная в 1999 году в Праге российскими программистами Сергеем Дмитриевым, Евгением Беляевым и Валентином Кипятковым JetBrains разрабатывает софт для IT-специалистов. Сейчас помимо Праги и Санкт-Петербурга у компании работают офисы в Москве, Мюнхене, Бостоне и Новосибирске. На работу в JetBrains Леонов устраивался сам — попросил контакты у сотрудников компании и отправил резюме.

«Если студент дошел до финала чемпионата мира, то у него, скорее всего, есть способности и он достаточно легко пройдет собеседование на должность младшего программиста», — улыбается Леонов.

Сейчас финалист ICPC занимается разработкой инструментов, правда не для программистов. Для кого — Леонов отвечать отказался, сославшись на внутренние правила компании. Несколько раз в год он участвует в индивидуальных соревнованиях по программированию, которые проводят Google, Facebook (соцсеть признана в РФ экстремистской и запрещена), Mail.Ru Group и др. Отборочные этапы проходят через интернет, а финалистов зовут на итоговый этап в разные города мира. «В финалы я, конечно, не попадаю, поскольку занимаюсь больше для себя», — признается Леонов.

Ядро Google

Увлечение математикой Петр Митричев перенял у старшего брата, который также занимался программированием. Мама, химик по образованию, покупала Петру книги по математике. Когда в доме не было компьютера, Митричев-младший читал литературу о программировании и ходил с братом в Центр детского и юношеского творчества, где они занимались в компьютерном кружке. В семь лет он поступил в районную школу №827, а в 14 перешел в специализированный класс школы №57 в Москве, а затем подал документы на мехмат МГУ.

В школе учительница по информатике предложила Митричеву поучаствовать в олимпиаде Северо-Западного округа Москвы по программированию. «После того как ты попадаешь в эту систему, легче участвовать в других олимпиадах», — вспоминает Митричев. Он также участвовал во Всероссийской олимпиаде для школьников, ездил несколько раз на двухнедельные сборы в разные города, где тренируют в том числе будущих участников ICPC. В отличие от студентов СПбГУ и ИТМО у Митричева и его одногруппников с мехмата не было одного тренера. В качестве неформальных наставников выступали бывшие участники ICPC, которые делились своим опытом как онлайн, так и на сборах. Ведущий научный сотрудник лаборатории вычислительных методов мехмата МГУ Евгений Панкратьев помогал участвовать в соревнованиях: организовывал поездки и содействовал в оформлении документы. Митричев дважды дошел до финала ICPC — в 2003 году в США и в 2005-м в Китае, когда учился на первом и на третьем курсах соответственно. Оба раза в составе команд он занял второе место.

Петр Митричев еженедельно участвует в соревнованиях для программистов онлайн. После победы на ICPC это стало его хобби

Во время учебы Митричев иногда подрабатывал, но не искал работу с полной занятостью. Победа в ICPC не дает стопроцентной гарантии получения интересного предложения от потенциального работодателя, уверен он. «ICPC служит скорее социальным средством связи профессионального игрока и хорошей компании-работодателя», — улыбается Митричев. Соревнования учат хорошо программировать — после этого любая работа по специальности становится по плечу, рассказывает он. Однако на олимпиаде важно программировать быстро и без ошибок, а в работе можно не торопиться. При этом он признает: умение писать код быстро и без ошибок приводит к тому, что не приходится переделывать работу по несколько раз.

Финалисты ICPC могут заниматься организацией похожих соревнований внутри крупных корпораций или аналитикой (например, торговля на бирже). Последний вариант Митричев рассматривал для себя после окончания университета: «Там можно за более короткий срок заработать себе на старость», признает он.

Однако с 2007 года Митричев работает в Google — сначала в московском офисе, с 2015 года — в швейцарском. На собеседовании в одну из крупнейших IT-компаний мира Митричеву пришлось решать задачи, которые похожи на те, что встречаются в финалах ICPC, вспоминает программист. Правда, сейчас он занимается поисковым ядром сайта Google, и эта работа больше связана с теорией вероятности, которую Митричев изучал в университете. Скорость, приобретенная в ходе соревнований, помогает, когда нужно, к примеру, создать прототип программы и понять, работает ли она.

Сейчас Митричев помогает Google проводить собственные соревнования по программированию — Google Code Jam, придумывает задачи для турниров вместе с коллегами. Митричев сам дважды принимал участие в этом конкурсе и занимал третье место в 2005 году и первое — в 2006-м. Программист признается, что обсуждал возможное сотрудничество с представителями «ВКонтакте», Facebook (соцсеть признана в РФ экстремистской и запрещена) и «Яндекс», но сейчас ему кажется, что Google — лучший вариант, «потому что компания решает интересные задачи, а ее сотрудники — умные люди, с которыми приятно работать».

После ICPC Митричев еженедельно участвует в онлайн-соревнованиях. По его словам, для решения некоторых задач ему приходится переучиваться: «Новому поколению в этом плане проще: они сразу учат современные методы программирования». Сейчас Митричев возглавляет один из ведущих рейтингов американской корпорации Topcoder.com, которая проводит соревнования по спортивному программированию с 2001 года.

Хочешь стать одним из более 100 000 пользователей, кто регулярно использует kiozk для получения новых знаний?
Не упусти главного с нашим telegram-каналом: https://kiozk.ru/s/voyrl

Авторизуйтесь, чтобы продолжить чтение. Это быстро и бесплатно.

Регистрируясь, я принимаю условия использования

Рекомендуемые статьи

5 вещей в анкете в Тиндере, которые отпугивают девушек 5 вещей в анкете в Тиндере, которые отпугивают девушек

Пять вещей в анкете на сайте знакомств, которые отпугивают девушку

Maxim
Ссоры из-за денег: как и почему возникают финансовые разногласия между парой и в семье Ссоры из-за денег: как и почему возникают финансовые разногласия между парой и в семье

Основные причины финансовых разногласий в парах

Inc.
GitHub назвал 10 самых популярных языков программирования GitHub назвал 10 самых популярных языков программирования

От Ruby до JavaScript — самые востребованные языки программирования

Inc.
«Режимы движения» и их влияние на системы автомобиля «Режимы движения» и их влияние на системы автомобиля

Зачем внедорожникам нужны «режимы движения»?

4x4 Club
45 в «кубе» 45 в «кубе»

За что мы любим «Гелендваген»

Автопилот
Обычные подозревающие Обычные подозревающие

10 главных параноиков мирового кино

Weekend
Как выбрать леску для триммера: виды, отличия, рекомендации Как выбрать леску для триммера: виды, отличия, рекомендации

Какой леской лучше косить траву триммером? На что обратить внимание при выборе?

CHIP
Сколько нужно ходить, чтобы «активировать» ваш мозг Сколько нужно ходить, чтобы «активировать» ваш мозг

Почему нам всем нужно больше ходить?

ТехИнсайдер
Весна приходит не одна: как бороться с аллергией на пыльцу? Весна приходит не одна: как бороться с аллергией на пыльцу?

Что важно знать о поллинозе, чтобы пережить период активного цветения растений

Maxim
Самый первый iPhone. Когда вышел и каким он был Самый первый iPhone. Когда вышел и каким он был

Кто создал iPhone, как он выглядел и сколько стоил

Цифровой океан
«Претенденты» Луки Гуаданьино: как итальянец снял один из самых злых ромкомов этого года «Претенденты» Луки Гуаданьино: как итальянец снял один из самых злых ромкомов этого года

«Претенденты»: злой и хулиганский ромком от Луки Гуаданьино

Правила жизни
Жена Николая Еременко: «В самом начале нашего романа Коля предупредил меня, что женат» Жена Николая Еременко: «В самом начале нашего романа Коля предупредил меня, что женат»

«Я хочу дать тебе свою фамилию. Никаким женам не давал, а тебе дам»

Караван историй
Чем полезен щавель и кому лучше от него отказаться Чем полезен щавель и кому лучше от него отказаться

Щавель насыщен витаминами и органическими кислотами, а потому очень полезен

РБК
Растяжки на коже у женщин: почему они появляются и как от них избавиться Растяжки на коже у женщин: почему они появляются и как от них избавиться

Почему на коже женщин появляются растяжки и как их профилактировать?

Psychologies
Список Будисавлевич: как домохозяйка спасла из немецких концлагерей тысячи детей Список Будисавлевич: как домохозяйка спасла из немецких концлагерей тысячи детей

Как Диана Будисавлевич в годы гитлеровской оккупации спасала детей

Forbes
Первый элемент Первый элемент

Академик Михаил Федонкин — о сформировавшихся под влиянием жизни минералах

Наука
«От саванны до дивана: Эволюционная история кошек» «От саванны до дивана: Эволюционная история кошек»

Почему внешность домашних кошек разнообразнее, чем у их предков

N+1
Как техногики выручили 1,6 млрд рублей на шутере в виртуальной реальности Как техногики выручили 1,6 млрд рублей на шутере в виртуальной реальности

Как построить бизнес на шутере с VR-шлемом

Forbes
Наши поезда готовятся к взлету Наши поезда готовятся к взлету

Возможно ли в России развить и внедрить технологии магнитной левитации?

Монокль
«Джеймс Уэбб» подтвердил наличие экзопланеты в протопланетном диске путем ее необнаружения «Джеймс Уэбб» подтвердил наличие экзопланеты в протопланетном диске путем ее необнаружения

Телескоп понаблюдал за спиральным протопланетным диском у звезды MWC 758

N+1
Черная — на белом фоне, белая — на черном: какого цвета пыль на самом деле Черная — на белом фоне, белая — на черном: какого цвета пыль на самом деле

Что это за магическое свойство пыли — быть видимой всегда и везде?

ТехИнсайдер
Усиление прибрежных апвеллингов назвали угрозой для мигрирующих морских обитателей Усиление прибрежных апвеллингов назвали угрозой для мигрирующих морских обитателей

Гибель сотен морских животных оказалась связана с усилением апвеллинга

N+1
Две головы лучше: зачем российским предпринимателям развивать культуру партнерства Две головы лучше: зачем российским предпринимателям развивать культуру партнерства

В чем преимущества партнерских бизнес-отношений?

Forbes
Ученые выяснили, почему зумеры стареют раньше положенного срока Ученые выяснили, почему зумеры стареют раньше положенного срока

Почему зумеры выглядят гораздо старше своих лет?

Psychologies
Как проверить и заменить катушку зажигания — инструкция Как проверить и заменить катушку зажигания — инструкция

Что такое катушка зажигания, что она делает и как ее заменить

РБК
«Кипит, волнует, бесит» «Кипит, волнует, бесит»

«Горе от ума» как зеркало русского нервного срыва

Weekend
Работа из дома: насколько она эффективна и как не сойти с ума — 9 советов Работа из дома: насколько она эффективна и как не сойти с ума — 9 советов

Справляться со сложностями и не терять эффективность на удаленке

РБК
Убийство в Люблино. Что делать при встрече с автохамами на дороге — советы эксперта Убийство в Люблино. Что делать при встрече с автохамами на дороге — советы эксперта

Что делать при встрече с автохамами на дороге?

СНОБ
Пассажирская логистика: как улучшить доступность и качество перевозок Пассажирская логистика: как улучшить доступность и качество перевозок

Как развивается транспортная система в России и как сделать ее еще лучше

ФедералПресс
Почему собаки дают лапу и пристают к людям? Узнайте несколько интерсных причин! Почему собаки дают лапу и пристают к людям? Узнайте несколько интерсных причин!

Почему собаки внезапно начинают почти что приставать к хозяевам?

ТехИнсайдер
Открыть в приложении