I am a junior finishing the CS portion of my BA in Computer Science with an emphasis in Economics. I've taken the CS lower divs, Data Structures and Algorithms I and II, Networking, Computational Science, Computer Organization and Logic Design, Machine Learning, Databases, and all of the same Math and Stats as those getting a BS.<p>Here are classes required for the BS that I won't be able to take:<p>- Automata and Formal Languages<p>- Computer Architecture<p>- Translation of Programming Languages (Compilers)<p>- Programming Languages<p>- Operating Systems<p>- Distributed Systems<p>I would like to be able to do everything that my peers can (and more). I'm going to start my fourth software internship, and I'm always fearful of the moment that my lack of knowledge comes back to bite me. My biggest problem is that that I don't know what I don't know. I have two questions.<p>1.) What's the best ways to figure out what knowledge gaps I have, and fill them in?<p>2.) Specific to my case, what are the best resources to do so? What should I prioritize?