Вихованець юнацької академії «Дніпра» з однойменного міста. З 2016 року розпочав тренуватися з першою командою, проте грав виключно за юнацьку і молодіжну команду клубу.
У сезоні 2017/18 став одним з основних голкіперів «Дніпра», який виступав уже не в УПЛ, як зазвичай, а в другій українській лізі, що було пов'язано зі скрутним фінансовим становищем клубу, внаслідок якого у складі грали вихованці юнацької та молодіжної команд[1][2].
У 2019 році перебував у окупованому РосієюКриму[3][4][5], де виступав в аматорському Відкритому чемпіонаті Криму під егідою Республіканської Федерації футболу Криму за команди «Кримтеплиця-2» (1 матч, 1 пропущений гол)[6][7] та «Уютне» (7/−19)[6][7]. Сам футболіст коментує це так[3]:
Справа в тому, що після «Дніпра» я отримав травму і я не мав грошей, щоб зробити операцію в Україні. І команди на той момент не було, «Дніпро» тоді грав у найнижчій лізі. Саме тому я мав варіант зробити операцію в Криму, де я живу, де мої батьки. Я зробив операцію там, але реабілітолога там не було. Мені зателефонували з «Кримтеплиці» та сказали, що їм потрібен воротар. На допомогу просто для тренувань. Я сказав, що не гратиму в чемпіонаті, а вони відповіли, що просто головне, щоб ти був присутній. І ось я жодного матчу не зіграв, просто тренувався та відновлювався.
У березні 2021 року підписав контракт з друголіговим клубом «Буковина» (Чернівці)[8], за який виступав до завершення того ж року та провів 29 офіційних матчів у всіх турнірах[9].
У січні 2022 року став гравцем ФК «Львів», який виступав в Українській прем'єр-лізі. Контракт воротаря з «левами» був розрахований на 2,5 роки[10][11]. У Прем'єр-лізі дебютував 25 вересня 2022 року вийшовши на поле в стартовому складі в переможному (1:0) виїзному поєдинку проти ФК «Минай»[12].
У лютому 2023 року підписав контракт (за схемою 1+1) з клубом «Ворскла» (Полтава)[13], проте підписання футболіста, який брав участь у змаганнях на окупованій Росією території, викликало негативну реакцію вболівальників полтавчан[14]. Внаслідок цього «Ворскла» невдовзі розірвала контракт із гравцем[14], а Іван так і не провів жодної офіційної гри в її складі.
У липні 2023 року повернувся у «Буковину»[15], яка виступає вже в першій українській лізі. 5 квітня 2024 року Іван провів 50-й офіційний матч у складі чернівчан.