Dico la mia
Per essere un buon ingegnere informatico (parlo di questo campo perchè mi tocca direttamente, ma vale per tutti gli ambiti di studio) è sia
necessario avere buone capacità analitiche (per superare gli esami), sia essere curiosi e "smanettoni" (per riuscire meglio nel lavoro, ma non è necessario per lavorare

).
Anch'io ho visto diversi smanettoni che programmavano da anni e facevano programmi "complessi" (a detta loro) che poi non passavano Fondamenti di Informatica I (ho un esempio di un tipo del genere che lo ha ripetuto 3 volte passandolo alla fine con 18).
Comunque, per quanto riguarda la mia esperienza universitaria, di PC ne ho smontati eccome in facoltà, oltre che studiarne piuttosto nel dettaglio le architetture. Ricordo ancora il progetto per un esame che comprendeva, per prendere 30 (

), la programmazione della memoria di una scheda 80286 per il controllo di un display a matrice di punti+tastierino (io implementai il giochino "the snake", la cosa simpatica era controllare direttamente il periferico (display + tastierino). Il tutto ovviamente in assembly. Poi in un altro esame ho studiato piuttosto nel dettaglio l'architettura Pentium, ma non abbiamo fatto una cosa simile a quella fatta con l'80286, e mi sembra pure ovvio il perchè, mica si può fare tutto all'università, anzi...).
A quanto pare dipende quindi anche dall'ateneo in cui si studia, ho visto che la stessa facoltà viene affrontata in modo diverso a seconda dell'ateneo (in alcuni in modo più teorico, in altri più pratico). Nel mio caso l'approccio è stato: molta teoria, accompagnata da 1-2 laboratori settimanali per mettere in pratica le cose studiate (sia informatiche, ma anche elettroniche, se studi un ad es. transistor senza poi mai vederlo ed usarlo dal vivo...).
EDIT: Cmq questo è proprio un mega OT