<p>The list of colleges with good CS offerings is too long to list, as there are hundreds to choose from. However, some colleges with high general prestige have small and limited CS departments.</p>
<p>What you want to do is look in the course catalogs and schedules to see if the following advanced CS courses are offered:</p>
<p>algorithms and complexity <em>+
theory of computation, languages, automata +
operating systems *+
compilers +
networks *
databases *
security and cryptography *
software engineering course, project course, or projects in other courses *
hardware courses like digital systems, computer architecture +
electives like graphics, artificial intelligence, etc.
programming language theory %</em>+</p>
<p>The courses marked * are the ones whose concepts are most useful for industry software jobs. The courses marked with + are the ones sometimes recommended as the core courses if going on to PhD study. The others in the list can be useful for specific areas of industry or PhD study.</p>
<p>The course marked with % may not exist at schools where the frosh/soph level courses use several programming languages of different programming paradigms (e.g. Python, LISP/Scheme, C++/Java, assembly language, etc.), since its content would be implied in courses using a mix of programming languages.</p>