Computer Engineering

Students who choose this specialisation will learn to design computer systems and develop applications for specific architectures, making the best possible use of the resources at their disposal and obtaining high levels of performance. They will also learn to design and implement computer-controlled robotics systems that interact with their environment.

Have a look at the briefing of this specialisation:

Career options

Graduates with specialised training in Computer Engineering have the knowledge and skills to apply basic concepts and techniques for the design of individual processors and multiprocessor systems and to obtain the maximum performance from these systems for running standard applications. They are also able to implement a range of systems, including embedded systems, portable systems, interfaces, robotics systems and any other type of system that interacts with its environment and is controlled by real-time computer architecture. The ability to implement computer technology in an effective and efficient manner makes graduates suitable for a wide range of professional areas, including processor design, application programming, the design and implementation of computer systems and facilities for specific services, and the design of embedded systems, printers and multimedia devices.

Specialization coordinator

Person Department Email
Costa Prats, Juan José AC

Specialization teachers

Person Department Email
Aranda López, Joan ESAII
Armejach Sanosa, Adrià AC
Ayguadé Parra, Eduard AC
Banchelli Gracia, Fabio Francisco ESAII
Becerra Fontal, Yolanda AC
Camacho Santiago, Antonio ESAII
Canal Corretger, Ramon AC
Careglio, Davide AC
Costa Prats, Juan José AC
Cruz Diaz, Josep-Llorenç AC
Fornes de Juan, Jordi AC
Garcia Solà, Daniel ESAII
Grau Saldes, Antoni ESAII
Jimenez Gonzalez, Daniel AC
Llaberia Griñó, Jose M. AC
López Álvarez, David AC
Martin Rull, Enric X. ESAII
Martínez Velasco, Antonio Benito ESAII
Martorell Bofill, Xavier AC
Morata Núñez, Carlos ESAII
Moretó Planas, Miquel AC
Pajuelo Gonzalez, Alex AC
Ruiz Ramírez, Marc AC
Vinagre Ruiz, Manuel ESAII

Technical Competences of each Specialization


  • CEC1
    To design and build digital systems, including computers, systems based on microprocessors and communications systems.
    • CEC1.1
      To design a system based on microprocessor/microcontroller.
    • CEC1.2
      To design/configure an integrated circuit using the adequate software tools.
  • CEC2
    To analyse and evaluate computer architectures including parallel and distributed platforms, and develop and optimize software for these platforms.
    • CEC2.1
      To analyse, evaluate, select and configure hardware platforms for the development and execution of computer applications and services.
    • CEC2.2
      To program taking into account the hardware architecture, using assembly language as well as high-level programming languages.
    • CEC2.3
      To develop and analyse software for systems based on microprocessors and its interfaces with users and other devices.
    • CEC2.4
      To design and implement system and communications software.
    • CEC2.5
      To design and implement operating systems.
  • CEC3
    To develop and analyse hardware and software for embedded and/or very low consumption systems.
    • CEC3.1
      To analyse, evaluate and select the most adequate hardware and software platform to support embedded and real-time applications.
    • CEC3.2
      To develop specific processors and embedded systems; to develop and optimize the software of these systems. 
  • CEC4
    To design, deploy, administrate and manage computer networks, and manage the guarantee and security of computer systems.
    • CEC4.1
      To design, deploy, administrate and manage computer networks.
    • CEC4.2
      To demonstrate comprehension, to apply and manage the guarantee and security of computer systems.


Specialization compulsory subjects

Specialization complementary subjects

Requisites between subjects

If a subject A is prerequisite of another subject B, it means that to be able to register B is necessary to have passed the subject A.
If a subject A is corequisite of another subject B, it means that to be able to register B is necessary to have passed or to be register in the subject A.
If a subject A is precorequisite of another subject B, it means that to be able to register B it is necessary to be registered (a quadrimester before at least) subject A. But, in case of havig a list of precorequits (A precorequsite of B, and B precorequisite of C), it won't be posible to register subject C until subject A has not been passed.
If two subjects A and B are orequisite of subject C, it means that to register subject C it is necessary to have passed either subject A or subject B.
If a subject A is incompatible with another subject B, it means that you are not able to register A if you have passed the subject B.