l'anglais, c'est certain est important, quelle que soit la spécialité (programmation, maintenance, réseau, ...) il aura à lire des docs en anglais à un moment ou à un autre.
les math, c'est bien aussi, mais pas forcément indispensable.
il faut surtout avoir un esprit logique (particulièrement pour la programmation)
je dirais qu'il vaut mieux avoir un bon dossier en général pour s'ouvrir les portes vers les meilleures écoles.
j'ai eu beaucoup de mal à obtenir mon bac, et ça avec un très mauvais dossier scolaire, ce qui m'a fermé les portes vers un BTS ou un DUT à l'époque (et ingénieur par la même occasion)
j'ai passé un BTS à l'AFPA à 31 ans, après avoir travaillé quelques années, mais de nos jours, il vaut mieux avoir un bac+5 qu'un bac+2 ou +3.