Skip to Main Content

A Student-centered Experience

Online Master of Science in Computer Science

The Department of Computer Science at Tufts University provides an open, friendly, diverse, and collaborative atmosphere in which to study computer science. Students stay on the leading edge of computer science throughout their degree program, because Tufts course content is continually revised and updated.

With a long history of interdisciplinary learning and research collaboration, the Department of Computer Science brings together faculty, students, alumni, staff, and experts from across fields and organizations. Students are taught by Tufts Computer Science faculty members who are recognized leaders in academia and stay at the forefront of the field through their innovative research.

By the Numbers


Tufts begins offering engineering courses and degrees


The online MSCS program does not require visits to campus and is completed 100 percent online


Students can complete the online MSCS in under two years


The program is 33 credit hours and comprised of 10 courses which includes a capstone project completed over two semesters


More than thirty percent of Tufts Computer Science tenure-track and teaching faculty are women


Tufts alumni network includes more than 13,000 graduates from around the world

Is the Tufts Online MSCS Program Right for You?

The Tufts online MS in Computer Science program is designed to provide graduates with the core principles, fundamental concepts, theories, and application in the following areas of computer science:

Models of computation
Machine learning
Software engineering
Programming languages
Computer security
Networks and protocols
Database systems
Discrete mathematics

Tufts Online MSCS Curriculum

Tufts University School of Engineering’s online MS in Computer Science program is comprised of 33 credits. Students will complete 10 courses which includes a capstone project that is completed over the span of two semesters.The program can typically be completed in under two years.

Principles and application of computer programming languages. Emphasizes ideas and techniques most relevant to practitioners, but includes foundations crucial for intellectual rigor: abstract syntax, lambda calculus, type systems, dynamic semantics. Case studies, reinforced by programming exercises. Grounding sufficient to read professional literature.

Expected competencies: Well-developed programming skills and knowledge of discrete mathematics.

Fundamental issues in operating system design. Concurrent processes: synchronization, sharing, deadlock, scheduling. Relevant hardware properties of uniprocessor and multiprocessor computer systems.

Expected competencies: It is recommended that students are familiar with the basics of machine structure and systems, and have well-developed programming skills.

Fundamental concepts of database management systems. Topics include: data models (relational, object-oriented, and others); the SQL query language; implementation techniques of database management systems (storage and index structures, concurrency control, recovery, and query processing); management of unstructured and semistructured data; and scientific data collections.

Expected competencies: Well-developed programming skills.

A holistic and broad perspective on cyber security. Attacking and defending networks, cryptography, vulnerabilities, reverse engineering, web security, static and dynamic analysis, malware, forensics. Principles illustrated through hands-on labs and projects, including Capture The Flag (CTF) games.

Expected competencies: Well-developed programming skills and knowledge of discrete mathematics.

An overview of methods whereby computers can learn from data or experience and make decisions accordingly. Topics include supervised learning, unsupervised learning, reinforcement learning, and knowledge extraction from large databases with applications to science, engineering, and medicine.

Expected competencies: Well-developed programming skills and knowledge of discrete mathematics. Exposure to algorithms at the level of COMP 160 is recommended.

Introduction to the study of algorithms. Strategies such as divide-and-conquer, greedy methods, and dynamic programming. Graph algorithms, sorting, searching, integer arithmetic, hashing, and NP-complete problems.

Expected competencies: Well-developed programming skills and knowledge of discrete mathematics.

Models of computation: Turing machines, pushdown automata, and finite automata. Grammars and formal languages including context-free languages and regular sets. Important problems including the halting problem and language equivalence theorems.

Expected competencies: Well-developed programming skills and knowledge of discrete mathematics.

Core principles and ideas that enable development of large-scale software systems, with a focus on programming. Abstraction, modularity, design patterns, specification, testing, verification, and debugging.

Expected competencies: It is recommended that students are familiar with the basics of machine structure and systems.

Development of a culminating project for the MSCS program, providing an opportunity to demonstrate what has been learned. Project design, implementation, and testing, along with proper forms of documentation for planning and delivery of ambitious projects. Professional presentation of products and results, and professional responsibilities related to legal, ethical, safety, and security principles. A two-course sequence employing hands-on work, both individual and team-based.

Expected competencies: To be taken in the last two semesters of the MSCS program.

Learning Outcomes

Tufts attracts students with inquisitive minds who are futuristic thinkers capable of developing innovative solutions for today’s digital challenges. Upon completion of the program, graduates should be able to:

Programming languages


Craft realistic programs in a variety of programming languages.

Provide Mathematical Proof

Provide Mathematical Proof

Prove the properties of algorithms mathematically.

Analyze Algorithms

Analyze Algorithms

Predict complexity of algorithms, including algorithms for trees and graphs, and for algorithms including dynamic programming.



Identify the computability class of a language, including regular, pushdown, and Turing-equivalent languages.

Be Effective Communicators

Be Effective Communicators

Take constructive criticism, present to a group, make a compelling argument.



Discuss the semantics of programming language.

Discover if the Tufts online MS in Computer Science is right for you and your career goals.

Career Opportunities with an MS in Computer Science

The online MSCS program is designed for students who are seeking to gain the skills and credentials that will allow them to secure a new job, promote within their current organization, gain a higher average salary, or pursue future research projects.

Jobs for MS in Computer Science graduates include:


Average Salary

Software Developer


Test / Quality Assurance Engineer


Machine Learning Engineer


Data Scientist


Information Security Manager


Senior Systems Engineer


Senior Hardware Design Engineer


Senior Software Engineer


Solutions Architect


Vice President (VP), Information Technology


Principal Software Engineer


Senior Product Manager


Software Architect


Software Development Manager


Director of Engineering


Salaries shown above are based on average salaries reported to Payscale as of April 22, 2020.

Tufts MS in Computer Science alumni have gone on to internships or full-time positions at the following organizations:

Amazon / Amazon Robotics
Arista Networks
Charles River Analytics
Capital One

Data Intelligence Technologies
GE Digital
Goldman Sachs

Jet Propulsion Lab
MIT Lincoln Laboratory

Explore More

Tufty campus on a snowy day.

Tufts On-campus MSCS Program

For prospective students who wish to complete their MS in Computer Science program in a traditional classroom setting, Tufts offers an on-campus program that can be completed on a full-time or part-time schedule. Learn more

Ready to Take the Next Step?

For more information about the online MS in Computer Science program, please complete the form below.

Please enter your first name.
Please enter your last name.
Please enter a valid email address.
Please enter a valid phone number (numbers only).
Please enter a valid postal code.
Please select an option.

By providing my information and clicking the submit button, I agree to be contacted via email, phone or text to learn more about the online MSCS program.