O Mestrado em Engenharia Informática (MEI) tem por objetivo oferecer uma formação avançada de Engenharia Informática, permitindo consolidar e aprofundar as competências obtidas no 1ºciclo, sendo orientado para a inovação, para a conceção de serviços e produtos, e para investigação científica.
O MEI está estruturado para alcançar os seguintes objetivos: fornecer uma formação principal especializada numa área da Informática, complementada por uma formação numa segunda área; garantir um nível de abrangência de conhecimentos na área da Informática que exceda as áreas de especialização.
Para alcançar o primeiro objetivo, o curso segue um modelo que combina especializações e concentrações secundárias. 
Um especialização (36 ECTS, 30% do curso) fornece um conhecimento profundo numa área alargada da Informática. Para obter uma especialização um estudante deve realizar duas UCs nucleares, obrigatórias, e 4 UCs de especialização (opcionais de entre um conjunto de 7 UCs). Existirão as seguintes seis especializações:
Uma concentração secundária (18 ECTS, 15% do curso) fornece conhecimentos adicionais numa segunda área da Informática. Para obter uma concentração secundária um estudante deve realizar uma UCs nuclear, obrigatória, e 2 UCs de especialização (opcionais de entre um conjunto de 3 UCs).
Uma UC usada para obter uma especialização não pode ser usada para obter uma concentração secundária.
Um estudante pode obter, no máximo, uma especialização e uma concentração secundária. No entanto, um estudante pode decidir não ter uma concentração secundária - por exemplo, para realizar UCs em múltiplas áreas ou mais UCs da área de especializão do que necessárias para obter a especialização. Pode ainda decidir não ter uma especialização, ficando sem especialização nesse caso.
Para garantir uma abrangência de conhecimentos que exceda a sua especialização, para complementar o mestrado, um estudente deve realizar 4 UCs nucleares de 3 especializações diferentes.
O curso culmina com uma Dissertação ou Projeto em Engenharia Informática (42 ECTS, 35% do curso), organizados numa fase de preparação (12 ECTS) e numa fase de elaboração (30 ECTS).
Os restantes 18 ECTS (15% do curso) são obtidos em unidades curriculares transversais, nomeadamente de Matemática (6 ECTS), Ciências Humanas e Sociais (3 ECTS) e numa unidade opcional da oferta de várias dezenas de outras áreas (6 ECTS).
Organização
1º ano, 1º semestre
| Unidade Curricular | 
Área científica e ECTS | 
| Especialização (UC nuclear) | 
INF - 6 ECTS | 
| Especialização (UC nuclear) | 
INF - 6 ECTS | 
| Concentração secundária (UC nuclear) | 
INF - 6 ECTS | 
| Introdução à Investigação Operacional | 
MAT - 6 ECTS | 
| Aspetos Socioprofissionais da Informática | 
CHS - 3 ECTS | 
1º ano, 2º trimestre
| Unidade Curricular | 
Área científica e ECTS | 
| Empreendedorismo | 
CC - 3 ECTS | 
1º ano, 2º semestre
| Unidade Curricular | 
Área científica e ECTS | 
| Especialização (UC opcional) | 
INF - 6 ECTS | 
| Especialização (UC opcional) | 
INF - 6 ECTS | 
| Especialização (UC opcional) | 
INF - 6 ECTS | 
| Especialização / Concentração secundária (UC opcional) | 
INF - 6 ECTS | 
| Concentração secundária (UC opcional) | 
INF - 6 ECTS | 
2º ano, 1º semestre
| Unidade Curricular | 
Área científica e ECTS | 
| Especialização / Concentação secundária (UC opcional) | 
INF - 6 ECTS | 
| UC nuclear | 
INF - 6 ECTS | 
| Opção livre (qualquer área) | 
QAC - 6 ECTS | 
| Preparação de Dissertação / Projeto em Engenharia Informática | 
INF - 12 ECTS | 
2º ano, 2º semestre
| Unidade Curricular | 
Área científica e ECTS | 
| Elaboração de Dissertação / Projeto em Engenharia Informática | 
INF - 30 ECTS | 
Especializações 
Esta secção apresenta as UCs definidas para cada especialização.
 
Engenharia de Sistemas de Informação / Information Systems Engineering
- Sistemas de Bases de Dados / Database Systems (nuclear, obrigatória)
 
- Modelação de Sistemas e Processos / Process and Systems Modelling  (nuclear, obrigatória)
 
- Engenharia de Requisitos / Requirements Engineering
 
- Qualidade do Software / Software Quality
 
- Engenharia Orientada por Modelos / Model Driven Engineering
 
- Modelação de Dados / Data Modeling
 
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
 
- Computação em Cloud / Cloud Computing
 
- Tópicos avançados em Engenharia de Sistemas de Informação / Advanced Topics in Information Systems Engineering
 
 
Inteligência Artificial / Artificial Intelligence
- Aprendizagem Automática / Machine Learning (nuclear, obrigatória)
 
- Representação de Conhecimento e Raciocínio  / Knowledge Representation and Reasoning  (nuclear, obrigatória)
 
- Tomada de Decisão Autónoma / Autonomous Decision Making
 
- Resolução Declarativa de Problemas / Declarative Problem Solving
 
- Aprendizagem Não Supervisionada / Unsupervised Learning
 
- Aprendizagem Profunda / Deep Learning
 
- Bioinformática / Bioinformatics
 
- Pesquisa e Processamento de Linguagem Natural / Natural Language Processing and Search
 
- Tópicos Avançados em Inteligência Artificial / Advanced Topics in Artificial Intelligence
 
 
Linguagens de Programação e Sistemas de Software / Programming Languages and Software Systems
- Verificação de Software / Software Verification (nuclear, obrigatória)
 
- Desenho de Linguagens e Compiladores / Language and Compiler Design (nuclear, obrigatória)
 
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
 
- Programação Concorrente: Linguagens e Técnicas / Concurrent Programming: Languages and Techniques
 
- Segurança de Software / Software Security
 
- Algoritmos Avançados / Advanced Algorithms
 
- Engenharia Orientada por Modelos / Model Driven Engineering
 
- Algoritmos Distribuídos / Distributed Algorithms
 
- Tópicos Avançados em Linguagens de Programação e Sistemas de Software / Advanced Topics in Programming Languages and Software Systems
 
 
Segurança e Privacidade / Security and Privacy
- Segurança de Sistemas de Computadores / Computer Systems Security (nuclear, obrigatória)
 
- Privacidade de Sistemas / Systems Privacy (nuclear, obrigatória)
 
- Criptografia Aplicada Avançada / Applied Advanced Cryptography
 
- Algoritmos Distribuídos / Distributed Algorithms
 
- Sistemas Distribuídos Confiáveis / Reliable Distributed Systems
 
- Segurança de Software / Software Security
 
- Qualidade do Software / Software Quality
 
- Aprendizagem Não Supervisionada / Unsupervised Learning
 
- Tópicos Avançados em Segurança e Privacidade / Advanced Topics in Security and Privacy
 
 
Sistemas Distribuídos e Paralelos / Distributed and Parallel Systems
- Computação Paralela / Parallel Computing (nuclear, obrigatória)
 
- Computação em Cloud / Cloud Computing (nuclear, obrigatória)
 
- Algoritmos Distribuídos / Distributed Algorithms
 
- Sistemas IoT e Móveis / IoT and Mobile Systems
 
- Sistemas Concorrentes / Concurrent Systems
 
- Criptografia Aplicada Avançada / Applied Advanced Cryptography
 
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
 
- Sistemas de Bases de Dados / Database Systems
 
- Tópicos Avançados em Sistemas Distribuídos e Paralelos / Advanced Topics in Distributed and Parallel Systems
 
 
Sistemas Interativos Multimodais / Interactive Multimodal Systems
- Interação Pessoa Máquina / Human Computer Interaction (nuclear, obrigatória)
 
- Visão por Computador / Computer Vision (nuclear, obrigatória)
 
- Computação Multimédia / Multimedia Computing
 
- Jogos e Ambientes Imersivos / Games and Immersive Environments
 
- Conceção e Desenvolvimento de Sistemas Geoespaciais / Geospatial Systems Design and Development
 
- Pesquisa e Processamento de Linguagem Natural / Natural Language Processing and Search
 
- Sistemas de Processamento de Visão e Linguagem / Vision and Language Processing Systems
 
- Aprendizagem Automática / Machine Learning
 
- Tópicos Avançados em Sistemas Interativos Multimodais / Advanced Topics in Interactive Multimodal Systems
 
 
Concentrações Secundárias
Esta secção apresenta as UCs definidas para cada concentração secundária (minor).
 
Desenho de Algoritmos e de Linguagens de Programação / Algorithms and Programming Language Design
- Desenho de Linguagens e Compiladores / Language and Compiler Design (nuclear, obrigatória)
 
- Programação Concorrente: Linguagens e Técnicas / Concurrent Programming:  Languages and Techniques
 
- Algoritmos Avançados / Advanced Algorithms
 
- Algoritmos Distribuídos / Distributed Algorithms
 
 
Desenvolvimento de Software Confiável / Trustworthy Software Development
- Verificação de Software / Software Verification (nuclear, obrigatória)
 
- Segurança de Software / Software Security
 
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
 
- Qualidade do Software / Software Quality
 
 
Engenharia de Software / Software Engineering
- Modelação de Sistemas e Processos / Process and Systems Modelling (nuclear, obrigatória)
 
- Engenharia de Requisitos / Requirements Engineering
 
- Qualidade do Software / Software Quality
 
- Engenharia Orientada por Modelos / Model Driven Engineering
 
 
Interação Multimédia Imersiva / Immersive Multimedia Interaction
- Interação Pessoa Máquina / Human Computer Interaction (nuclear, obrigatória)
 
- Computação Multimédia / Multimedia Computing
 
- Jogos e Ambientes Imersivos / Games and Immersive Environments
 
- Conceção e Desenvolvimento de Sistemas Geoespaciais / Geospatial Systems Design and Development
 
 
Segurança de Sistemas e Software /  Systems and Software Security
- Segurança de Sistemas de Computadores / Computer Systems Security (nuclear, obrigatória)
 
- Segurança de Software / Software Security
 
- Sistemas Concorrentes / Concurrent Systems
 
- Criptografia Aplicada Avançada / Applied Advanced Cryptography
 
 
Sistemas Concorrentes e Paralelos / Concurrent and Parallel Systems
- Computação Paralela / Parallel Computing (nuclear, obrigatória)
 
- Programação Concorrente: Linguagens e Técnicas / Concurrent Programming:  Languages and Techniques
 
- Algoritmos Distribuídos / Distributed Algorithms
 
- Sistemas Concorrentes / Concurrent Systems
 
 
Sistemas baseados em Conhecimento / Knowledge-Based Systems
- Representação de Conhecimento e Raciocínio / Knowledge Representation and Reasoning (nuclear, obrigatória)
 
- Tomada de Decisão Autónoma / Autonomous Decision Making
 
- Resolução Declarativa de Problemas / Declarative Problem Solving
 
- Modelação de Dados / Data Modeling
 
 
Sistemas de Aprendizagem Automática / Automated Learning Systems
- Aprendizagem Automática / Machine Learning (nuclear, obrigatória)
 
- Aprendizagem Não Supervisionada / Unsupervised Learning
 
- Aprendizagem Profunda / Deep Learning
 
- Bioinformática / Bioinformatics
 
 
Sistemas de Informação Web / Web Information Systems
- Sistemas de Bases de Dados / Database Systems (nuclear, obrigatória)
 
- Modelação de Dados / Data Modeling
 
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
 
- Computação em Cloud / Cloud Computing
 
 
Sistemas de Visão e Linguagem / Vision and Language Systems
- Visão por Computador / Computer Vision (nuclear, obrigatória)
 
- Pesquisa e Processamento de Linguagem Natural / Natural Language Processing and Search
 
- Sistemas de Processamento de Visão e Linguagem / Vision and Language Processing Systems
 
- Computação em Cloud / Cloud Computing
 
 
Sistemas Distribuídos / Distributed Systems
- Computação em Cloud / Cloud Computing (nuclear, obrigatória)
 
- Algoritmos Distribuídos / Distributed Algorithms
 
- Sistemas IoT e Móveis / IoT and Mobile Systems
 
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
 
 
Sistemas Seguros e Confiáveis / Secure and Dependable Systems
- Privacidade de Sistemas / Systems Privacy (nuclear, obrigatória)
 
- Algoritmos Distribuídos / Distributed Algorithms
 
- Criptografia Aplicada Avançada / Applied Advanced Cryptography
 
- Sistemas Distribuídos Confiáveis / Reliable Distributed Systems