«Это не мир интровертов». Как и зачем школьникам участвовать в IT-олимпиадах

Зачем будущим программистам участвовать в IT-соревнованиях? А поступить в вуз или найти работу такие олимпиады помогут? Об этом и многом другом «Мелу» рассказал директор по дистанционным программам МФТИ, руководитель тренерского штаба сборной России по информатике Алексей Малеев. Спойлер: ничего общего с мемом про вечеринку сисадминов такие конкурсы не имеют.
Чтобы создать широкую сеть авиалиний, король тридевятого царства решил запустить рейсы, позволяющие добраться из одного города до любого другого — напрямую или с пересадками. Нужно выяснить, сколько существует способов соединить города в царстве таким образом.
Это типичный пример заданий, которые предлагаются участникам чемпионата по программированию Moscow Programming Contest. Условия задач могут быть любыми, главное — само решение, которое требует математического мышления и умения кодить. Соревнования по программированию, зародившись в 70-х годах, сейчас превратились в крупнейшую индустрию, которая объединяет сотни тысяч разработчиков по всему миру и привлекает технологических гигантов от Google до Amazon.

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

Кроме того, соревнования — это отличный шанс получить опыт решения реальных индустриальных задач, поскольку часто конкурсные задания разрабатывают компании: партнеры или организаторы конкурсов. Так, на первенстве Google Hash Code участники должны справиться с кейсами, над которыми работают программисты Google.
Наконец, некоторым чемпионатам предшествуют онлайн-курсы и интенсивы, где можно подготовиться к выступлению. Например, так делает RuCode, который приглашает участников на полноценные бесплатные обучающие программы: в этом году к курсу «Быстрый старт спортивное программирование» организаторы добавили два новых — «Быстрый старт в искусственный интеллект» и «Быстрый старт в язык программирования С++».
Получить престижную работу
Состязания по программированию — отличный карьерный лифт. Крупные компании в России и за рубежом внимательно следят за участниками соревнований, чтобы сделать победителям предложение на хороших условиях. За специалистами на чемпионатах охотятся крупнейшие корпорации. Некоторые из этих компаний (например, Google, Facebook, а в России — Mail.ru, «Яндекс» и «ВКонтакте») запускают собственные состязания для хантинга перспективных молодых айтишников. Так, участники, попавшие в топ Yandex Cup, могут устроиться в «Яндекс» по упрощенной схеме собеседований.
Впрочем, чтобы повысить свои шансы на перспективную работу, не обязательно занимать первые места в рейтинге: уже одно участие в соревнованиях высокого уровня говорит работодателю о компетенциях кандидата. В 2017 году исполнительный директор крупнейшей студенческой олимпиады ICPC Билл Паучер изучил данные о 20% участников чемпионата и выяснил, что более 3,5 тысячи из них стали директорами компаний, 570 — партнерами, 260 — топ-менеджерами. 20% работают или работали в международных IT-корпорациях.

Но самые сильные спортивные программисты и постоянные призеры редко устраиваются наемными работниками: чаще всего они уходят в собственный бизнес. Так, чемпионами IT-соревнований в свое время были Николай Дуров (программист и брат Павла Дурова) и Андрей Лопатин, стоявшие у истоков «ВКонтакте» и Telegram, основатель Zappos.com Тони Шей, бывший директор по технологиям Google Крейг Силверстайн и сооснователь Facebook Адам Ди Анджело. А вот Марк Цукерберг, который тоже участвовал в чемпионатах, титулованным спортсменом не стал.
Школьникам же IT-соревнования могут сильно упростить процесс поступления в вуз. Например, победители и призеры олимпиады «Технокубок» получают возможность поступать в российские вузы на привилегированных условиях.
Попасть в среду
Вокруг IT-чемпионатов сформировалось обширное комьюнити, объединяющее участников, тренеров, организаторов, представителей компаний и других увлеченных людей со всего мира. Поэтому участие в любом чемпионате — это возможность не только пообщаться с единомышленниками, но и завести полезные знакомства, найти будущих партнеров по бизнесу, работодателей, встретиться с интересными людьми и лучше погрузиться в рынок.
Многим соревнованиям предшествуют тренировочные сборы, которые помогают готовиться к различным этапам чемпионатов, и это еще один способ влиться в комьюнити.

Может сложиться впечатление, что соревнования предназначены только для сильных опытных программистов. Но это не так: существуют IT-чемпионаты для участников самого разного уровня — для студентов и школьников, для продвинутых и начинающих. Так что познакомиться с IT-тусовкой на конкурсах могут даже новички и подростки.
Развить мастерство дебаггинга
Поиск ошибок (багов) в коде, своем или чужом, — одна из самых долгих и муторных вещей в работе программиста. Но постоянные участники IT-соревнований редко испытывают эти трудности: поскольку время на решение конкурсных заданий ограниченно, а за неверный код назначаются штрафы, волей-неволей им приходится учиться не допускать ошибок, а если это случилось — как можно быстрее находить их и устранять. Кроме того, в некоторых соревнованиях мастерство дебаггинга позволяет получить дополнительные очки: например, участники Topcode Open могут зарабатывать баллы за ошибки, найденные в коде других участников.
Компании, где работают олимпиадники, часто признают, что они намного быстрее находят баги, чем остальные программисты, то же самое признают и сами участники соревнований. Это действительно очень ценный навык, который помимо прочего позволяет сэкономить огромное количество времени.
Усилить гибкие навыки
Хотя часто несправедливо считается, что IT-мир — это сообщество замкнутых интровертов, соревнования по программированию, как ни странно, отлично тренируют гибкие навыки. Во-первых, многие чемпионаты проводятся в командном формате, поэтому участие в них развивает умение работать в коллективе и навыки коммуникации. Во-вторых, конкурсы помогают прокачать личный тайм-менеджмент: как правило, их участники могут сразу оценить, сколько времени потребует у них решение той или иной задачи. Заодно соревновательная среда хорошо прокачивает стрессоустойчивость и способность действовать в конкурентных условиях.
Наконец, чемпионаты — это отличная возможность подтянуть английский: без знания языка невозможно принять участие в международных соревнованиях или тренировочных сборах при подготовке к ним. Так, Moscow Workshops регулярно проводит не только российские, но и зарубежные сборы: в Испании, Сингапуре, Китае, Индии, Омане и других странах. К тому же документация и многие мануалы, книги и видеоуроки по программированию написаны именно на английском.
Фото: Moscow Workshops / facebook
Популярные комментарии
Владимир КунаевВ РФ большая беда в сфере психологии. Нет четких профстандартов, нет справедливых механизмов проверки компетенций. В добавок ко всему этому действительно толковые молодые специалисты не могут выйти на рынок из-за массивного пейвола (из личного опыта). Проблем столько, что на целый цикл статей хватило бы, если погружаться.
Я редактор. Вот почему я не доверяю всем, кто называет себя психологом
Светлана ПлехановаЯ Вас умоляю, по закону ничего нельзя сделать. Многие молодые люди себе не представляют, как достаются деньги! Им кажется, что булки растут на деревьях, а пироги падают с неба. Многое вокруг пропагандирует светский образ жизни, сидение на чужой шее, бездумное, безалаберное отношение к деньгам. Неуважение к чужому труду тоже в чести. Многие унижают тружеников сферы обслуживания. А эти люди делаю нашу жизнь комфортной. Их приветливая улыбка, вежливая речь дарят хорошее настроение!
Дочь учится на платном и даже подработку не ищет – живет за наш счет, и ей нормально. Как с ней поговорить?
АндрейАбсолютно согласен! Надо ещё и математику убрать, а то учат детей думать и раскладывать по полочкам! И читать и грамотно общаться сейчас не в моде. Есть же нейросеть! И комментарии поможет написать! Отправлять в школу только на физкультуру, труды и ОБЗиР. А все остальные предметы платно и по желанию! Хотя и эти три предмета требуют особой подготовки, поэтому их надо тоже по желанию, а лучше вообще платно!
«Врачей жалко. А вас, тварей, нет». Честный монолог учительницы о том, что стоит за особым статусом педагогов






