- Linear algebra (fischer's book)
- analysis (koenigsberger's book)
- discrete maths (zorich's books)
- probability theory (all of stats - wassermann)
foundations:
- parallel programming (A minicourse on multithreaded programming Charles E. Leiserson, Harald Prokop.)
- algorithms and datastructures (Widmayer's book)
core:
- systems (Computer Systems: A Programmer's Perspective" (3rd Edition) by R. Bryant and D. O'Hallaro)
- network (Computer Networking: A Top-Down Approach, James F. Kurose and Keith W. Ross)
- numerical methods
- data modeling and dbs
- formal methods and functional programming (Miran Lipovača. Learn you a Haskell for great good!)
(eth zurich's bachelors)
All the books are one google search away.
while you're browsing: this is equally great :)
https://archive.nytimes.com/www.nytimes.com/interactive/2013...
Especially crazy that these work as well and quickly on mobile!