«Это не мир интровертов». Как и зачем школьникам участвовать в 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
Популярные комментарии
Евгения СамотохинаТо что отрицательные оценки нужны — я согласна, но здесь должен быть ряд факторов: 1) как по мне текущая система оценки (пятибалльная, а по факту четырехбальная) — не то чтобы объективная. Особенно чувствуется на объемных заданиях в старших классах, когда в тексте на 2 страницы допустил 2-3 ошибки и пооучаешь тройку. Как по мне система должна иметь разбивку хотя бы в 10 баллов. 2) Часто каждый учитель сам определяет как оценивать ученика. Если с точными науками и каким-нибудь диктантом ещё более-менее понятно, то с более творческими заданиями, пересказами вообще непонятно — у одного учителя ты получаешь 5 у другого за пересказ того же качества — 3.
«Двойка должна жить». Учитель — о том, почему плохие оценки нужны детям
АнастасияДа уж… Уважительное общение не включено в общеобразовательные стандарты и экзаменационные вопросы. Можно иметь аттестат и даже не один диплом, но при этом оставаться полнейшим хамом. Системный кризис.
«Короче, училка, варежку свою закрой». Топ-20 цитат из переписок родителей с учителями, от которых волосы встают дыбом
Виктория ИльинаА может, пора честно посмотреть на проблему не только глазами учителя? Учитель жалуется: слишком много часов, слишком много отчётности, слишком много требований сверху. И с этим трудно спорить. Но есть один неудобный вопрос: а не является ли сама школа частью проблемы, которую она годами создаёт? Попробуйте хотя бы на минуту посмотреть на ситуацию глазами ученика. Этот ребёнок, которого сегодня заставляют заучивать километры информации «для галочки», завтра станет взрослым человеком. Возможно, чиновником, руководителем, тем самым человеком, который будет писать новые стандарты, программы и инструкции для школ. Не удивительно ли, что система воспроизводит сама себя? Главная ошибка многих педагогов — не в любви к знаниям. Знания нужны. Ошибка в другом: в убеждении, что ребёнку обязательно нужно загрузить весь огромный школьный багаж, не задумываясь, что из этого действительно пригодится именно ему. И когда обществу годами пытаются доказать ценность каждого килограмма ненужной информации, неудивительно, что эта работа перестаёт восприниматься как источник реальной пользы. Может быть, выход проще? Не превращать каждый предмет в борьбу за выживание. Не ломать детей и не выгорать самим. Если ребёнку ваш предмет объективно мешает сосредоточиться на тех знаниях, которые нужны ему для будущего, — поставьте законную тройку и дайте ему возможность развиваться дальше. Иногда настоящая педагогика — это не заставить выучить всё. А понять, что именно действительно стоит учить.
«Мы согласились со своим бесправием». Учительница – о том, почему ее коллеги терпят унижения






