Скорее нужна, нежели нет.
А вот насколько глубоко её нужно знать, зависит от раздела в программировании.
Достаточно глубокое знание математики нужно программистам графики, компьютерных игр, создателям различных систем сжатия-разжатия данных (архиваторов, просмотрщиков картинок, видео и звуковых файлов различных типов).
Если же человек просто делает что-то достаточно простое, не требующее сложных математических расчётов, то и математика ему особо не нужна. Хотя базовые знания, такие как знание процентов, пропорций, всё же стоит знать.
Иногда при программировании более важна хорошо развитая логика, тогда если программист и видит, что имеет какой-то пробел в знаниях, мешающий ему доделать ту или иную подпрограмму (часть основной программы), то он сам берёт и изучает то, что не знает, то есть восполняет этот пробел.
Лично мне, когда я программировал, пригодилось знание синусов, косинусов, тангенсов, котангенсов, и их зависимость от круга. Например чтобы по точкам начертить круг, нужно использовать синусы и косинусы. А чтобы по точкам начертить линию, в том числе и трёхмерную, нужно использовать коэффициенты, то есть некое не всегда целое число, на которое домножать координаты выводимой точки.
Вот если бы я знал математику на уровне профессионального математика, возможно я бы одной формулой заменял некий разветвлённый алгоритм, и моя программа работала бы на порядки быстрее. Так что в некоторых подразделах программирования математика достаточно важна.