So, you’ve made the decision you want to go back to graduate school to attain a masters degree in computer science. Great! But how do you choose the right program/school for you? Contrary to undergraduate programs, school name plays less of a role in a graduate program. This is because in a graduate program, you will need to choose a specific “track” to focus your degree on, which will largely reflect the department of the school you plan on attending. Different schools offer different “tracks” based on the faculty in their department, so when choosing a masters program in computer science, it is important to first decide on which track you would like to focus on. Popular tracks currently include but are not limited to:
- Artificial Intelligence & Machine Learning
- Database Systems
- High Performance Computing
- Embedded Systems
- Operating Systems
- Scalable Cloud Systems
- Software Engineering
- User Interfaces & Experience
- Data Science
- Algorithms & Theoretical CS
To help determine which track is best for you, consider not only your strengths and weaknesses (a weak math background would suggest AI/ML is not for you), but also where you see yourself in the future. The masters is an opportunity to pick a specialization and pursue jobs whose requirements will be covered by your coursework. If there is a specific industry/company you are targeting, find a track that is relevant to that line of work. Once you’ve decided on a track, you will next want to find a school that offers this track. Just like undergraduate, graduate programs have rankings that really reflect on the quality of your classmates and rigor of the coursework / how much you learn. Always aim to apply to both “reach” programs as well as easier programs.
Once you’ve decided on which school’s departments computer science graduate programs align with your long term interest, its time to dive another layer down in research. Most schools have all of their current and past courses available online, as well as clear guidelines on what classes are required to graduate. It is recommended to now plan out which courses you would take if you were theoretically a student there. At this point, you will learn which programs have the most classes that would interest you / match your learning goals. Use this exercise to help decide which program is right for you. You could also evaluate program costs at this point as well. If you are going to be a fulltime student, consider the campus environment, weather, accommodations at each potential program as well.
After applying, if you are in the lucky position of weighing offers, be sure to try to visualize yourself as a student at each campus, considering both coursework and future classmates, as they will become valuable network connections and help you in industry in the future.
To summarize how to decide where to go for a masters in computer science:
- Decide what track/emphasis is right for you to specialize your computer science knowledge in
- Find schools whose departments & programs have tracks/specializations in the field you are interested in
- Rank your schools by combining ranking, cost, relevant coursework
- Apply & hope for the best!