<p>I can also definitely recommend taking more math courses. You have lots of options here: information theory (algebraic coding, compression, cryptography, etc.) combinatorics (graph theory, enumeration, designs, etc.), numerical analysis (numerical methods, modeling, scientific computing, etc.), optimization (linear, nonlinear, combinatorial, etc.), statistics (stochastic, regression analysis, models, etc.), etc. You could always take courses in more traditional “foundations” courses in algebra, analysis, topology, geometry, etc.</p>
<p>Another option to consider is loading up on hardware courses in the EE/ECE department. Your department may have courses in computer architecture, high-performance computing systems, networking, advanced interconnect networks, computer security, etc.</p>
<p>If you’re interested in other areas, you might be able to talk your way into some advanced courses. For instance, you might be able to take a few courses on computational fluid dynamics, or computational finance, or computational linguistics, etc.</p>
<p>Finally, consider using the credits to take something you’ve always wanted to explore. Philosophy? Political science? Religion/Mythology/Occult? History? Communication? Literature? Rhetoric? Music? Art? Theater? Education? Architecture? Sports? Lots of options here and potential for low price/earnings (lower-level, introductory material is generally more useful over a lifetime than is high-level, niche material… e.g., your introduction to logic vs. your 2nd semester of research topics in computational issues surrounding experimental combinatorics on partial words).</p>