My research consists of addressing practical software-engineering challenges through design and implementation of type theories and programming concepts. I have contributed to session-types theory, a library for session-programming, a new agent-oriented model for the Cloud, static verification of dynamic, object-oriented models and predicates, object-oriented models.