About me

I am a Research Software Enginner at Microsoft Research Cambridge. I joined MSR as part of their first AI Residency program in September 2018. After the Residency I joined the All Data AI team as a Research Software Engineer. During this time, I have been able to work on several projects, mostly involving Computer Vision.

You can check my CV for more information.


MSc in Information Systems and Computer Engineering

September 2016 - February 2019

BSc in Information Systems and Computer Engineering

September 2013 - July 2016
  • Relevant coursework and grades: Artificial Intelligence (18/20), Compilers (18/20), Distributed Systems (17/20), Probabilities and Statistics (16/20)


  • Tested several optimization algorithms in a Structural Optimization case study created using Algorithmic Design
  • Showed that Genetic Algorithms perform poorly and discussed possible reasons why
  • Discussed advantages and disadvantages of different algorithms for Structural Optimization
  • Discussed several challenges related with incorporating Algorithmic Design in traditional Architecture workflows
  • Tested basic sampling for optimizing a Structural Optimization
  • Tested generating different layouts for room furniture, following constraints and heuristics


Research Software Engineer II

September 2019 - Present
  • Working in the All Data AI group
  • Working on several computer vision projects, mostly Deep Learning with Convolutional Neural Networks and Generative Adversarial Networks
  • Worked on Video Classification using Convolutional Neural Networks

AI Resident

September 2018 - September 2019
  • Worked with the MSR Cambridge Healthcare and InnerEye teams on Medical Image Segmentation using Convolutional Neural Networks
  • Implemented 3D Convolutional Neural Network models using PyTorch
  • Worked with the Microsoft Bellevue SmartReply team on Smart Replies for Outlook and Teams with multimedia content

Teaching Assistant

September 2017 - February 2018/February 2018 - June 2018
  • Teaching Assistant for the Operating Systems course of the Information Systems and Computer Engineering BSc
  • Helped create and evaluate several assignments related with Multi-Threading and Processing in C
  • Teaching Assistant for the Distributed Systems course of the Information Systems and Computer Engineering BSc
  • Helped create and evaluate several assignments related with Java WebServices


July 2016 - September 2017
  • Internship in the Spoken Language Systems Lab (L²F), advised by Professor David Martins de Matos
  • Research related with Machine Learning and Natural Language Processing
  • Implemented Character and Word level Recurrent Neural Networks for Text Generation using Tensorflow

Summer Intern

July 2015 - September 2015/July 2016 - September 2016
  • Internship in the Financial Services Department
  • Developed OutSystems and .NET applications for insurance companies
  • Developed an OutSystems application with integrated .NET Web Services for insurance companies

Side Projects


May 2019 (First Alpha Release)
  • Python library to parse and validate JSON configuration files
  • The user can specify the type, bounds, defaults, and extra validations of each argument using Typed NamedTuples
  • The library parses the NamedTuple and the JSON, validating all constraints
  • Useful for validating arguments before running a long process (e.g., training a Neural Network)
  • Also useful because it allows typed autocompletion, instead of using dictionaries and strings