Good points by @retiredfarmer . RIT also offers unique approaches with co-op emphasis, hence why I recommended those two specifically despite being “tech” schools. Northeastern will offer that uniqueness and a great CS program as well. It would be a match while WPI/RIT are closer to safeties academically speaking. All 3 great options for experience-based learning in CS.
This essay details the CS approach at Northeastern (created there and used by WPI, Waterloo, Brown, and a few other notable CS schools) and also gives some stuff to look for generally in CS programs, particularly when evaluating the strength of smaller CS programs beyond course offerings etc.
http://www.ccs.neu.edu/home/matthias/Thoughts/Developing_Developers.html
To be fair, I’m a Northeastern CS student who works directly with the professor above and the teaching curriculum discussed (I TA the first course at Northeastern) and @retiredfarmer is a WPI grad, so we may be a bit biased
That said, I have TA’d the course for over 2 years now specifically because of the academic teaching philosophy behind it and think it should be adopted across many programs, as it already has spread to some extent. There are far too many CS programs that teach “programming” in inefficient ways that usually end up advantaging the already experienced, which I think actually also plays into the gender gap in CS. CS jobs pretty much categorically involve many skills beyond programming and it’s important to include that in your education.