Computer Engineering Master of Science Degree

The computer engineering master’s degree emphasizes the adoption of design methodology and the application of sophisticated engineering tools to the design and development of computer-integrated systems.


88%

Outcomes Rate of RIT Graduates from this degree

$104.3K

Average First-Year Salary of RIT Graduates from this degree


Overview for Computer Engineering MS

Why Study Computer Engineering at RIT?


  • STEM-OPT Visa Eligible: The STEM Optional Practical Training (OPT) program allows full-time, on-campus international students on an F-1 student visa to stay and work in the U.S. for up to three years after graduation.

  • Five Dynamic Research Tracks: These tracks include: computer architecture; computer vision and machine intelligence; integrated circuits and systems; networks and security; or signal processing, control, and embedded systems.

  • Flexible Core Clusters: Choose one course from each of the following core clusters: Computer Architecture and Digital Design; Computing, Communications and Algorithms.
    Hands-On Problem Solving: Your choice of a graduate project or thesis research to round out your master's degree.

The master's in computer engineering focuses on the design and development of computer and computer-integrated systems, with consideration of such engineering factors as function, performance, security, and sustainability. Computer engineers design and build these systems to meet application and system requirements with attention to the hardware-software interaction. The program emphasizes the careful adoption of design methodology and the application of sophisticated engineering tools. The intensive programming and laboratory work requirements ensure significant, high-level, specialized knowledge and experience with modern facilities and state-of-the-art design tools.

RIT’s Computer Engineering Master’s Degree

Read More
Loading...

Careers and Cooperative Education

Typical Job Titles

Computer Engineer Data Scientist Embedded Systems Software Developer
Product Developer Engineer Computer Vision Engineer Hardware Design Engineer
Machine Learning Engineer

Post-Graduation Salary and Career Info for Computer Engineering MS

Cooperative Education

What makes an RIT education exceptional? It’s the opportunity to complete relevant, hands-on engineering co-ops and internships with top companies in every single industry. At the graduate level, and paired with an advanced degree, cooperative education and internships give you the unparalleled credentials that truly set you apart. Learn more about graduate co-op and how it provides you with the career experience employers look for in their next top hires.

Cooperative education is optional but strongly encouraged for graduate students in the computer engineering master’s program.

Featured Work and Profiles

Curriculum for 2024-2025 for Computer Engineering MS

Current Students: See Curriculum Requirements

Computer Engineering (thesis option), MS degree, typical course sequence

Course Sem. Cr. Hrs.
First Year
CMPE-610 3
This course begins by reviewing signal and system analysis techniques for analyzing linear systems. It includes Fourier techniques and moves on to present fundamental computational techniques appropriate for a number of applications areas of computer engineering. Other topics include symbolic logic and optimization techniques. (Prerequisites: CMPE-480 and (MATH-251 or 1016-345) or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
CMPE-795 0
The graduate seminar prepares graduate students to effectively conduct their thesis research and expose them to current research in various areas of computer engineering. Current literature topics are reviewed through interactive presentations and discussions. (This class is restricted to students in the CMPE-MS, CMPE-BS/MS program.) Seminar (Fall, Spring).
Choose one of the following flexible core courses:
3
   CMPE-630  
This course will cover the basic theory and techniques of Digital Integrated Circuit Design in CMOS technology. Topics include CMOS transistor theory and operation, design and implementation of CMOS circuits, fabrication process, layout and physical design, delay and power models, static and dynamic logic families, testing and verification, memory and nanoscale technologies. Laboratory assignments and project facilitate in hands-on learning of circuit-level design and simulation, layout and parasitic extractions, pre and post-layout verification and validation, full-custom flow and Synthesis based flow, using industry standard CAD tools. (Prerequisites: CMPE-260 and EEEE-282 and (EEEE-380 or EEEE-381) or equivalent courses.) Lab 2, Lecture 3 (Fall, Spring).
   CMPE-660  
The objective of this course is to present the foundations of reconfigurable computing methodologies from both hardware and software perspectives. Topics covered are: architectures of modern field programmable gate arrays (FPGAs), digital system design methodologies using FPGAs, hardware-software co-design with embedded processors, hardware optimization techniques, system level integration under operating system, dynamic reconfiguration. Laboratory projects in which students will acquire a solid capability of Xilinx CAD tools and FPGA devices are required. The projects include the whole design flow: design of the system, VHDL modeling, software and hardware development, FPGA verification. (Prerequisites: CMPE-260 or equivalent course or graduate standing in the CMPE-MS program.) Studio 3 (Fall).
   CMPE-755  
This course will focus on learning and understanding the available hardware options to satisfy the needs of high performance and computational intensive applications. Special attention will be paid to single platform massively parallel devices, their programming and efficient use of the hardware resources. The course will include hands on work with the actual device, lab work, and technical reports and conference paper reading as a relevant source information. (Prerequisite: CMPE-350 or equivalent course or graduate standing in the CMPE-MS program.) Lecture 3 (Fall).
Choose one of the following flexible core courses:
3
   CMPE-655  
The course introduces basic concepts of parallel and high-performance computing and current methodologies and trends in the design and programming of multiprocessor systems. Theoretical models of parallel computing and performance metrics are studied and contrasted with practical parallel system architectures, programming environments, and benchmarking techniques. Parallel architectures are classified according to mode and degree of parallelism, memory organization, and type and typology of interconnection networks used in the design. The suitability of various architectures in meeting demands is studied in depth including the study of representative examples of current commercial machines. Students will complete programming assignments on a parallel computer illustrating practical issues. A review and analysis of a commercial parallel processor system or an active research area is required; written review presented in class. (Prerequisite: CMPE-550 or equivalent course or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
   CMPE-670  
This course gives an overview of the technologies, architectures, and protocols used to build various types of computer and communication networks. The course emphasizes various network design problems and solution approaches. Specific issues covered include framing and coding, error detection, multiple access control, addressing, routing, flow and congestion control, scheduling, and switching. (Prerequisites: CMPE-380 and MATH-251 or equivalent courses or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
   CMPE-677  
Machine intelligence teaches devices how to learn a task without explicitly programming them how to do it. Example applications include voice recognition, automatic route planning, recommender systems, medical diagnosis, robot control, and even Web searches. This course covers an overview of machine learning topics with a computer engineering influence. Includes Matlab programming. Course topics include unsupervised and supervised methods, regression vs. classification, principal component analysis vs. manifold learning, feature selection and normalization, and multiple classification methods (logistic regression, regression trees, Bayes nets, support vector machines, artificial neutral networks, sparse representations, and deep learning). (Prerequisites: CMPE-380 and CMPE-480 and MATH-251 or graduate standing in the CMPE-MS, CMPE-BS/MS program.) Lecture 3 (Fall).
 
Graduate Electives*
9
Second Year
CMPE-790 9
Thesis research investigates an independent problem to demonstrate professional maturity. A formal written thesis and an oral defense are required. The student must obtain the approval of an appropriate faculty adviser to guide the thesis before registering. (Enrollment in this course requires permission from the department offering the course.) Thesis (Fall, Spring, Summer).
 
Graduate Elective
3
Total Semester Credit Hours
30

* At least two graduate electives must come from the computer engineering department.

Computer Engineering (project option), MS degree, typical course sequence

Course Sem. Cr. Hrs.
First Year
CMPE-610 3
This course begins by reviewing signal and system analysis techniques for analyzing linear systems. It includes Fourier techniques and moves on to present fundamental computational techniques appropriate for a number of applications areas of computer engineering. Other topics include symbolic logic and optimization techniques. (Prerequisites: CMPE-480 and (MATH-251 or 1016-345) or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
CMPE-795 0
The graduate seminar prepares graduate students to effectively conduct their thesis research and expose them to current research in various areas of computer engineering. Current literature topics are reviewed through interactive presentations and discussions. (This class is restricted to students in the CMPE-MS, CMPE-BS/MS program.) Seminar (Fall, Spring).
Choose one of the following flexible core courses:
3
   CMPE-630  
This course will cover the basic theory and techniques of Digital Integrated Circuit Design in CMOS technology. Topics include CMOS transistor theory and operation, design and implementation of CMOS circuits, fabrication process, layout and physical design, delay and power models, static and dynamic logic families, testing and verification, memory and nanoscale technologies. Laboratory assignments and project facilitate in hands-on learning of circuit-level design and simulation, layout and parasitic extractions, pre and post-layout verification and validation, full-custom flow and Synthesis based flow, using industry standard CAD tools. (Prerequisites: CMPE-260 and EEEE-282 and (EEEE-380 or EEEE-381) or equivalent courses.) Lab 2, Lecture 3 (Fall, Spring).
   CMPE-660  
The objective of this course is to present the foundations of reconfigurable computing methodologies from both hardware and software perspectives. Topics covered are: architectures of modern field programmable gate arrays (FPGAs), digital system design methodologies using FPGAs, hardware-software co-design with embedded processors, hardware optimization techniques, system level integration under operating system, dynamic reconfiguration. Laboratory projects in which students will acquire a solid capability of Xilinx CAD tools and FPGA devices are required. The projects include the whole design flow: design of the system, VHDL modeling, software and hardware development, FPGA verification. (Prerequisites: CMPE-260 or equivalent course or graduate standing in the CMPE-MS program.) Studio 3 (Fall).
   CMPE-755  
This course will focus on learning and understanding the available hardware options to satisfy the needs of high performance and computational intensive applications. Special attention will be paid to single platform massively parallel devices, their programming and efficient use of the hardware resources. The course will include hands on work with the actual device, lab work, and technical reports and conference paper reading as a relevant source information. (Prerequisite: CMPE-350 or equivalent course or graduate standing in the CMPE-MS program.) Lecture 3 (Fall).
Choose one of the following flexible core courses:
3
   CMPE-655  
The course introduces basic concepts of parallel and high-performance computing and current methodologies and trends in the design and programming of multiprocessor systems. Theoretical models of parallel computing and performance metrics are studied and contrasted with practical parallel system architectures, programming environments, and benchmarking techniques. Parallel architectures are classified according to mode and degree of parallelism, memory organization, and type and typology of interconnection networks used in the design. The suitability of various architectures in meeting demands is studied in depth including the study of representative examples of current commercial machines. Students will complete programming assignments on a parallel computer illustrating practical issues. A review and analysis of a commercial parallel processor system or an active research area is required; written review presented in class. (Prerequisite: CMPE-550 or equivalent course or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
   CMPE-670  
This course gives an overview of the technologies, architectures, and protocols used to build various types of computer and communication networks. The course emphasizes various network design problems and solution approaches. Specific issues covered include framing and coding, error detection, multiple access control, addressing, routing, flow and congestion control, scheduling, and switching. (Prerequisites: CMPE-380 and MATH-251 or equivalent courses or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
   CMPE-677  
Machine intelligence teaches devices how to learn a task without explicitly programming them how to do it. Example applications include voice recognition, automatic route planning, recommender systems, medical diagnosis, robot control, and even Web searches. This course covers an overview of machine learning topics with a computer engineering influence. Includes Matlab programming. Course topics include unsupervised and supervised methods, regression vs. classification, principal component analysis vs. manifold learning, feature selection and normalization, and multiple classification methods (logistic regression, regression trees, Bayes nets, support vector machines, artificial neutral networks, sparse representations, and deep learning). (Prerequisites: CMPE-380 and CMPE-480 and MATH-251 or graduate standing in the CMPE-MS, CMPE-BS/MS program.) Lecture 3 (Fall).
 
Graduate Electives*
9
Second Year
CMPE-792 3
Graduate Project is a scholarly undertaking that addresses an immediate and practical problem with tangible outcomes. A formal report, presentation, or demonstration is required. The student must obtain the approval of an appropriate faculty adviser to guide the project before registering. (This class is restricted to students in the CMPE-MS, CMPE-BS/MS program.) Project (Fall, Spring, Summer).
 
Project Focus Electives
6
 
Graduate Elective*
3
Total Semester Credit Hours
30

* At least two graduate electives must come from the computer engineering department.

Computer Engineering (comprehensive exam option†), MS degree, typical course sequence

Course Sem. Cr. Hrs.
First Year
CMPE-610 3
This course begins by reviewing signal and system analysis techniques for analyzing linear systems. It includes Fourier techniques and moves on to present fundamental computational techniques appropriate for a number of applications areas of computer engineering. Other topics include symbolic logic and optimization techniques. (Prerequisites: CMPE-480 and (MATH-251 or 1016-345) or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
CMPE-795 0
The graduate seminar prepares graduate students to effectively conduct their thesis research and expose them to current research in various areas of computer engineering. Current literature topics are reviewed through interactive presentations and discussions. (This class is restricted to students in the CMPE-MS, CMPE-BS/MS program.) Seminar (Fall, Spring).
   
Primary Flexible Core MS
9
 
Secondary Flexible Core MS
3
 
Graduate Electives*
3
Second Year
 
Graduate Electives*
12
Total Semester Credit Hours
30

* At least three graduate electives must come from the computer engineering department.

† Completing this option requires passing a comprehensive examination.

Students identify a primary flexible core cluster and a secondary flexible core clusters. Students take all courses from the primary cluster and select one course from the secondary cluster.

Flexible Core Cluster I

Computer Architecture and Digital Design
CMPE-630
This course will cover the basic theory and techniques of Digital Integrated Circuit Design in CMOS technology. Topics include CMOS transistor theory and operation, design and implementation of CMOS circuits, fabrication process, layout and physical design, delay and power models, static and dynamic logic families, testing and verification, memory and nanoscale technologies. Laboratory assignments and project facilitate in hands-on learning of circuit-level design and simulation, layout and parasitic extractions, pre and post-layout verification and validation, full-custom flow and Synthesis based flow, using industry standard CAD tools. (Prerequisites: CMPE-260 and EEEE-282 and (EEEE-380 or EEEE-381) or equivalent courses.) Lab 2, Lecture 3 (Fall, Spring).
CMPE-660
The objective of this course is to present the foundations of reconfigurable computing methodologies from both hardware and software perspectives. Topics covered are: architectures of modern field programmable gate arrays (FPGAs), digital system design methodologies using FPGAs, hardware-software co-design with embedded processors, hardware optimization techniques, system level integration under operating system, dynamic reconfiguration. Laboratory projects in which students will acquire a solid capability of Xilinx CAD tools and FPGA devices are required. The projects include the whole design flow: design of the system, VHDL modeling, software and hardware development, FPGA verification. (Prerequisites: CMPE-260 or equivalent course or graduate standing in the CMPE-MS program.) Studio 3 (Fall).
CMPE-755
This course will focus on learning and understanding the available hardware options to satisfy the needs of high performance and computational intensive applications. Special attention will be paid to single platform massively parallel devices, their programming and efficient use of the hardware resources. The course will include hands on work with the actual device, lab work, and technical reports and conference paper reading as a relevant source information. (Prerequisite: CMPE-350 or equivalent course or graduate standing in the CMPE-MS program.) Lecture 3 (Fall).

Flexible Core Cluster II

Computing, Communications, & Algorithms
CMPE-655
The course introduces basic concepts of parallel and high-performance computing and current methodologies and trends in the design and programming of multiprocessor systems. Theoretical models of parallel computing and performance metrics are studied and contrasted with practical parallel system architectures, programming environments, and benchmarking techniques. Parallel architectures are classified according to mode and degree of parallelism, memory organization, and type and typology of interconnection networks used in the design. The suitability of various architectures in meeting demands is studied in depth including the study of representative examples of current commercial machines. Students will complete programming assignments on a parallel computer illustrating practical issues. A review and analysis of a commercial parallel processor system or an active research area is required; written review presented in class. (Prerequisite: CMPE-550 or equivalent course or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
CMPE-670
This course gives an overview of the technologies, architectures, and protocols used to build various types of computer and communication networks. The course emphasizes various network design problems and solution approaches. Specific issues covered include framing and coding, error detection, multiple access control, addressing, routing, flow and congestion control, scheduling, and switching. (Prerequisites: CMPE-380 and MATH-251 or equivalent courses or graduate standing in the CMPE-MS program.) Lecture 3 (Fall, Spring).
CMPE-677
Machine intelligence teaches devices how to learn a task without explicitly programming them how to do it. Example applications include voice recognition, automatic route planning, recommender systems, medical diagnosis, robot control, and even Web searches. This course covers an overview of machine learning topics with a computer engineering influence. Includes Matlab programming. Course topics include unsupervised and supervised methods, regression vs. classification, principal component analysis vs. manifold learning, feature selection and normalization, and multiple classification methods (logistic regression, regression trees, Bayes nets, support vector machines, artificial neutral networks, sparse representations, and deep learning). (Prerequisites: CMPE-380 and CMPE-480 and MATH-251 or graduate standing in the CMPE-MS, CMPE-BS/MS program.) Lecture 3 (Fall).

Admissions and Financial Aid

This program is available on-campus only.

Offered Admit Term(s) Application Deadline STEM Designated
Full‑time Fall or Spring Rolling Yes
Part‑time Fall or Spring Rolling No

Full-time study is 9+ semester credit hours. Part-time study is 1‑8 semester credit hours. International students requiring a visa to study at the RIT Rochester campus must study full‑time.

Application Details

To be considered for admission to the Computer Engineering MS program, candidates must fulfill the following requirements:

English Language Test Scores

International applicants whose native language is not English must submit one of the following official English language test scores. Some international applicants may be considered for an English test requirement waiver.

TOEFL IELTS PTE Academic
79 6.5 56

International students below the minimum requirement may be considered for conditional admission. Each program requires balanced sub-scores when determining an applicant’s need for additional English language courses.

How to Apply Start or Manage Your Application

Cost and Financial Aid

An RIT graduate degree is an investment with lifelong returns. Graduate tuition varies by degree, the number of credits taken per semester, and delivery method. View the general cost of attendance or estimate the cost of your graduate degree.

A combination of sources can help fund your graduate degree. Learn how to fund your degree

Research

The faculty and students in the Kate Gleason College of Engineering are engaging in numerous areas of research, which takes place across all of our engineering disciplines and often involves other colleges at RIT, local health care institutions, and major industry partners. Explore the college's key research initiatives to learn more about our research in:

AWARE-AI NSF Research Traineeship Program

The AWARE-AI National Science Foundation Research Traineeship Program provides a unique opportunity to RIT's graduate students, who are poised to become future research leaders in developing responsible, human-aware AI technologies.

Students in the computer engineering master’s degree are eligible to apply for traineeships in the AWARE-AI NSF Research Traineeship (NRT) Program. Trainees experience convergent AI research guided by accomplished RIT faculty who work in cross-disciplinary research tracks. In addition to high-touch mentoring, students also engage in curated, career-advancement activities. Learn more about the benefits of the trainee program, including training opportunities, application requirements, and deadlines.

Related News

Contact

Admissions Contact
  • Lindsay Lewis
  • Senior Assistant Director
  • Office of Graduate and Part-Time Enrollment Services
  • Enrollment Management
  • 585‑475‑5532
  • lslges@rit.edu
Program Contact