12-Course MS in Computer Science

Program Overview

The 12-course Master of Science in Computer Science is designed for students who wish to specialize further in one of the following subject areas: Application Development, Data Analytics, High Performance Computing, or Software Engineering.

Additionally, the program includes an experiential learning requirement, providing students with practical, hands-on experience to apply their skills in real-world settings. Students also have the flexibility to opt for a practicum, enriching their experience with research-focused projects.

15-24 Months

Time to Degree

Full or Part-Time

Schedule

Hyde Park, Chicago

Location

$82.2K *

Program Tuition

Professional Career

Academic Focus

Yes

STEM OPT Extension Eligible

* The total tuition cost provided is an estimate based on the current academic year’s rates and is subject to change. Additional fees and expenses, such as books, supplies, and living costs, are not included. If required, immersion coursework is an additional expense.

Program Requirements

There are two distinct degree tracks available to fulfill the 12-course MS in CS degree requirements. Each track’s components combine to offer students a comprehensive education in computer science with opportunities for both practical application and specialized study in their chosen area of focus.

Track 1

  1. Core Courses (6 courses total):
    • Algorithms (required)
    • Programming (required, with a limit of one core programming class)
    • Computer Systems (3 required courses)
    • Additional Core Course in Algorithms or Computer Systems, or a Practicum* Course.
  2. Specialization Courses (3 courses total):
    • Students choose a specialization area from options such as Application Development, Data Analytics, High Performance Computing, or Software Engineering.
  3. Elective Courses (3 courses total):
    • These courses are chosen based on the student’s interests or to further enhance knowledge in their chosen specialization.
  4. Experiential Learning Requirement

*In a practicum, students engage in a research-oriented project over a single academic quarter, totaling approximately 100 hours of work, or about 10 hours per week on average.

 

Track 2

  1. Core Courses (5 courses total):
    • Algorithms (required)
    • Programming (required, with a limit of one core programming class)
    • Computer Systems (3 required courses)
  2. Specialization Courses (4 courses total):
    • Students choose a specialization area from options such as Application Development, Data Analytics, High Performance Computing, or Software Engineering. Note, in this degree track, students can opt to take a fourth specialization course in place of one core course.
  3. Elective Courses (3 courses total):
    • These courses are chosen based on the student’s interests or to further enhance knowledge in their chosen specialization.
  4. Experiential Learning Requirement

Current course offerings can be found on the MPCS Course Schedule.

Specializations

The 12-course MS in Computer Science program offers students the opportunity to customize their educational experience through a variety of specializations. These specializations allow students to deepen their knowledge in key areas of computer science and align their coursework with specific career goals.

Explore the descriptions of each specialization below. For more information on specific courses, please visit the Curriculum and Degree Requirements page.

Application Development

The Application Development specialization within the Master’s Program in Computer Science (MPCS) is designed for students aiming to build expertise in creating robust and scalable software applications. This specialization prepares graduates for a variety of roles, including software developer, application architect, and system analyst, equipping them with the skills needed to succeed in the ever-evolving field of software development.

Data Analytics

The Data Analytics specialization within the Master’s Program in Computer Science (MPCS) is designed to equip students with the skills and knowledge needed to analyze complex data sets and extract actionable insights. This specialization emphasizes practical skills in data handling, statistical analysis, and data visualization. Specializing in Data Analytics prepares graduates for roles such as data analyst, data scientist, business intelligence analyst, and data consultant, equipping them with the skills to make data-driven decisions and drive innovation in various industries.

High Performance Computing

The High Performance Computing (HPC) specialization within the Master’s Program in Computer Science (MPCS) is tailored for students interested in leveraging advanced computing technologies to tackle complex computational problems. This specialization emphasizes the design, implementation, and optimization of computing systems and algorithms to achieve peak performance. Specializing in HPC prepares graduates for advanced roles in fields such as computational research, scientific computing, data analysis, and systems engineering. Graduates will be equipped to handle complex computational challenges and drive innovation in various industries requiring high-performance computing solutions.

Software Engineering
The Software Engineering specialization within the Master’s Program in Computer Science (MPCS) is designed to provide students with a deep understanding of software development processes, methodologies, and best practices. This specialization emphasizes the creation of reliable, scalable, and maintainable software systems. Specializing in Software Engineering prepares graduates for careers in various roles such as software engineer, software architect, project manager, and systems analyst. Graduates will be equipped with the knowledge and skills to develop high-quality software solutions and manage complex software projects effectively.

Important Notes

The Experiential Learning Requirement is designed to provide students with practical, hands-on experience that complements their academic coursework. This requirement ensures that students apply theoretical knowledge to real-world scenarios, enhancing their problem-solving skills and preparing them for professional careers in the field of computer science.

The Research Practicum provides an alternative to elective courses by allowing students to engage in research-oriented projects under the guidance of a faculty or staff advisor. This hands-on experience complements theoretical knowledge and prepares students for advanced research or professional roles.

A single course may not fulfill more than one course requirement. If you are a full-time student on a student visa, you are eligible for degree based CPT as part of the 12-course program. If you complete the experiential learning requirement on CPT, you must complete 12-courses in the MPCS to receive your degree.

Scroll to Top