All aspects of the candidate's packet are given equal weight and consideration. No single admission criterion overshadows another; rather, it is the composite of all of the application materials that determines the admission decision. The ability to perform graduate-level work, a solid undergraduate background in computer science or related disciplines, software development maturity, and industry experience are several factors considered for admission. In some cases, excellence and promise can balance a lack of formal preparation.
Application fee waivers are available for qualified participants of certain events, organizations, and programs, and to those for whom the application fee would be a financial hardship.
We are currently accepting applications for Fall 2021! Please note that if you wish to start in Spring 2022 or beyond, you will need to wait until that application cycle has opened to apply. We open admissions for Spring starts in the late Summer.
- An undergraduate degree, preferably in Computer Science or other scientific or technical discipline.
- Cumulative QPA higher than 2.5.
- Two years or more of industry experience in at least one software development role, including the ability to describe specific tasks performed in those roles.
- Knowledge — at least at the level of an undergraduate course — of discrete mathematics, algorithms and data structures, and programming languages.
- Skills in programming-in-the-small, as well as competence in using imperative block-structured or objective-oriented languages such as Java, C++, and Python.
- completed application form.
- well-developed statement of purpose (SOP), including (1) a reflection essay, in which you choose one of six key practice areas in software engineering, and describe a challenge you experienced at work, and what the preferred outcome was, or what you would like to have changed and (2) specifics about your professional goals.
- current resume.
- three (3) letters of recommendation, which provide specific examples of your maturity, leadership, and software development experience. At least one letter should be from a current or former supervisor during your time in a software engineering role.
- video essay. Tell us something about yourself in a 1-2 minute clip that is not included in the rest of your application materials.
- unofficial undergraduate and/or graduate transcripts. Official hard copies of transcripts are required upon your acceptance of an admission offer.
- optionally, Graduate Record Exam (GRE) scores. Applicants are not required to submit GRE scores. Those who do not will be evaluated on the remainder of the application, which will be sufficient for making an acceptance decision. Applicants who have taken the GRE are encouraged to submit their scores. Scores can be sent to the School of Computer Science (code 0402), Carnegie Mellon University (code 2074).
- unofficial TOEFL (or equivalent, such as the IELTS) exam scores for all non-native English speakers. TOEFL scores are only valid and accepted if the score is no older than two (2) years old. Applicants who are non-native English speakers may only be considered for a waiver of a recent TOEFL score (less than 2 years), if they attended and completed a four-year undergraduate program at a university within the United States. Those applicants may submit an expired test score up to five years old (TOEFLs taken before August 20, 2015 will not be accepted) and expired scores must meet our admissions score requirements. An interview may be requested before final admission decisions can be made.
Official scores should be sent directly to the MSE (code 78), Carnegie Mellon University (code 4256).
- online programming assessment.
A bachelor's degree from an accredited institution is the minimum requirement for admission to our professional masters programs. Three-year undergraduate degrees from outside the United States (i.e., United Kingdom, India, etc.) are generally not considered to be the equivalent of a U.S. bachelor's degree.