Профессиональная карьера футболиста началась в 2006 году во второй команде «Зенита». В первом же матче против «Спартака» Маркелов отметился голом. За «Зенит-2» Иван выступил три года, забив за это время 11 мячей в 57 матчах.
Затем полузащитник играл в подольском «Витязе», в «Петротресте», ФК «Карелия». В июне 2013 года футболист подписал контракт с питерским «Динамо». Через год перешёл в саратовский «Сокол», а затем в оренбургский «Газовик». В Премьер-Лиге дебютировал в составе «Оренбурга». Затем играл в составе московского «Динамо» и махачкалинского «Анжи».
Известно, что выступать 31-летний игрок будет под номером 99.
Фото: пресс-служба ФК "Тамбов"