This is insightful because in my degree those classes were mandatory as part of a three year degree.
To answer your question: we don't. I have no expectation around this. Primarily asking for my own curiosity in terms of differences in CS degrees.
To answer your question: we don't. I have no expectation around this. Primarily asking for my own curiosity in terms of differences in CS degrees.
At some level, we had SQL and network programming in my degree, but only for that level that we knew it exists and how to do it in very basics. We did not have concurrent programming at all as mandatory course.
The most of your deeper expertise comes from the project work here, and depending on which project you end up or choose, they might or might not include above.
Exposure to computer architecture and organization, information management, networking and communication, operating systems, and parallel and distributed computing.
But they only require "exposure" to these concepts whereas algorithms, theory, programming languages, etc are required to be "substantial." Which matches with your perceptions: It seems most are exposed to them partially through project work but without the base knowledge.
[0] https://www.abet.org/accreditation/accreditation-criteria/cr...