Applied Mathematics
Numerical Methods
Advanced Programming with Java
Theory of Computation
Computer Architecture
Research Fundamentals