В июле 2001 года вступил в КПРФ. Работал с обращениями граждан в общественной приемной партии. Был помощником юрисконсульта, затем заместителем руководителя юридической службы центрального комитета КПРФ. Представлял интересы партии в Центральной избирательной комиссии России, Верховном суде.
Был помощником депутата Госдумы (Анатолий Локоть, член фракции КПРФ, ныне — мэр Новосибирска).
12 марта 2006 года участвовал в выборах депутатов Калининградской областной думы IV созыва от КПРФ (входил в состав региональной группы Советская), однако в региональный парламент не прошел. Занимал должности референта, старшего референта аппарата фракции КПРФ в Госдуме.
2 декабря 2007 года принимал участие в выборах в Госдуму V созыва по списку КПРФ (второй номер в региональной группе №52, Нижегородская область). В парламент не прошел.
В 2007-2009 годах — член ЦИК с правом совещательного голоса.
В октябре 2008 года на XIII съезде КПРФ был избран членом центрального комитета партии, затем неоднократно переизбирался. В последний раз — на XVII съезде 27 мая 2017 года.
11 октября 2009 года был избран в Мосгордуму V созыва по списку КПРФ (входил в общегородскую часть списка, возглавлял региональную группу №14). В городском парламенте стал руководителем фракции КПРФ.
14 сентября 2014 года переизбран в Мосгордуму VI созыва от КПРФ (по избирательному округу №21; часть района Выхино-Жулебино и Рязанского района). Получил 37,32% голосов, опередив кандидата от «Единой России» Владимира Зотова (32,16%). В новом составе парламента переизбран главой фракции коммунистов.
В Мосгордуме был заместителем председателя комиссии по делам общественных объединений и религиозных организаций. Входил в состав комиссий по градостроительству, государственной собственности и землепользованию, по законодательству, регламенту, правилам и процедурам. Был членом объединенной комиссии Мосгордумы и Мособлдумы по координации законотворческой деятельности по городскому хозяйству и жилищной политике.
В начале 2017 года заявил, что намерен принять участие в выборах мэра Москвы в 2018 года.
Советник председателя ЦК КПРФ Геннадия Зюганова.
В декабре 2011 года и сентябре 2016 года баллотировался в Государственную думу РФ VI и VII созывов по списку КПРФ от Москвы, однако думский мандат не получил.
Член президиума центрального комитета КПРФ, секретарь ЦК КПРФ.
5 октября 2017 года указом президента России Владимира Путина назначен временно исполняющим обязанности губернатора Орловской области.
9 сентября 2018 года одержал победу на досрочных выборах губернатора Орловской области, получив 83,55% голосов избирателей.
В сентябре 2023 года были избран главой Орловской области.
Женат, имеет двух сыновей 2008 и 2015 г. р. Супруга — Валерия, выпускница Московского авиационного института.
В юности занимался пятиборьем.