Carnegie Mellon University

Joint Ph.D. in Societal Computing and Engineering and Public Policy

The Software and Societal Systems Department (S3D) in Carnegie Mellon University’s Kenneth C. Griffin School of Computer Science and the Engineering and Public Policy Department (EPP) in the College of Engineering offer a joint Ph.D. in Societal Computing (SC) and Engineering and Public Policy. This joint degree is designed for students interested in conducting research at the intersection of computer science and its societal applications who want to use their research to inform public policy. Students in the joint program will gain rigorous policy analysis skills through their EPP coursework and deep insights into both computer science concepts and the societal impacts of computing through their research and coursework in S3D. Joint students will be part of both department communities and will have access to resources in both departments and colleges.

Apply Now!

Joint SC/EPP Ph.D. candidates will be required to satisfy the requirements of both departments, but many courses can count toward both requirements. Joint students must complete a qualifying exam in EPP and satisfy the SC speaking, writing and computational thinking requirements. Both programs require students to TA two courses; joint students satisfy this by completing one teaching internship in each department.  Candidates will form one defense committee, meeting each department's requirements, and will complete one proposal and one final defense, submitting a single dissertation. Students have two advisers — one in each program — or a single adviser jointly appointed in both programs. 

From the EPP Perspective

Students can complete the joint degree by completing the EPP requirements, carefully choosing EPP electives that satisfy SC course and computational requirements, plus an additional 6 units of SC practicum beyond the EPP requirements.

From the Societal Computing Perspective

Students can complete the joint degree by completing the SC requirements, carefully choosing SC electives that satisfy EPP course requirements, plus 30 additional units of coursework and the EPP qualifying exams.

How Students Can Satisfy Both Sets of Requirements

  • The 36 units of electives for the SC program (700-level or above) can be used to satisfy the EPP elective requirements.
  • Students have to take 19-701 and 19-702. One of these classes can be used to fulfill the SC STAR policy requirement.
  • The combination of 19-703 (mandatory in EPP) and 19-704 (usually taken in EPP, albeit not strictly mandatory) can be used to fulfill the SC STAR statistics requirement. 12-704 (Probability and Estimation Methods for Engineering Systems) can also be used to fulfill the SC STAR statistics requirement for students in the joint program.
  • The Societal Computing STAR course could count as a technical elective in EPP.
  • Some of the courses (e.g., machine learning classes at the 700-level or above) satisfying the SC STAR computational requirement can be used to fulfill the EPP quantitative requirement.
  • The EPP Economics core requirement should be taken as an extra course beyond the SC requirements.
  • Students have to take the SC practicum, preferably in the first year of study. 12 units of SC practicum can count toward the 24 units of social science electives in EPP, leaving only an extra 12 units of social science electives required to fulfill the corresponding EPP requirement.
  • Students have to take the qualifying exams (Part A and part B) in EPP. This requires writing a research paper by December of the second year.
  • Students have to meet the computational/writing/speaking requirements in SC. This is independent of EPP requirements but does not contradict them. Passing the EPP Part A qualifier (at the Ph.D. level) can be used to satisfy both the writing or speaking requirement.
  • Students have to perform one teaching internship in EPP and one in S3D.

Requirements Comparison Chart

The chart below outlines areas of overlap and/or how one program's requirements can satisfy the other's.

Requirements Comparison Chart
EPP SC
19-701 (12 units) Counts as policy STAR course (12 units)
19-702 (12 units) *Not needed for SC
19-703 (6 units) + 19-704 (6 units) Counts as statistics STAR course (12 units)
19-705 (6 units) — optional but highly recommended *Not needed for SC
Quantitative methods (18 units, 6 already satisfied with 19-704) Computational STAR course (12 units); both requirements satisfied as long as SC course is selected to meet EPP's quantitative methods requirement
Economics (12 units) *Not needed for SC
Technical electives (36 units) SC STAR course (12 units) + 2 SC electives (24 units)
Social science electives (24 units) 1 SC elective (12 units) + SC practicum (18 units); this is 6 units beyond EPP requirement
2 teaching internships (one in each department) 2 teaching internships (one in each department)
Part A qualifier Speaking and writing requirements
Part B qualifier *Not needed for SC
*Not needed for EPP Computational requirement
Thesis proposal Thesis proposal
*Not needed for EPP, but represents the work done to prepare the joint thesis proposal  6-units of SC Pre-Thesis
Thesis and defense Thesis and defense

Our students in the joint program benefit from working across departments and enjoying the opportunities and resources available in both. 

“As a faculty member in both EPP and SC for over 20 years, I’ve appreciated the opportunities afforded by being in both of these departments. I’m excited to advise students in the joint program who are also keenly interested in conducting computer science research that can influence public policy.” — Lorrie Cranor, faculty adviser in SC and EPP

“I chose the joint program because it’s the best of both worlds. I get to be hands-on in policy analysis and the technology I care about: usable privacy. I have an undergrad and master's in data science, and the program is challenging me to grow outside of my comfort zone in engineering, policy and computing.” — John Driscoll, joint SC/EPP Ph.D. student

“Computing is nowadays absolutely everywhere in society, and as a result, there is a growing and unique opportunity for computer scientists to meaningfully impact public policy. This joint program helps prepare people with deep expertise in both fields, who are then perfectly positioned to meet that need.” — Nicolas Christin, faculty adviser in SC and EPP

"My past research has focused on computer security and privacy. Through this work, I have come to appreciate how security and privacy outcomes are shaped not only by technical factors, but also by people, institutions, regulations, and policies. I want to study not only the technical dimensions of security and privacy challenges but also how they interact with the broader systems in which they operate, with the goal of translating my research into real-world impact. The SC/EPP joint program is therefore a natural fit for my goals." — Kai-Hsiang Chou, joint SC/EPP PhD student

“Before joining Carnegie Mellon, I spent much of my early career conducting research in government. From my perspective, the joint EPP/SC program offers a unique opportunity to conduct rigorous computer science research surrounded by a community that is deeply thoughtful about the real-world policy relevance of its work.” — Joseph Calandrino, faculty adviser in SC and EPP

"The S3D-EPP program is the perfect match for me ...

It equips me with fundamental tools in policy analysis while deepening my technical background in computer science. Through my research, I hope to combine both fields to push for equitable policies that protect all consumers, particularly from underrepresented communities like the ones I grew up in." — Matthew Soto, joint SC/EPP Ph.D. student