- Associate Professor of Computer Science at the University of Southern Denmark, Department of Mathematics and Computer Science, and Head of the research group on Concurrency and Logic.
- Co-creator and Maintainer of the Jolie programming language, a technology for the efficient programming of microservices.
- Co-founder and Director at italianaSoftware s.r.l., a company for the development of microservice systems.
- Creator and Maintainer of the Microservices Community, an international community that promotes knowledge sharing on microservices.
- External Collaborator of the FOCUS Research Team, the first joint research group between INRIA and the University of Bologna.
What I doI research and develop programming languages and new methods for concurrent/distributed programming and software integration.
Essentially, I develop models and techniques for building software that runs on networks (for example, the Internet), with the following objectives:
- Critical software does not go into unexpected errors. For example, the software running on a plane should not crash (and make the plane crash).
- Network software is sufficiently efficient. For example, messages about money exchanges should be delivered in due time.
- The complexity of network software, even over thousands or millions of involved parties, is kept maintainable and affordable. For example, services for broad public audiences should not be overly expensive due to the big user base. Also, it must be possible to reuse systems developed previously in new systems when tackling new ideas and requirements.
- New software should be able to seamlessly integrate with existing systems, even when using multiple different data formats or communication protocols.
- Language primitives for communications over networks (virtual or physical), in particular based on Choreographies and Business Processes.
- Runtime execution techniques for sessions and multi -process/-threaded applications.
- Static analyses for deadlock-freedom and formal protocol compliance.