Short Bio & Research

I am an Assistant Professor at Técnico (University of Lisbon), and a Senior Researcher INESC-ID Lisbon. Before, I was a Senior Researcher at Oracle Labs Zurich (working on GraalVM), and before that, I was a Post-doc Researcher in the Systems Group, ETH Zurich, which I joined after receiving my PhD in CS from Técnico (University of Lisbon).

Most of my research focuses in the intersection between Systems and Programming Languages. I am especially interested in optimizing language runtimes for cloud environments such as Microservices and Serverless. Besides language runtimes, I work on Operating Systems, and Parallel and Distributed Systems.


Selected Publications


  • Miguel Lourenço, Language Runtime API Isolation (MSc, University of Lisbon)
  • Rodrigo Cidra, Secure Java Multi-tenancy (MSc, University of Lisbon)
  • Serhii Ivanenko, Serverless Persistent Resources (MSc, University of Lisbon)
  • Gonçalo Duarte, Java File System Virtualization (MSc, University of Lisbon)
  • Jorge Godinho, Java Network Virtualization (MSc, University of Lisbon)
  • Wallace Garbim, Optimizing AOT Compilation Pipeline for Cloud Applications (MSc, University of Lisbon)
  • Diogo Santos, Multi-step Function-as-a-Service Application Optimizer (MSc, University of Lisbon)
  • António Elias, Continual Machine Learning on Serverless (MSc, University of Lisbon)
  • Roman Babynyuk, Thin Serverless Functions with GraalVM Native Image (MSc, University of Lisbon)
  • David Nunes, Scheduling Serverless Functions (MSc, University of Lisbon, co-advised with Luís Veiga)
  • Sanaz Tavakoli, Garbage Collection for Modern JVMs (PhD, University of Ostlo, co-advised with Paulo Ferreira)




Awards & Mentions

Research meets Production

  • Graalvisor (runtime virtualization layer) used in a large-scale Pi cluster at Cloud World 2022
  • Object Inlining optimization in production at GraalVM Native Image
  • Mobility simulator Hermes used in production at SBB and merged into MATSim
  • External memory tracking system developed during intership used in V8 JS Engine
  • Elastic memory contribution deployed in OpenJDK HotSpot JVM (JEP 346)
  • Socket-based live process migration integrated into CRIU


This research group is funded in part by generous donations from Oracle Labs.