Украинский футболист, полузащитник Сборной Украины и капитан днепропетровского «Днепра».
Воспитанник СДЮШОР «Заря». Некоторое время учился в Харьковском институте физкультуры и был в составе одной из резервных команд «Металлиста», которая выступала в чемпионате Харьковской области. Но в течение 2 месяцев игрока так и не выпускали на поле и Шелаев принял приглашение команды высшей лиги — луганской «Зари». В конце ноября 1993 года полузащитник сыграл первую игру за «Зарю». В этом сезоне он провел всего 8 матчей, но в течение следующих 2 лет стал футболистом основного состава. Впоследствии московский концерн «МАЛС» прекратил финансировать команду и в сезоне 1995/96 луганчане покинули высшую лигу, заняв последнее место.
Шелаев перешел в «Шахтёр», вместе с которым стал обладателем Кубка Украины 1997. В Донецке опорный полузащитник не сумел пробиться в основной состав и клуб отдал его в аренду — в ФК «Днепр», который сезоне 1998/99 боролся за то, чтобы остаться в высшей лиге, впоследствии — в «Металлург» (Донецк), который тогда возглавлял Семен Альтман.
После окончания аренды Шелаева пригласили играть в «Днепр». Евгений Кучеревский собрал коллектив, который боролся за бронзовые медали чемпионата Украины и играл в еврокубках. Некоторое время Кучеревському помогал Вадим Тищенко — бывший футболист «Днепра», который играл на месте опорного полузащитника. Шелаеву, как он сам признает, очень помогли советы и опыт Тищенко. Олега Шелаева начали приглашать в национальную сборную Украины, вместе с которой он сыграл на Чемпионате мира по футболу в Германии.
Не найдя общего языка с новым главным тренером Владимиром Бессоновым, в зимнее межсезонье 2008/09 перешёл на правах аренды в криворожский «Кривбасс».
Достижения
Четвертьфиналист чемпионата мира 2006 года.
Серебряный призер чемпионата Украины — сезона 1996/1997, 1997/1998.
Бронзовый призер чемпионата Украины — сезона 2000/2001, 2003/2004.
Обладатель Кубка Украины — 1996/1997.
Финалист Кубка Украины — 2003/2004.
Рекордсмен по наибольшему количеству сыгранных игр в составе «Днепра» в рамках чемпионата Украины[1]. 209 матчей, по сотоянию на 01.01.2009.