I am currently an Assistant Professor at FCUP, Researcher at CISTER, and an external collaborator of INESC TEC, Portugal, working on formal models for component-based systems. Until January 2019 I worked in HASLab, INESC TEC & University of Minho, mainly with Luís Barbosa, and was affiliated with Distrinet, KU Leuven, until January 2016, working mainly with Danny Hughes and Dave Clarke. My work has been mainly on coordination of distributed components, often associated to the Reo coordination language, and on formal approaches to software product line engineering. More recently I have been working on component models for embedded devices in the context of the LooCI middleware and micro PnP (now part of VersaSense), and in the context of the VirtuosoNext RTOS.

Before I graduated in University of Minho, Portugal, for a 5 year degree in Mathematics and Computer Science. I studied abroad for 6 months as an Erasmus student in Bristol University, UK. I defended my PhD in Leiden University in May 2011, for my work carried in CWI, Amsterdam, in the group for Foundations of Software Engineering.

  • FCUP logo
  • CISTER logo
  • ARCA logo


  • Formal methods
  • Concurrency
  • Coordination
  • Software engineering
  • Software product lines
  • Real-time Embedded systems
  • Programming in Scala


  • PhD in Concurrent & Distributed Computing, 2011

    Leiden University, the Netherlands

  • BSc+MSc in Mathematics & Computer Science, 2005

    University of Minho, Portugal