Окончил строительный техникум и был призван в ряды Советской Армии.
Во время прохождения службы участвовал в строительстве стартовой площадки космодрома «Байконур». После демобилизации поступил в Уральский политехнический институт.
В 1983 году по распределению был направлен на Турбомоторный завод в Свердловск, где работал в отделе капитального строительства сначала мастером, а затем старшим прорабом.
С 1987 года работает в системе городского хозяйства главным инженером жилищноремонтного треста Ленинского района.
В декабре 1990 года избран заместителем председателя Ленинского райисполкома, а в 1992 году назначен на должность первого заместителя Главы администрации Ленинского района.
С 2002 по 2016 год занимал должность главы администрации Железнодорожного района г. Екатеринбурга.
18 сентября 2016 года избран депутатом Законодательного Собрания Свердловской области (Железнодорожный одномандатный избирательный округ №7).