Gli ingegneri del software devono conoscere la matematica?

No, gli ingegneri del software non hanno bisogno della matematica, come molte risposte qui sottolineano.

Ma dai dettagli della domanda ho l'impressione che la domanda voglia davvero chiedere "ci sono posizioni di ingegneria del software in cui è necessario conoscere la matematica? La risposta è sicuramente sì.

Molte posizioni richiedono di fare calcoli numerici. Al giorno d'oggi, l'apprendimento automatico è un grande lavoro; avrete sicuramente bisogno di conoscere la matematica: algebra lineare, calcolo, discesa del gradiente.

I videogiochi e altre applicazioni di computer grafica richiedono la matematica per calcolare le posizioni e i valori dei colori e così via.

Se lavorate nei compilatori o nella teoria PL, vorrete conoscere un po' di logica matematica.

Se lavorate sulle librerie di crittografia, vorrete conoscere la teoria dei numeri o forse anche cose più avanzate come le curve ellittiche. (Se state solo usando le librerie di crittografia, non avrete bisogno di conoscere nulla di tutto ciò.)

Non so se contate gli "algoritmi/strutture di dati" come matematica, ma certamente molte applicazioni richiedono la conoscenza di questi. Il calcolo ad alte prestazioni e i sistemi ampiamente distribuiti avranno un sacco di opportunità per un algoritmista di brillare.

-

Nei miei ultimi 3 anni come ingegnere del software, dove ho fatto soprattutto "sviluppo web generico" ho usato a malapena la matematica. Ma ho fatto cose come:

  • calcoli di Fermi per scoprire quante risorse avrebbero richiesto grandi operazioni di migrazione di database
  • algebra di base per poter scrivere CSS per posizionare le cose come volevo
  • determinare la probabilità di collisioni tra ID generati casualmente
  • costruire algoritmi disegnando diagrammi con frecce in un modo che sembrava vagamente matematico

Quindi penso che se si cerca, è possibile trovare usi per la matematica anche tra i lavori di ingegneria del software più "semplici". Si può andare avanti senza, ma può ancora aiutare in piccoli modi.