Вы слишком обобщаете понятие "математика" в вашем вопросе.
Быть "хорошим программистом" - в 2019 году,
Это - разобраться в том что можно назвать программированием, а что нет. Для "программирования" катриджей и внедрения алгоритмов картридж to принтер - математика не нужна(тыжпрограммисты поймут).
Понять куда вы хотите попасть - если это что нибудь высокое и стильное(типо нейросети, исскуственный интелект, биг дата, то алгебра конечных групп, основы теории множеств, теорию графов - это все ваше).
Если это веб, либо что нибудь простое - то арифметика, логика, и паттерны вам в помощь. За весь свой небольшой опыт работы - понадобилось только это. Никаких дифуров, логарифмов и пределов я не помню, и слава богу.
PS: Внутри нашей компании - "хороший программист", это не тот кто пишет хороший код, и пишет его много, не спит 24 часа в сутки и тд. А тот кто на одной волне с заказчиком, разбирается в бизнес модели, может помочь, разобрать\собрать. Всё в итоге сводится к тому как монетизировать ваши идеи и творчество. Делайте упор не только на математику, но и на софт скилы - они очень решают. Пейте, учитесь общаться с людьми любого уровня, расширяйте горизонты.