«Это не мир интровертов». Как и зачем школьникам участвовать в 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
Популярные комментарии
Виктория ИльинаЧто, на мой вгляд, произошло с современными детьми? Сегодня мы гораздо лучше умеем выявлять особенности развития детей. То, что раньше оставалось незамеченным или объяснялось словами «ленится», «невоспитанный», «не хочет учиться», сейчас может получить профессиональную оценку и поддержку. Поэтому создаётся ощущение, что таких детей стало резко больше. Необходимо также признать, что современная информационная среда серьёзно изменилась. Ребёнок сегодня живёт в потоке информации, который невозможно сравнить с тем, что было 20–30 лет назад. Одновременно выросли требования к скорости освоения знаний, объёму информации и самостоятельности школьника. При этом школа далеко не всегда успевает адаптироваться к новым условиямю Однако, на мой взгляд, главная причина проблемы лежит глубже. Изменилось отношение общества к школе и образованию. Для многих детей и родителей знания перестали быть безусловной ценностью, а школьные требования стали восприниматься скорее как формальность или препятствие. Одновременно снизился уровень дисциплины, родительского контроля и готовности ребёнка выполнять сложную, не всегда интересную работу. Нельзя сбрасывать со счетов и цифровую среду: компьютерные игры, гаджеты, социальные сети дают ребёнку быстрые эмоции и мгновенную обратную связь, тогда как учеба требует терпения, концентрации и усилий. В результате школе приходится конкурировать не только с внешними развлечениями, но и с изменившейся культурой детства.
Почему раньше дети спокойно сидели на уроках, а сейчас у половины класса либо СДВГ, либо РАС — и они всем мешают?
Александр КомнатныйЯ ни разу не комментировал статьи, но эту прокоментирую. Я ученик, учусь в 9 классе сельской школы. Наш класс, нельзя посчитать порядочным. Но, я скажу на основе личного опыта — дисциплина в классе будет, только когда дети будут боятся. ЛИБО, вы будете прям очень интересно вести предмет. А это редкость. Короче, если вы действительно хотите дисциплины — вам нужен обычный страх. Вы не должны говорить: «Всё, остаётесь у меня ещё на один урок», а потом не оставлять ещё на один урок. Ведь тогда, дети поймут — ничего вы им не сделаете. А вы должны делать. О вас должны ходить страшные легенды, и половина из них должна быть правдой. Тогда, у вас на уроках будет дисциплина. НО, важно — вы не должны ругать за неправильные ответы. Это точно. Ведь, есл вы будете орать из-за неправильного ответа, дети на ваших уроках вообще слова не скажут, а это тоже плохо. Нет, ругать вы должны только за дисциплину. А ещё — не бойтесь заваливать учеников двойками, а может даже колами.
Ученики срывают уроки и не слушают учителя. Как вернуть дисциплину за 4 шага
ОльгаЧто значит стукачество? Я считаю так: если тебя никак это не касается, то об этом рассказать должны участники. Макисмум, что должен сделать ребенок — рассказать об этом родителям, чтобы взрослые люди уже решали надо ли доводить ситуацию до сведения школьной администрации. А если ребенка избили, унизили или регулярно оскорбляют, то он имеет полное право и даже должен рассказать об этом взрослым: учителю и родителям. Потому что дети сами не разберутся — это все миф, что они могут и должны разобраться сами. Может именно это учительница и имела в виду, когда говорила, что дети должны ей все рассказывать? А родители сделали из мухи слона?
Учительница поощряет стукачество в классе. Стоит ли запрещать ребенку доносить на других?






