Комментарии 10
Если коротко подытожить - олимпиадники пишут код для компьютера, а в промышленных задачах ты пишешь код скорее для людей, а уж компьютер - вторичный потребитель.
И это очень существенная разница. Почти никогда код не пишется один раз - написал, задеплоил и забыл про него. Через полгода придет новое требование или новый разработчик или ты сам уйдешь в другую контору и другие люди (а может и ты сам) будут матерясь пытаться вспомнить что ты тут такого навертел пытаясь выцарапать пару милисекунд там где оно вообще не надо. И будешь терять дни жизни на это. И чаще всего, правильным решением будет выкинуть это все олимпиадное поделие и переписать в нормальном, понятном стиле.
Именно поэтому, во многих конторах строчка в резюме «победитель ICPC» - это минус а не плюс.
Никого не хотел обидеть, если что, но просто вы развиваете другой скилл - написать за короткое время код средней сложности который потом никто не будет читать. В реальности все требования диаметрально противоположны.
Так в РФ и Штатах считают, что если ты олимпиадный программист, то ты самый крутой специалист на рынке. Хз в каких конторах это минус, а не плюс.
Я только на первую работу попал не решая "задачку с литкода"(к слову, первая работа была полным мусором).
Но, я тоже против олимпиадного онанизма. Инженерные скиллы решают больше, если рабочие задачи не связанны с постоянными оптимизациями в доли секунд.
У всяких мобилоразрабов и фронтендеров точно не связаны).
Олимпиадник быстрее найдет очень высокооплачиваемую работу и будет набивать шишки там, получая огромные деньги и работая над интересными проектами.
Не-олимпиадник будет тоже набивать шишки, но за гораздо меньшие деньги и надеяться, что когда-то доберется до тех зарплат и проектов. Ну или разгребать за олимпиадником.
Плюс-минус исключения.
Может и относительно, но все знают какие глобальные компании платят топ по рынку, и все знают что именно эти самые компании спрашивают на собесах.
И эти же глобальные компании вот уже 10 лет не могут исправить простые баги в своём "умном" голосовом помощнике )
То как они проводят собеседования, и то что они глобальные, отнюдь не означает что их методы правильные. Скорее просто приходится регулировать поток желающих.
Олимпиадное программирование однозначно полезно, но только как развитие одной из граней. Главное это осознавать и не отращивать излишний ЧСВ. Разработка продакшин кода это другая грань. На собеседовании 99% пригодятся обе, в реальной же работе первая будет задействована не более 5%, но это нормально.
Слышал как-то раз такое:
Если вам нужно больше процессоров, вы пойдете и купите больше процессоров
Если вам нужно больше памяти, вы пойдете и купите больше памяти
Главное, чтобы код был понятно написан
Собственно, почему бы не купить аналогичным образом толпу квалифицированных программистов? Да потому что:
- Их надо найти
- Чем больше коллектив, тем больше взаимодействий, поэтому общая работа замедляется и искажается ее результат
- Процессоры и память гораздо более стандартизированы, стабильны и надежны, чем люди
Бывших не бывает. Как опыт спортивного программирования влияет на работу с реальным кодом