Родился 18 сентября 1932 года в Ленинграде в семье рабочего. Провёл детство в блокадном ЛенинградеОбразованиеОкончил в 1948 году ремесленное училище в городе Щербаков Ярославской области, затем — Всесоюзный заочный финансово-экономический институт.
С августа 1956 года — в Кузбассе, 17 лет проработал на шахте им. Вахрушева: работал подземным электрослесарем, проходчиком, заместителем начальника шахты.
В 1973—1984 гг. — генеральный директор производственного объединения «Кузбассобувь» .
В 1984 г. — главный горняк Всесоюзного производственного объединения «Облкемеровоуголь» .
В 1984—1990 гг. — заместитель директора дирекции по капитальному строительству производственного объединения «Киселёвскуголь» .
В 1990—1991 гг. — первый секретарь Киселёвского горкома КПСС.Политическая деятельностьВ апреле 1989 года избрался народным депутатом СССР от Беловского территориального избирательного округа № 193 Кемеровской области. Входил в Межрегиональную депутатскую группу, затем — в депутатскую группу «Союз» .
В июле 1989 года — председатель забастовочного комитета Кузбасса, с 1 августа 1989 года по 26 января 1990 года — председатель Совета рабочих комитетов Кузбасса. Ушёл с должности председателя в связи с разногласиями в Совете.14 марта 1990 года на III (внеочередном) Съезде народных депутатов СССР призвал депутатов голосовать против избрания М. С. Горбачёва Президентом СССР и резко осудил его политику. 31 марта 1990 года был избран первым секретарём Киселёвского горкома КПСС.
На 28 съезде КПСС в 1990 году выдвигался на пост Генерального секретаря, собрал 501 голос.
С 1990 по 1991 годы — член ЦК КП РСФСР.
В 1991 году был доверенным лицом кандидата в президенты РСФСР Вадима Бакатина.
В феврале 1992 года был членом Оргкомитета по подготовке и проведению Чрезвычайного Съезда народных депутатов СССР.Входил в Оргкомитет ЦК КПСС, избран членом Совета и Политисполкома Союза Коммунистических партий — КПСС.
В конце 1991 года был избран членом ЦК Российской коммунистической рабочей партии.
В 1993 году вместе с подавляющим большинством Кемеровской областной парторганизации перешёл из РКРП в воссозданную КПРФ. Первый секретарь Кемеровского областного комитета КПРФ, член ЦК КПРФ.
В марте 1993 года был избран членом Совета Союза Коммунистических партий — КПСС, был членом Политисполкома Совета СКП-КПСС.
В 1992 году входил в Оргкомитет по подготовке и проведению VI Чрезвычайного Съезда народных депутатов СССР, на съезде был избран членом Постоянного Президиума Съезда народных депутатов СССР.После разгона Верховного Совета РФ в 1993 году работал помощником депутата Государственной Думы РФ первого созыва.
В 1995 году избран в Государственную Думу РФ второго созыва по 89-му Ленинск-Кузнецкому одномандатному округу (набрав 20,43 % голосов), являлся членом депутатской группы «Народовластие» , председателем подкомитета по экономическому сотрудничеству с государствами-участниками СНГ, Комитета Государственной Думы по делам СНГ и связям с соотечественниками.
В декабре 1996 года выступил на пленуме КПРФ с резкой критикой Геннадия Зюганова.
В 1997 году заявлял о намерении принять участие в выборах губернатора Кемеровской области, однако затем в них не участвовал.Являлся руководителем Кемеровского областного комитета КПРФ.
В 1998 году был исключён из рядов КПРФ после V съезда за раскольническую деятельность. Восстановлен и в феврале 1999 года вновь избран первым секретарем Кемеровского обкома КПРФ. Спустя менее чем 2 года снова исключён из партии. Возглавлял оппозицию кемеровскому губернатору А. Г. Тулеева.
В 2000 году баллотировался в Государственную думу во второй раз от 210-го округа (Санкт-Петербург).
В ноябре 2000 года вместе с О. С. Шениным выдвинул на рассмотрение Госдумы так называемый «профсоюзный вариант» Трудового кодекса Российской Федерации.