A few decades ago everyone learned C/C+ in school. Then might take an interest in gui programming, later read a book on what makes good ui. Over a decade or three, quite doable.
Firmware is C (and I forgot to mention asm) and a few special rules about boot. Less difficult than tedious in modern times.
Electronics is a different subject, but I took physics in school and dabbled in soldering etc. Amateur electronics at least is pretty approachable if you have the interest.
Computer Architecture class bridges the two nicely. There you go—well rounded.
Unless they studied sth like electrical engineering?