Unconventional Advice for CS Undergrads

If you watch any "how to succeed as a CS major 101" video or blog, one of the first pieces of advice they provide is to not be obsessed over GPA. While there is some truth to this, I think it is often misconstrued as not focusing on classes. However, in 2025 this advice is outdated.

Throughout my more than 50 technical interviews during my college career, the number of times I have been asked LeetCode questions is less than 10%. With the rise of cheating software and the overall ineffectiveness of such questions, there has been a shift in the interview process to focus more on math and systems knowledge.

So if I had to restart my college career, I would focus on the following courses:

  • Discrete Math
  • Combinatorics
  • Probability Theory
  • Computer Architecture
  • Operating Systems
  • Database Management Systems
  • Computer Networks
  • Compilers

However, there is still merit to doing LeetCode. I would recommend solving 300 problems with a 20-50-30 distribution for easy, medium, and hard questions. Start with NeetCode first, then move on to company-specific questions as you get interviews.

Here are some more facts that are good to know:

  • If you are interested in quantitative finance, first decide if you want to focus on quantitative development, trading, or research. If you seriously pay attention in all the classes mentioned above, you won't have much trouble with the interviews. But how do you get the interviews in the first place? School prestige matters if you lack previous unicorn or big tech experience. School prestige matters little if you have previous unicorn or big tech experience (ideally multiple).
  • Internships operate on a snowball effect. Getting one is easier if you have previous internship experience on your resume. Unlike what most people say, if you are a high school senior, it doesn't hurt to start trying to get an internship for your freshman year.
  • Whether or not you join clubs really depends on the school you attend. If there is a strong club culture at your school, then the opportunities you are presented and the friends you make may very well depend on whether you are part of select clubs (looking at you UC Berkeley); however, if you attend a school like Georgia Tech, joining clubs is more of an option for networking rather than a necessity.
  • Any programming languages advice is doomed to get stale, but as of 2025 dabbling in Typescript, Python, C/++, and Rust will be pay dividends.
  • The only resume template formatting advice you need is (1) use Jake's resume template and (2) strive to get formatting that looks similar to this guy's resume.
  • LinkedIn only helps once you have impressive experiences where other people may finally reach out to you.
  • Connections are underrated when you don't have a mature resume, and connections are overrated when you do have a mature resume. Focus on networking and connections appropriately.
  • Finally, please socialize in college. If you need a CS careers-oriented reason, let's just say it will help with behavioral interviews.