A lot of people who are interested in getting a Master’s degree in computer science are put off by the fact that they don’t have an undergraduate degree in the same field.
However, there are actually quite a few schools that will accept students with non-CS backgrounds into their Master’s programs, as long as they have taken the necessary prerequisite courses.
In this blog post, we’ll go over the typical Master’s in Computer Science prerequisites and provide a list of schools that accept students without a CS background.
What is a prerequisite?
A prerequisite course is a class that you must take and pass in order to be eligible for a particular class or program.
For example, if you want to take a course in advanced programming, you will likely need to have taken some sort of introductory computer science course as a prerequisite.
The same goes for getting a Master’s degree in computer science. While there are some schools that will accept students without an undergraduate degree in computer science, most programs will require that you have taken some basic CS courses as a prerequisite.
Why do certain programs require prerequisites?
So why do certain programs require prerequisites? There are a few reasons.
First, the prerequisite courses help to ensure that all students in the program have a basic understanding of the material. This is important because it allows everyone to be on the same page and prevents people from feeling lost or behind.
Second, prerequisite courses provide a foundation for the material that will be covered in the actual program.
And lastly, having prerequisite courses gives students the opportunity to try out the subject matter and see if it’s something they’re actually interested in before committing to a full program.
What are the prerequisites for Master’s in Computer Science programs?
The prerequisites for Master’s in Computer Science programs vary from school to school. However, there are a few courses that are commonly required or recommended. We present you a list of such courses below, but for prerequisites required specifically by the school of your choice, please see the individual programs and their prerequisite requirements at the bottom of this page.
Most computer science Master’s programs will require you to take some math courses in order to prepare you for advanced CS concepts. These most commonly include:
- Linear Algebra – This course covers the basics of linear algebra, which is a fundamental topic in mathematics that is used extensively in computer science for topics like machine learning and artificial intelligence.
- Calculus – Calculus is another fundamental topic in mathematics that is used in computer science for topics like algorithm design and analysis.
- Differential equations – Differential equations are a type of equation that allows you to find the rate of change of a function. They are used in computer science for topics like simulation and modeling.
- Discrete Math – Discrete math is a branch of mathematics that deals with discrete objects, such as numbers and graphs. It is used in computer science for topics like data structures and algorithms.
Probability and statistics
Probability and statistics are also often required or recommended for computer science Master’s programs. These courses will help you understand and analyze data, which is a fundamental skill in computer science. They will help you deal with concepts like randomness, probability, and statistical inference, as well as understand and use basic statistical methods.
Many computer science programs will also require or recommend that you take an object-oriented programming course. This type of programming is a fundamental concept in computer science, and it is used in many popular programming languages like Java and C++.
As comes from its name, object-oriented programming concerns itself with creating objects (which are data structures that contain both code and data) and using these objects to solve problems.
Data structures and algorithms
Another essential course in the undergraduate computer science curriculum that Master’s programs will require you to take is data structures and algorithms. Considered to be the bread and butter of computer science, data structures and algorithms are used to store, manipulate, and analyze data.
In this course, you will learn about different data structures (like arrays, linked lists, and trees) and algorithms (like sorting and search). You will also learn how to effectively design and analyze your own algorithms.
Computer architecture teaches you about the hardware and software components that make up a computer system, as well as how these components work together. The course starts with the basics of digital logic and computer components, and then covers topics like memory, buses, I/O devices, and multiprocessing.
This is important for computer science because understanding how computer systems work will help you design more efficient and effective algorithms, as well as optimally use programming paradigms.
The operating systems course covers the basics of how operating systems work. You will learn about topics like process management, memory management, and file systems.
By the end of the course, you will have a good understanding of how an operating system works internally, as well as how to design and implement simple operating systems.
Where can I take the Master’s in Computer Science prerequisites?
Now that you know what courses are the usual Master’s in Computer Science prerequisites, let’s talk about where you could take these courses to satisfy the application requirements.
There are a few different options available to you:
- Your undergraduate university – if you are still completing your Bachelor’s degree while thinking of attending a Master’s in Computer Science program afterwards, you have a perfect opportunity to mix in the prerequisite CS courses in your schedule and be graduate school-ready by the time you graduate.
- Community college – another great option for taking Master’s in Computer Science prerequisites is attending a community college. Community colleges often have more flexible schedules and lower tuition rates, which makes them a great option for taking prerequisite courses.
- Post-baccalaureate programs – CS post-bacc programs are degree or certificate programs that are designed for individuals who would like to take fundamental computer science courses after getting a Bachelor’s degree in another field. They often have coursework identical to Master’s in Computer Science prerequisites, which makes them a perfect preparation for graduate school admissions.
One thing that should be noted is that MOOCs (massive open online courses) and self-study are not acceptable ways of fulfilling the prerequisites for most MSCS programs.
Another thing to keep in mind is that some schools offer conditional admission to students without a CS background. This means that you may be required to take additional classes during your first semester or two in order to catch up with your peers. However, if you’re willing to put in the extra work, it’s definitely worth completing these prerequisites beforehand.
What other application requirements are there for Master’s in Computer Science?
Besides the Master’s in Computer Science prerequisites, there are a few other requirements that you will need to complete before applying to Master’s programs. Here is a list of common application requirements for MSCS programs:
- GRE – most Master’s in Computer Science programs will require you to take the GRE (Graduate Record Examination). The GRE is a general standardized test that is used for graduate admissions.
- Transcripts – you will need to submit official copies of your transcripts from all the colleges/universities you have attended and satisfy the GPA requirements.
- Letters of recommendation – Master’s in Computer Science programs typically require 2-3 letters of recommendation from individuals who can speak to your academic abilities and potential for success in graduate school.
- Personal statement – most Master’s in Computer Science programs require you to submit a personal statement, which is essentially an essay outlining your motivations for pursuing a Master’s degree, your research interests, and your future career plans.
- Resume – you will also need to submit a resume detailing your educational background, work experience, and skills.
- English Proficiency Test – if English is not your first language, you may be required to take the TOEFL (Test of English as a Foreign Language) or IELTS (International English Language Testing System) in order to demonstrate your proficiency in the English language.
Additional application requirements may vary from school to school, so be sure to check the requirements of the Master’s in Computer Science programs you are interested in.
What are the universities that require prerequisites for applicants with no CS degree?
Now that we have talked about what the usual prerequisites for Master’s in Computer Science are and where you could take them before applying to the programs of your choice, let’s take a look at some specific programs and the prerequisites they require.
The following Master’s in Computer Science programs all recommend or require applicants with non-CS backgrounds to have completed the prerequisites prior to applying:
1. CVN MSCS at Columbia University
This fully online Master of Science in Computer Science program at Columbia Video Network (CVN) is one of the top CS programs in the United States that accepts students coming from non-CS backgrounds.
The university states that prospective students must take at least 6 prerequisite computer science courses, namely 4 computer science courses covering the foundations of the field and 2 math courses.
Although no specific requirements are made for which specific courses the students should take, here are some examples that they provide on their website:
- Intro to Computer Science
- Advanced Programming
- Data Structures and Algorithms
- Discrete Math
- Linear Algebra
- Differential Equations
2. Online MSCS at Georgia Institute of Technology
Prerequisite requirements for this top-notch online Master’s in Computer Science program include the ability to code, C programming, Java, and algorithms.
More specifically, the following courses are recommended for students who applying to the OMSCS program with an undergraduate degree in an unrelated discipline:
- Operating Systems
- Design and Analysis of Algorithms
- Formal Languages and Automata Theory
- Networking and Communications
- Computer Architecture
3. EP MSCS at Johns Hopkins University
Engineering for Professionals (EP) Master of Science in Computer Science program at JHU has been ranked as #2 online computer science program in 2022.
This excellent Master’s program that can be completed online, on-site, or in a hybrid mode, recommends the following courses for students applying from non-CS backgrounds:
- Calculus (2 semesters or 3 quarters)
- Advanced math (discrete math is strongly preferred but linear algebra and differential equations will be accepted)
- Java (C++ will be accepted but the student must be knowledgeable in Java)
- Data Structures
- Computer Organization (e.g., assembly language and machine organization).
Applicants who do not satisfy the above course requirements may still enroll under provisional status, followed by full admission status when they finish the required prerequisites.
4. MSCS at University of Illinois Urbana-Champaign
The Master’s in Computer Science program at UIUC is one of the most popular and oldest programs in the United States.
Admissions division at this prestigious university recommends that applicants who do not possess a Bachelor’s degree in computer science should complete the following courses prior to applying to the program:
- Computer Programming
- Data Structures and Algorithms
- Computer Architecture
- Theory of Computation
5. Online MSCS at Tufts University
Tufts Gordon Institute’s online Master’s in Computer Science program is a great option for students with non-CS backgrounds. The admissions team necessitates that the applicants have skills in the following areas of computer science:
- Algorithm Analysis
- Computational Theory
- Computer Architectures
- Data Structures
- Operating Systems
6. MSCS at New York University
This well-renowned Master’s in Computer Science program based in New York City offers admission to students of non-CS background on individual basis. In order to be considered for admission, the applicants should have:
- A working knowledge of a high-level, general-purpose programming language (preferably C++).
- A basic understanding of computer fundamentals such as computer organization and operation, data structures, and computer architecture.
7. MSCS at Boston University
Although Boston University’s MSCS program is designed for individuals with strong computer science background, admission to students with no prior CS training may be granted on the condition of satisfying the following prerequisites:
- Computer Systems
- Programming Languages
- Computer Theory
8. MSCS at North Carolina State University
NCSU states that it is interested in individuals from various backgrounds. At the same time it requires that prospective students come with a strong foundation in computer science, particularly in the following fields:
- Mathematics (calculus, probability and statistics, discrete math. linear algebra)
- Programming and Algorithmic Thinking (OOP, data structures, algorithms)
- Computer Systems (operating systems, computer organization)
9. MSCS at Arizona State University
Arizona State University’s Master’s in Computer Science program is open to individuals from all academic backgrounds. However, individuals coming from non-engineering background are encouraged to satisfy the following deficiency courses:
- Calculus I-III
- Discrete math
- Principles of programming
- Object-oriented programming
- Digital design
- Programming for computer engineers or Programming languages
- Computer organization & Assembly language programming
- Data structures and algorithms
- Operating systems
- Introduction to theoretical computer science
- Principles of programming languages
10. MSCS at University of Wisconsin – Madison
Applications to University of Wisconsin’s MSCS program are accepted from students with undergraduate majors in many different fields. Prospective students should at least have some programming knowledge and experience. The following prerequisites are recommended:
- Foundational Programming
- Data Structures
- Machine Organization
- College Mathematics at the level of calculus or above
Are there Master’s programs in computer science for students with no CS background that don’t require prerequisites?
Believe it or not, there are Master’s programs in CS for non-CS graduates that are designed specifically for students with unrelated backgrounds. They don’t require any prerequisite computer science courses and usually incorporate all foundational classes inside their curriculum.
This makes these specialized programs very convenient for individuals who do not want to spend several semesters taking prerequisite courses and would rather start a Master’s program as soon as possible.
If you want to learn more about these Master’s programs in computer science that do not require any prerequisites from non-CS graduates, follow the links to on-campus and online Master’s degrees for non-CS majors.
We hope this blog post has been helpful for you, if you’re considering getting a Master’s degree in computer science but don’t have an undergraduate degree in the same field.
Remember, as long as you have taken the necessary prerequisite courses, you should be eligible to apply to most programs.
And if you don’t want to bother taking prerequisite courses and would rather start your Master’s right away, we have provided options for you to attend a Master’s program designed specifically for non-CS graduates that don’t require any prerequisites. Best of luck!
Elmar Mammadov is a software developer, tech startup founder, and computer science career specialist. He is the founder of CS Careerline and a true career changer who has previously pursued careers in medicine and neuroscience.
Due to his interest in programming and years of past personal experience in coding, he decided to break into the tech industry by attending a Master’s in Computer Science for career changers at University of Pennsylvania. Elmar passionately writes and coaches about breaking into the tech industry and computer science in general.