Вихованець харківського футболу. Починав займатися спортом у харківській ДЮСШ № 1, перший тренер — Валерій Володимирович Шаповалов[2]. У ДЮФЛУ та юнацьких чемпіонатах Харківської області виступав за ХТЗ-2 (Харків), «Металург» (Донецьк), «Арсенал» та «Арсенал-2» (обидва — Харків), КДЮСШ-7 (Харків), «Арену» (Харків) та «Авангард» (Харків). Загалом у ДЮФЛУ зіграв 74 матчі, в яких відзначився 32-ма голами[2].
Наприкінці серпня 2020 року перейшов у «Металіст 1925»[2]. Дебютував у футболці харківського клубу 5 вересня 2020 року в нічийному (1:1) домашньому поєдинку 1-го туру Першої ліги проти тернопільської «Ниви». Денис вийшов на поле на 63-ій хвилині, замінивши Максима Єрмоленка[3]. Всього в сезоні 2020/21 провів за «жовто-синіх» 5 матчів (4 — в чемпіонаті та 1 — у Кубку України)[4].
22 липня 2021 року став грацем ФК «Краматорськ» на умовах оренди з «Металіста 1925»[5]. У першій частині сезону 2021/22 провів за краматорську команду в Першій лізі 12 матчів (1 гол, 2 гольові передачі)[6], після чого повернувся до «Металіста 1925»[6].