That sounds more like a Computing Systems / Engineering degree rather than computer science to me. Where is the theory surrounding NP and problem classes - especially proving hardness/completeness. What about relevant and applicable theories such as Game Theory. Things such as Turing Machines, automata, formal specification and verification, the completeness of first order logic. The differences between functional and imperative programming. Techniques such as machine learning and neural networks. What about being able to apply CS in terms of biology. (All things I covered on my course) Not belittling yours, it just interesting to note how different these courses with exactly the same names differ.
I would argue that doing such a degree should provide the foundation for the learning, but fully expect the student to do so much more while they are there. For example I started my degree knowing C++ and PHP, and left knowing 5 more languages, of which only two were formally taught. I think the issue is that most students are lazy they tend to do only what they have to and nothing more. They don't want to bother with trying just a bit harder and getting more out of the degree.
Anyway, on the hiring side of things. If HR sets up the interviews with people who the candidate would not end up working for (or the team doesn't spare a manager to attend the interview) then it would make sense that the wrong people tend to get hired for jobs. But then, on the other hand, I know a firm over here that just hired a bunch of grads who are all useless (according to my contact that works with them) and I know that they interview with the managers and technical members of the team.
Yeah, our program was more towards the engineering side of it, but it was a pretty intensive program. I think some schools are just dumbing the programs down to pump out grads. There was a lot more theory then I listed, I was just hitting at some of the main topics.
We had to know a good number of languages at graduation. By the time I was done we covered, C++, Java, Assembly, VB, LISP, COBOL, Perl, PL/C, SQL-92 and PL/SQL and had an extensive knowledge of DCL and JCL (we worked on VAX systems for a long time then they converted to an IBM system and went to JCL)... thing about languages, they are easy to pick up.... it's definitely the concepts that you need to know... if you don't know the concepts, no mater the language, you will struggle