They have a breadth of knowledge in programming languages, compilers, cpu architectures, data structures, complexity, computational math, graph theory, and much much moore. Not to mention other things that come with a well rounded education like history and literature.
Can one learn that on their own or from career experience? Probably unlikely they will pusue each topic. Do you need all that to do your typical software job? Probably not.