As your son said, these courses are not aligned with whats required today in the corporate world. They are mostly focused on mathematics and have courses such as C++, which are rarely used for software development today. Math would help, but only to some extent. Students are learning courses that have little relevance to what they would work on during their professional life. IMO, most of the courses in BS EECS are irrelevant for a software development job.