What are the most common/important classes in a typical/classical computer science BSc?<p>Would you say formal languages & automata as well as linear algebra are among these for instance? Should one study the above in their free time if they're not included?<p>What classes did you find important when starting to work?
Its important to have a solid grasp of algorithms and data structures not only for interviews but to be able to recognize that a problem may have a more optimal solution. You don't need to know everything off the top of your head -- much of your time will be spent learning and refreshing on things you don't know -- but you want to be able to see when things can be done more efficiently<p>If there is a specific position or field that you are interested in then take classes relating to that. Otherwise, a lot of specific technical information you learn in your classes may never be used in the field, and therefore my advice is take things that interest you and that you find challenging and try to apply them.<p>If you've completed a few projects or gained experience through internships or teaching and have a solid grasp of algorithms & data structures you'll have no problem securing a job. You'll learn what you need to afterward.
Solid answer. There is no point to worry about classes. All I have to know is what I like and find interesting. Then find out what I need to know to do that.