Вихованець житомирського футболу, у ДЮФЛУ виступав за місцеве «Полісся». У 2011 році підписав перший професіональний контракт, з маріупольським «Іллічівцем», але за першу команду клубу не зіграв жодного офіційного поєдинку. У сезоні 2007/08 років був у заявці молодіжки маріупольців, але на поле також не виходив. Наступного сезону у складі дублерів «Іллічівця» зіграв 21 матч. Проте починаючи з сезону 2007/08 років залучася до матчів друголігового фарм-клубу маріупольців, «Іллічівця-2». Дебютував на професіональному рівні 3 серпня 2007 року в програному (0:3) виїзному поєдинку 3-о туру групи Б другої ліги проти криворізького «Гірника». Дмитро вийшов на поле на 71-й хвилині, замінивши Олександра Папуша[1]. У складі «Іллічівця-2» відзначився дебютним голом 15 серпня 2009 року на 79-й хвилині (1:2) програного виїзного поєдинку 4-о туру групи Б другої ліги проти криворізького «Гірника». Швець вийшов у стартовому складі та відіграв увесь матч[2]. У складі «Іллічівця-2» у другій лізі відіграв 91 матч та відзначився 7-а голами.
У середині липня 2012 року перейшов до краматорського «Авангарду»[3]. Дебютував за краматорчан 14 липня 2012 року в програному (0:2) домашньому поєдинку 1-о туру першої ліги проти кіровоградської «Зірки». Дмитро вийшов у стартовому складі та відіграв увесь матч[4]. Дебютним голом у складі «авангардівців» відзначився 27 квітня 2013 року на 6-й хвилині переможного (1:0) домашнього поєдинку 27-о туру першої ліги проти донецького «Олімпіка». Швець вийшов у стартовому складі та відіграв увесь матч[5]. У складі клубу з Донеччини в чемпіонаті України зіграв 58 матчів та відзначився 2-а голами, ще 6 поєдинків відіграв у кубку України.
Напередодні початку сезону 2014/15 років перейшов до ПФК «Сум»[6][7]. Дебютував у футболці сумчан 9 серпня 2014 рокув програному (1:4) домашньому поєдинку 3-о туру першої ліги чемпіонату України проти харківського «Геліоса». Дмитро вийшов на поле на 54-й хвилині, замінивши Руслана Петровича[8]. У складі «Сум» зіграв 24 поєдинки в чемпіонаті України та 1 поєдинок у кубку України.
Наприкінці липня 2015 року повернувся до складу краматорського «Авангарда»[9][10][11]. У футболці краматорчан повторно дебютував 22 липня 2015 року в переможному (2:1) домашньому поєдинку 1/32 фіналу кубку України проти ФК «Полтави». Швець вийшов на поле в стартовому складі, а на 86-й хвилині його замінив Роман Мірошник[12]. У чемпіонаті України за «Авангард» дебютував 26 липня 2015 року в програному (1:2) виїзному поєдинку 1-о туру першої ліги проти МФК «Миколаєва»[13]. Дебютним голом у футболці клубу відзначився 27 вересня 2015 року на 21-й хвилині переможного (3:0) домашнього поєдинку 10-о туру проти «Сум». Дмитро вийшов на поле в стартовому складі та відіграв увесь матч[14]. На початку червня 2016 року продовжив контракт з клубом[15] У складі «Авангарда» в першій лізі зіграв 51 матч та відзначився 4-а голами, ще 3 поєдинки провів у кубку України.
Напередодні початку сезону 2017/18 років підписав контракт з першоліговим охтирським «Нафтовиком-Укрнафтою». У складі «нафтовиків» дебютував 5 серпня 2017 року в програному (1:2) виїзному поєдинку 4-о туру першої ліги проти МФК «Миколаєва». Дмитро вийшов у стартовому складі та відіграв увесь матч[16]. У складі «Нафтовика» зіграв 19 матчів та відзначився 1 голом. На початку грудня 2017 року клуб та Дмитро розірвали контракт за згодою сторін[17][18]. А вже через декілька днів піписав контракт з житомирським «Поліссям»[19], з яким дограв другу половину сезону 2017—2018 року, після чого перейшов в аматорський клуб «Звягель» (Новоград-Волинський, Житомирська область)[20], що бере участь в Чемпіонаті Житомирської області та Кубку ААФУ. З таким досвідом, який Дмитро здобув на професіональному рівні, у «Звягелі» він став одним з ключових гравців, де за три рокі відіграв більше 60 матчів, у яких забив 25 м'ячів.