По своему опыту скажу, что математика в целом необходима. Основы, которые были затронуты в школьном курсе, даже если они были забыты, можно быстро восстановить по ходу обучения.
На некотором уровне, на мой взгляд, знание математики программисту необходимо: основы дискретной математики, математической логики, алгоритмы и структуры данных, криптография и криптоанализ. Знание математики может помочь в вопросах оптимизации алгоритмов, в задачах больших данных, машинного обучения или математического моделирования, информационной безопасности и защиты информации.
Математика также играет важную роль в компьютерном зрении, которое используется для распознавания образов и анализа изображений.
Математика способствует развитию логического мышления, формирует определенный образ мысли, помогающий в программировании. Она открывает больше возможностей для профессионального роста и новые горизонты в способностях программиста. Однако это вовсе не означает, что без математических знаний нельзя быть программистом. Множество современных проектов не требуют от программиста специальных математических знаний и навыков, а дополнять собственные способности всегда можно и в процессе работы.
Во время работы в одной международной компании, я тесно общался с отделом R&D. Там сидели в основном олимпиадники по математике и физике. R&D консультировались со мной по вопросам программирования, а я консультировался по разным математическим подходам, например, как реализовать равномерное распределение пользователей в аб тесте. Как-то ко мне обратилась коллега из отдела R&D и сказала следующее: «Почему в программировании всё так непонятно? Я читаю литературу по программированию, а там в одном предложении куча незнакомых определений. Гуглишь одно определение, а в нем ещё куча непонятных определений, и так бесконечно».
На что я ей ответил: «Представь эти знания в виде фрактала или дерева. Не нужно всё глубоко учить, лишь до определенного уровня глубины. А в вашем случае, только верхне-уровнево нужно. На этом месте ей стало всё понятно».
Математика дает нам структурированное и систематическое мышление. Ведь огромные приложения — это комплексные формализованные структуры с собственными правилами поведения. А также применяются и другие дисциплины, например, теория вероятностей и математическая статистика при написании прогнозирующих систем, где ключевой фактор — это понимание распределений событий или каких-либо значений.
Иметь в запасе математический анализ из высшего учебного заведения, будет большим плюсом. Будет намного легче продвигаться по карьере, так как вы сможете решать сложные задачи, в которых будете применять свои знания и находить более оптимальные реализации поставленной задачи.
Сейчас передовой отраслью в IT являются искусственный интеллект и квантовые вычисления. Эти дисциплины максимально тесно связаны с математикой и физикой.
Но если у вас нет набора всех этих знаний, всё можно восполнить уже во время работы. Всё-таки IT — это профессия, в которой нужно постоянно учиться.