Воспитанник СДЮШОР «Смена», Малафеев впервые попал в заявку «Зенита» на сезон в далеком 1997 году. «Первый контракт подписал в шестнадцать лет, — вспоминал Вячеслав. — После сбора в юношеской сборной России ее тренер Сергей Мосягин дал мне лестные рекомендации в разговоре с Юрием Морозовым. И Юрий Андреевич, работавший тогда спортивным директором «Зенита», «пробил» мне достойный контракт». Проведя первые два сезона в «Зените-2» и в дубле и сыграв за это время 34 матча (пропустил 29 голов), Вячеслав попал в основную команду. В межсезонье-1998/99 он принял участие в нескольких товарищеских матчах, но на попадание в основу явно не рассчитывал. Основной на тот момент вратарь Роман Березовский действовал вполне удачно (по итогам сезона-1999 был включен в список 33 лучших игроков сезона), да и в запасе имелся опытный Сергей Приходько. В итоге в первых 14 турах Малафеев был запасным вратарем. При этом игровую практику он получал в «Зените-2». И, надо сказать, во второй лиге Вячеслав выглядел более чем удачно. В течение двух месяцев в семи матчах подряд он оставлял свои ворота «сухими»!
Вскоре Вячеслав получил шанс проявить себя и в основной команде. На последних минутах выездного матча против «Алании» Роман Березовский был удален с поля, и 20-летний Малафеев впервые появился на поле в футболке «Зенита». «В тот момент, когда Березовского удаляли с поля, я вместе с другими запасными «Зенита» находился за его воротами, — вспоминал Малафеев. — Все произошло как-то очень стремительно. Увидев в руках судьи красную карточку, я поначалу подумал: удаляют кого-то из наших полевых игроков. А когда осознал, что поле покидает Роман, внутренне даже ахнул. Но переживать за товарища было уже некогда — надо было мчаться к нашей скамейке, переодеваться и выходить на поле».
Березовский заработал 5-матчевую дисквалификацию, в ходе которой ворота «Зенита» защищал Малафеев. Уже в следующем туре, в матче с ЦСКА (1:1), Вячеслав вышел в стартовом составе и единственный мяч пропустил с пенальти. Вот как прокомментировал его игру тогдашний тренер «Зенита» Анатолий Давыдов: «Он сыграл очень хорошо, уверенно действовал как в «рамке», так и на выходах. Я им доволен». Через две недели Малафеев, отразивший пенальти уже на 8-й минуте выездного матча с «Черноморцем» (0:1), стал лучшим игроком в составе «Зенита».
Впрочем, затем наступила неприятная серия, во время которой Вячеслав пропустил четыре гола от «Спартака» в Москве (1:4) и два от «Ротора» в Волгограде (2:2). Конечно, далеко не во всех этих голах был виноват Малафеев (два мяча из шести и вовсе были забиты с пенальти), но тем не менее после этих матчей Березовский, отбывший дисквалификацию, вернулся в основной состав. До конца сезона Малафеев сыграл всего два матча (в Раменском в поединке с «Сатурном» (0:1) не смог отразить не самый сложный удар Соловьева, а в последнем туре во встрече с «Ураланом» в Элисте (0:0) сохранил свои ворота «сухими»).
Всего в сезоне-1999 Вячеслав сыграл за «Зенит» 8 матчей, в которых пропустил 10 голов (три из них с пенальти). Кроме того, Вячеслав сыграл один матч за молодежную сборную России (отстоял на ноль в матче с Арменией). Вот как охарактеризовал игру молодого вратаря в 1999 году Анатолий Давыдов: «Малафеев за год вырос в крепкого мастера. Пожелаю ему и впредь не останавливаться в своем росте».