Software Systems Development

Software Systems Development students join one of the fastest-growing professions in technology today. Learn how to design, build, and test systems programs in C and C++ under the guidance of our dedicated faculty in the Department of Computer Science.

Fingers typing on a keyboard
  • Degree Offerings
  • Faculty
  • Application Requirements
  • Contact the Department

Apply Now

Request Information

Questions about your application?

Contact us:

Office of Graduate Admissions
Bendetson Hall
Medford, MA 02155
(617) 627-3395

Software Systems Development (M.S.)

Tufts provides software system developers with the skills needed to design, build, and test systems programs. Students work closely with faculty to explore real client projects and problems that need to be solved in industry today. Choose between thesis and non-thesis degree options to best fit your career goals - the non-thesis program can be completed in as little as one year.

Research areas include:

> Systems programming
> Program security
> Data management
> Performance analysis
> Software development

Dual Degree Master's Program (with Tufts Gordon Institute)

Develop your innovation, leadership and management skills and build your technical depth with the Dual Degree Master's Program. You’ll earn two degrees: an M.S. offered by the Department of Computer Science, and an M.S. Innovation & Management (MSIM). You earn both degrees in an accelerated time frame (as little as two years) and at a reduced cost. Contact for more information.

M.S. Curriculum:

The Department of Computer Science offers a Master of Science in Software Systems Development that can be completed on a full-time or part-time schedule. The Master of Science degree requires a minimum of 30 semester-hour units (SHUs) and the fulfillment of at least 10 courses; all courses must be at the 100 level or above.

Students must complete the following courses:

COMP 111: Operating Systems
COMP 116: Security
COMP 180: Software Engineering

One or more of the following courses:

COMP 112: Networks
COMP 115: Databases
COMP 118: Cloud Computing
COMP 119: Big Data
COMP 120: Web Engineering

As well as elective courses from the following options:

COMP 105: Programming Languages
COMP 117: Internet-scale distributed systems: lessons from the www
COMP 131: Artifical Intelligence
COMP 135: Machine Learning
COMP 139: Ethics of HRI
COMP 140: Advanced Computer Architecture
COMP 156: Special Topics in the Practice of Software Development
COMP 175: Computer Graphics
COMP 177: Visualization


Alva Couch
Associate Professor
Ph.D. , Tufts University
Policy-Based Languages for System and Network Administration, Support Tools for Teaching Hands-On Computer Science
Samuel Guyer
Associate Professor
Ph.D. , University of Texas, Austin
Compiler-Assisted Memory Management
Martin Allen
Associate Teaching Professor
Ph.D. , University of Massachusetts Amherst
Remco Chang
Associate Professor
Ph.D. , UNC - Charlotte
Visual Analytics, Information Visualization, Computer Graphics, Urban Modeling
Ming Chow
Associate Teaching Professor
M.S. , Tufts University
Game Development, Online Game Security, Web Application Security, Computer Science Education
Lenore Cowen
Ph.D. , Massachusetts Institute of Technology
Graph Algorithms, Distributed Algorithms, Approximate Routing, Classification and Clustering For High-Dimensional Data, Coloring and Its Generalizations, Computational Molecular Biology
Ethan Danahy
Research Assistant Professor
Ph.D. , Tufts University
Educational Technology, Collaboration, Robotics, Makerspaces, Hands-on learning, Project-based learning
Jan P. de Ruiter
Professor and Director of Cognitive Science Program
Ph.D. , Radboud University, Nijmegen
Philosophy of science, artificial intelligence, inferential statistics, social robotics
Fahad Dogar
Associate Professor
Ph.D. , Carnegie Mellon
Mobile Computing, Cloud Computing, Internet Architecture and Protocols
Karen Edwards - Lecturer
Karen Edwards
Ph.D , University of California at Berkeley
Low-dimensional geometric topology
Jeffrey Foster - Visiting Professor
Jeffrey Foster
Professor and Chair
Ph.D , University of California at Berkeley
Programming languages, Software engineering, Security, System design and development
Soha Hassoun - Professor
Soha Hassoun
Ph.D , University of Washington
Computational methods for systems biology and metabolic engineering, Computer-aided design for integrated circuits
Bert Huang
Bert Huang
Assistant Professor
PhD , Columbia University
Machine learning, data science, structured output learning, algorithmic fairness, weak supervision
Michael Hughes - Assistant Professor
Michael Hughes
Ann W. Lambertus and Peter Lambertus Assistant Professor
Ph.D , Brown University
Machine learning, Probabilistic models, Optimization, Clinical informatics
Robert J. K. Jacob
Ph.D. , Johns Hopkins
Human-Computer Interaction, New Interaction Techniques and Media, Tangible User Interfaces,Virtual Environments, User Interface Software, Information Visualization, Software Engineering
Susan Landau - Professor
Susan Landau
Ph.D , Massachusetts Institute of Technology
Cyber security policy, Communications surveillance, Privacy
David Lillethun headshot
David Lillethun
Assistant Teaching Professor
PhD , Georgia Tech
Distributed systems, operating systems, networked systems, secure systems and networking
Liping Liu - Assistant Professor
Liping Liu
Schwartz Family Faculty Development Assistant Professor
Ph.D , Oregon State University
Machine learning, Graphical models, Computational sustainability
Noah Mendelsohn
Professor of the Practice
Distributed Systems, Operating Systems, World Wide Web
Megan Monroe - Lecturer
Megan Monroe
Assistant Teaching Professor
Ph.D , University of Maryland-College Park
Data, Visualization, Language
Abani Patra
Stern Family Professor, Director, Data Intensive Studies Center (DISC)
Ph.D. , University of Texas-Austin
Computational sciences, data driven modeling
Norman Ramsey
Associate Professor
Ph.D. , Princeton University
Programming Languages and Systems, Functional Programming, Compiler Construction
Raja Sambasivan
Ankur and Mari Sahu Assistant Professor
Ph.D , Carnegie Mellon University
Cloud computing, evolvability, debugging distributed systems
Matthias Scheutz - Professor
Matthias Scheutz
Professor and Program Director
Ph.D. , Indiana University
Artificial Intelligence, Artificial Life, Cognitive Modeling, Complex Systems, Foundations of Cognitive Science, Human-Robot Interaction, Multi-scale Agent-based Models, Natural Language Processing
Mark Sheldon
Associate Teaching Professor
Ph.D. , Massachusetts Institute of Technology
Data Structures, Programming Languages, Software Systems, Software Design
Elaine Schaertl Short
Clare Boothe Luce Assistant Professor
Ph.D. , University of Southern California
Robotics, assistive technology, human-robot interaction
Jivko Sinapov
Jivko Sinapov
James Schmolze Assistant Professor
Ph.D. , Iowa State
Developmental robotics, computational perception, artificial intelligence, machine learning
Donna Slonim
Ph.D. , Massachusetts Institute of Technology
Algorithms for Mircroarray Data Analysis, Inference of Genetic Regulatory Networks, Interpretation of Biological Experiments in the Context of Genomic and Systems Information
Diane Souvaine
Ph.D. , Princeton University
Computational Geometry, Design and Analysis of Algorithms, Computational Complexity
Richard Townsend
Assistant Teaching Professor
Ph.D. , Columbia University
Functional languages, compilers for embedded systems, program analysis and optimization, embedded domain-specific languages
Daniel Votipka headshot
Daniel Votipka
Lin Family Assistant Professor
PhD , University of Maryland
Computer security and privacy, secure development, security professionals, human-computer interaction, mobile security

For deadline information, visit

Prerequisites for the program include a bachelor's degree and either formal instruction of practical experience in software development, including programming in some high-level language such as Java, C, C++, C# or J#. For those students possessing high-level language experience in a language other than C or C++, Electrical Engineering 200 is recommended as a preparatory course in C.

Application Requirements:

> Application Fee
> Resume/CV
> Personal Statement
> Official GRE scores (if applicable)

GRE General Test scores not required for applicants who will have received a degree from a U.S. or Canadian institution by time of enrollment. GRE scores required for all other applicants.

> Official TOEFL, IELTS, or Duolingo test scores (if applicable)
> Transcripts
> Three letters of recommendation
> Writing sample
> Portfolio (optional)

Department of Computer Science
Halligan Hall
161 College Avenue
Medford, MA 02155

Office: 617.627.2225
Department Email