Где лучшие программисты? У нас в России
Фото из https://vk.com/icpcnews
Академик РАН Александр Кулешов не так давно в интервью журналу Ъ-Огонек сказал: «Сейчас в России в целом сохранился довольно высокий уровень математической культуры. Есть прекрасная лаборатория в Санкт-Петербургском государственном университете...» — и теперь мы еще раз убедились, что он прав.
Студенты СПбГУ Игорь Пышкин, Алексей Гордеев и Станислав Ершов под руководством Андрея Лопатина заняли первое место на студенческом чемпионате мира по программированию Ассоциации вычислительной техники. GeekBrains разобрался, какие факторы определили победу команды, насколько на практике полезен опыт в спортивном программировании и как в России создать оптимальный климат для развития ИТ-сферы.
«Несекретное» оружие чемпионов
Благодаря чему команде СПбГУ удалось обойти других участников? Что помогло победить, объяснил Алексей Гордеев:
- «Во-первых, большой объём тренировок. Мы писали три 5-часовых тренировки в неделю в течение всего года (и это не считая личных тренировок и работы над ошибками), насколько я знаю, ни одна другая российская команда не писала столько.
- Во-вторых, работа над ошибками. У нас был специальный контест, в котором были собраны все не сданные нами на тренировках и соревнованиях задачи, и мы старались дорешать их все.
- В-третьих, сильная математика. За время участия в тренировочных сборах с другими командами мы заметили, что на наборах задач с преобладанием математических задач над техническими мы справляемся в среднем лучше других команд.
- Ну, и в-четвёртых, конечно, везение — мы знали порядка 10 команд, каждой из которых было по силам занять первое место, тем не менее, нам удалось обогнать их всех».
Мечтаете стать лучшими? Начните с малого! Приглашаем вас прослушать двухчасовой интенсив по основам программирования.
Спортивное программирование VS практика
Весьма вероятно, что навыки, которые позволили достичь успеха на чемпионате, студенты применят в будущей работе. Перед чемпионами ACM-ICPC открыты двери в любую технологическую компанию. Остается лишь выбирать среди вариантов, которые помогут раскрыть весь потенциал юных талантов на практике.
«В большинстве простых ИТ-проектов вполне достаточно стандартных технологий, остаётся только их правильно применить, поэтому навыки спортивного программирования не особо пригодятся. С другой стороны, мне кажется, что в крупных проектах, в которых важна скорость работы, стандартных технологий не хватит, и придётся разрабатывать свои решения возникающих задач. Спортивное программирование как раз в основном и направлено на умение придумывать нестандартные идеи, которые позволили бы значительно ускорить работу программы» — говорит Станислав Ершов.
Насчет пользы спортивного программирования для решения «жизненных» задач положительно высказывается и Михаил Рубинчик, создатель Тренировочного центра СКБ Контур, тренер команды УрФУ по спортивному программированию (серебряные призеры, 8 место на iCPC 2016): «Они [чемпионы] многое умеют делать, знают как решать задачи на соревнованиях и очень быстро ориентируются, как применить на практике то, чему они научились за период тренировок и чемпионатов. Все с этим хорошо. Мы не первый год принимаем на работу в Контур студентов и выпускников, которые оттачивали свои навыки программирования на различных соревнованиях — из этих ребят получаются отличные разработчики».
Знаменует ли победа очередную «утечку мозгов»?
Наши программисты побеждают. А вот российские ИТ продукты на мировых рынках представлены слабо. Почему выдающиеся успехи России на мировых чемпионатах не означают такие же успехи российских ИТ продуктов в мире?
«Наличие известных и успешных компаний в стране зависит от трех составляющих: бизнеса, государства и программистов. С третьим пунктом все хорошо, а первые два недорабатывают» — объясняет Михаил Рубинчик.
На вопрос, как создать оптимальный климат для раскрытия потенциала талантливых программистов в профессиональной сфере Михаил отвечает: «Я не скажу ничего нового, это понятные и простые вещи:
- низкие налоги для ИТ-сферы,
- мощная стимуляция и поощрение бизнеса,
- борьба с бюрократией.
Эти принципы справедливы для большинства сфер, но в программировании особенно важны. Разработчики в условиях современности могут выбирать для работы практически любую точку мира, но если в своей стране будут созданы все условия для развития, то многие захотят остаться или даже вернуться».
Но что делать талантливому программисту на российском ИТ рынке сейчас, если он не может дожидаться, пока образуется оптимальная инфраструктура? Как самостоятельно раскрыть свой потенциал в прикладных сферах?
«Всегда есть несколько вариантов, самый распространенный — брать на себя бизнес-задачи. Многие талантливые разработчики уходят работать в стартапы и чувствуют там себя прекрасно или сами организуют свой стартап. Очень важно, чтобы не только инфраструктура была оптимальной, но и задачи интересными и сложными, чтобы постоянно расти профессионально. Но на деле перспективные разработчики чаще уезжают в другую страну, где есть условия и не нужно тратить жизнь на ожидание „благоприятного климата“» — говорит тренер команды УрФУ. Вопрос, по большей части, остается открытым.
___
Догнать и перегнать: профессия «Веб-разработчик».