В 1967 году окончил школу в городе Кирове с серебряной медалью.
Окончил Всесоюзный заочный финансово-экономический институт по специальности «экономист планирования промышленности». Заочно учился в Горьковской высшей партийной школе.
С 1969 по 1971 год служил в армии, в ракетных войсках стратегического назначения. Офицер запаса, воинское звание — подполковник.
С 1971 по 1973 год — электрик-испытатель экспериментально-исследовательского отдела Кировского филиала агрегатного завода.
Член Коммунистической партии Советского Союза с 1973 года.
В 1974 — 1981 годах — на комсомольской работе. Прошёл путь от секретаря комитета комсомола завода до первого секретаря Кировского горкома ВЛКСМ.
С 1981 года работал заведующим промышленно-транспортного отдела Октябрьского райкома КПСС города Кирова. Занимался вопросами развития предприятий оборонного и машиностроительного комплекса, лёгкой промышленности, строительства, энергетики и транспорта.
Избирался первым секретарём Октябрьского райкома КПСС города Кирова, вторым секретарём Кировского обкома КПСС. Избирался депутатом Кировского областного Совета.
С августа 1991 года — первый секретарь Кировского обкома КПСС.
С 1991 по 1993 год — заместитель директора, директор школы менеджеров Кировской коммерческой компании Роскомобеспечения.
С 1993 по 1995 год работал заместителем генерального директора, генеральным директором АОЗТ «Киров-Агротес».
С 1993 года — первый секретарь Кировского обкома Коммунистической партии Российской Федерации (КПРФ).
Был делегатом II (восстановительного) съезда КПРФ, прошедшего 13-14 марта 1993 года в Клязьминском пансионате, Московская область, на котором его избрали членом Центрального исполнительного комитета КПРФ.
На III съезде КПРФ (21—22 января 1995 года, Москва) был избран членом ЦК партии.
17 декабря 1995 года был избран депутатом Государственной Думы Федерального Собрания РФ второго созыва, член фракции КПРФ, член Комитета по охране здоровья.
На президентских выборах 1996 года — доверенное лицо Геннадия Зюганова в Кировской области.
19 декабря 1999 года был избран депутатом Государственной Думы Федерального Собрания РФ третьего созыва, член фракции КПРФ, член комитета по делам национальностей.
Участвовал в I туре выборов Губернатора Кировской области 7 декабря 2003 года. По итогам выборов набрал 3,29 % голосов избирателей.
7 декабря 2003 году по списку КПРФ был избран депутатом Государственной Думы Федерального Собрания РФ четвёртого созыва, член фракции КПРФ. Был членом комитета по регламенту и организации работы Государственной Думы и членом Счётной комиссии Государственной Думы.
Участвовал, вместе с С. Н. Мохиревым в «альтернативном» X съезде КПРФ 3 июля 2004 года (при этом второй секретарь областного комитета КПРФ Леонид Никулин участвовал в это же время в «официальном» X съезде КПРФ). После признания Министерством юстиции нелегитимности «альтернативного» съезда, написал заявление об освобождении от должности первого секретаря Кировского областного комитета КПРФ. Однако, несмотря имевшуюся с его стороны критику позиции Геннадия Зюганова, и первоначальное нахождение среди кандидатов на исключение из партии, был оставлен в должности и продолжил работу в КПРФ.
27 мая 2006 года был переизбран на очередной срок первым секретарём Кировского обкома КПРФ.
29 мая 2006 года умер от обширного инфаркта.
Жена, две дочери.