Согласен. Хорошие олимпиадные навыки они о том, как и где лучше применить те или иные структуры данных, алгоритмы/подходы к решению задач, потому дают ощутимое количество балов вперёд при написании своих решений.
Да, читать и разбирать чужой код тут приходится не так обильно, как в разработке продуктовой, да и про ООП с паттернами заикаться особо не приходится, это минусы.
Но вообще, понятие "красивого и поддерживаемого кода" сильно рознится от компании к компании
Просто я все алгосы оформлял как классы на плюсах(ДО, ДД, LCA и тд) и делал методы которые можно у этих алгосов дергать, в промышленную прогу поэтому было легко влиться, устройство ООП в плюсах гораздо сложнее чем в том же питоне) А чтение кода хорошо прокачивается когда хакаешь решения на форсах, там учишься быстро разбираться и искать баги в говнокоде участника)