The master’s degree prepares students to pursue advanced work in computer engineering technical interest areas including VLSI systems, hardware design, embedded systems, computer systems, software systems, computer networks, and computer security.


Students applying for the master’s program in Computer Engineering usually have an undergraduate degree in Computer Engineering, Computer Science, or Electrical Engineering, or related disciplines. A strong candidate for admission typically meets the following requirements: (a) has a B.Sc. degree from an ABET accredited program in Computer Engineering, Computer Science, or Electrical engineering; and (b) has a GPA above 3.0. International students must demonstrate the linguistic proficiency as defined by the graduate school. (See international student requirements)

Students coming from different backgrounds may be required to demonstrate knowledge that is presented in the following UAH Computer Engineering undergraduate foundation courses before they pursue graduate courses.

CPE undergraduate foundation courses:

  • CPE 211: Introduction to Computer Programming in Engineering
  • CPE 212: Fundamentals of Software Engineering
  • CS 317: Introduction to Design and Analysis of Algorithms
  • EE 202: Introduction to Digital Logic Design
  • EE 315: Introduction to Electronic Analysis and Design
  • CPE 323: Intro to Embedded Computer Systems
  • CPE 431/CPE 531: Introduction to Computer Architecture

An entering student can demonstrate knowledge of the material in one of the following ways: completing the courses at UAH, completing similar courses at another institution, or evidence based on employment experience. A student may be required to successfully pass a placement exam to demonstrate his/her knowledge of the material.


The CPE program offers two plans leading to the masters’ degree, both requiring 30 credit hours as follows:

  • Plan I (Thesis): requires 24 hours coursework and 6 credit hours of CPE 699 to create an acceptable thesis that is successfully defended in a public forum;
  • Plan II (Non-thesis): requires 30 hours of coursework.

Both the Plan I and Plan II options require 24 hours of graduate-level coursework in Computer Engineering and related areas. This coursework should include the following three core courses:

  • CPE 512: Introduction to Parallel Programming;
  • CPE 526: VLSI Design Using Hardware Description Languages, Modeling, and Synthesis or CPE 527 VLSI Design;
  • CPE 631: Advanced Computer Systems Architecture.

Students who have already completed these or similar courses elsewhere may request course substitutions. All substitutions must be approved by the student’s academic advisor.

The coursework requirement for the Master’s Degree in Computer Engineering includes I) 12 hour Major, II) a 6 hour Math Minor, and III) a 6 hour Engineering Area of Specialization Minor, as discussed below:

  1. Major

    Students must complete 12 hours of graduate-level coursework in a selected area of specialization. Common areas of specialization are shown below:

    • Embedded Systems
    • Parallel/Distributed and Cloud-enabled Computing
    • System Software
    • Computer Organization and Architecture
    • Software Safety and Cybersecurity
    • VLSI Systems and Digital Hardware
    • Computer Communications and Networks
  2. Math Minor

    Students must complete an approved 2-course sequence that provides a mathematical or theoretical foundation that is useful for advanced studies in Computer Engineering. The courses must be approved by the student’s academic advisor.

    Commonly Approved Math Minor Course Sequences

    • MA 540 Combinatorial Enumeration and MA 640 Graph Theory
    • MA 585 Probability and CPE 619 Modeling and Analysis of Computer and Communication Systems
    • MA 640 Graph Theory and MA 740 Combinatorial Algorithms
    • EE 629 and EE 630 Analytical and Computational Methods in Electrical Engineering I and II
    • MA 508 Applied Linear Algebra and CPE 645 Computer Network Security
    • CS 617 Design and Analysis of Algorithms and CS 637 Deep Learning
    • CS 617 Design and Analysis of Algorithms and CS 640 Machine Learning

    Note: other sequences can also be approved by the student’s academic advisor. However, only courses from the following list can be used for satisfying math minor:

    • MA 508 Applied Linear Algebra
    • MA 540 Combinatorial Enumeration
    • MA 542 Algebra
    • MA 544 Linear Algebra
    • MA 585 Probability
    • MA 640 Graph Theory
    • CPE 619 Modeling and Analysis of Computer and Communication Systems
    • CPE 645 Computer Network Security
    • CPE 612 Parallel Algorithms
    • EE 629 Anal & Comp Methods in Electrical Eng.
    • EE 630 Anal & Comp Methods in Electrical Eng.
    • EE 603 Random Signals in Communication
    • CS 530 Survey Artificial Intelligence
    • CS 581 Modeling & Simulation I
    • CS 582 Modeling & Simulation II
    • CS 588 Intro To Big Data Computing
    • CS 603 Formal Languages and Automata Theory
    • CS 617 Design and Analysis of Algorithms
    • CS 637 Deep Learning
    • CS 640 Machine Learning
    • CS 641 Data Mining
    • CS 642 Comp Proc/Digital Images
    • CS 643 Data Compression
    • CS 646 Computer Geometry Modeling
    • CS 655 Formal Methods In Software Engineering
    • CS 696 Special Topics: Machine Learning
    • ISE 690 Statistical Methods for Engr
    • ISE 790 Advanced Statistical Applications
  3. Engineering Area of Specialization Minor

    Students must select an approved 2-course (6 hour) sequence in computer engineering, electrical engineering, optical engineering, or computer science. At least one course should be at the 600 level. The selected courses must be approved by the student’s academic advisor.


  • With prior approval, up to 12 semester hours of 500-level courses may be taken in fulfillment of the MSE requirements.
  • CPE core courses are included in the 24 hour coursework requirement.
  • Unless taken as part of the JUMP program any course taken during an undergraduate program and applied to the undergraduate degree cannot be used for a graduate degree program.

How to apply?

To be considered for admission to the Computer Engineering, MSE program, applicants must complete the following steps:

  • Create your Charger Status account, and submit the UAH graduate application for admission.
  • Send your official college transcript to UAH Graduate Admissions through an electronic delivery service. UAH Graduate Admissions accepts official transcripts from Parchment and Student Clearinghouse.
  • Request for your official GRE test scores to be sent to UAH Graduate Admissions by the testing agency.
    Submission of GRE scores is optional, but is encouraged for applicants seeking an assistantship position.
  • Upload the following items directly to your application through Charger Status:
    • Personal Statement
    • Resume/CV
    • 2 Letters of Recommendation

For more information about specific admission requirements for international students, see international student application instructions.

Have questions? Contact your coordinator!

Aleksandar Milenkovic

Aleksandar Milenkovic

ECE Graduate Program Coordinator

Engineering Building Room 217L