Ph.D. in software engineering, he focuses on automatic patch generation to fix applications directly in production.
About Me: I am currently doing a Post-Doc at INESC-ID, University of Lisbon in Portugal. I am working on automatic patch generation technique and fault localization. I did my Ph.D. at University of Lille, France. My research interest is in automatic software repair and especially in automatic patch generation for the production.
Quick Biography: Post-doc at INESC-ID, University of Lisbon in Portugal; Ph.D. from University of Lille, France; M.S. degrees, Computer Science, from the University of Lille; B.A., Computer Science, from Institut Paul Lambin in Belgium. During my studies, I did several internships as well in the industry (Microsoft Innovation Center, Emakina) as in the academic (KTH, CERN). I also created and maintain several open-source projects for research purposes and more.
INESC-ID, University of Lisbon in Portugal/ Feb. 2019 - currentPost-doc - Post-doc on fault localization and patch generation.
Carnegie Mellon University/ Feb. 2019 - Dec 2019Visiting researcher - I worked with Claire Le Goes on a study that analyze the reasons that motivate the developers to restart builds on TravisCI.
KTH/ Apr. 2018 - Jun. 2018Ph.D. internship - International internship at KTH in the Theoretical Computer Science department.
KTH/ Sep. 2017 - Dec. 2017Ph.D. internship - International internship at KTH in the Theoretical Computer Science department. I worked on a new patch generation technique. This technique aims to fix automatically bug in websites. We adopted a crowdsourced approach where all the user contribute to the detection and repair of the bugs.
INRIA/ Sep. 2015 - currentPh.D. Student - The motivation of my thesis is to improve automatic patch generation techniques. The state of the art techniques still rely on the developer to reproduce the bug, they rely on a failing test-case that describes the bug. My thesis presents new approaches that aim to removes the developer intervention during the patch generation.
INRIA/ Mar. 2015 - Aug. 2015Master Thesis - I worked on the Nopol project, a test-suite-based automatic program repair approach that fixes buggy conditions. Firstly, I used symbolic execution engine to extend Nopol repair scope to buggy arithmetic statements. Secondly, I worked on the first patch synthesizer that generates patches that contains complex method invocations.
CERN/ Summer 2014Internship - I worked with CERN security team, where I created a scanner that detects misconfigurations and outdated libraries in the thousands of WEB servers of the CERN institution. The goal of this scanner was to ensure that all the servers do not have known security issues.
Microsoft Innovation Center/ Mar. 2013 - Jun. 2013Internship - I developed the backend infrastructure to create a SAS version of the Aproove product. Aproove is an annotation and validation system for high-resolution graphics document, i.e. magazine. To goal was to be able to quickly deploy and backup Aproove instances on different hosts.
University of Lille/ Sep. 2016 - Jun. 2018Teaching Assistant - I minister the lecture on Software Engineering for first-year master students and the lecture of Algorithm and Programming for first-year bachelor students.
Institut Paul Lambin/ Sep. 2012 - Jun. 2013Tutor - I provided remedial courses in computer science to first year students.
ICST/ 2020Chair and Reviewer - Student Volunteers Chair & Reviewer
SANER/ 2018Committee Member - Committee Member for the Early Research Achievement Track
ICSE/ 2017External Reviewer
Ph.D. degree in Computer Science/ 2015 - 2018INRIA - Microsoft Research - University of Lille - Title: From Runtime Failures to Patches: Study of Patch Generation in Production. Advisors: Martin Monperrus, Lionel Seinturier and Youssef Hamadi
Master's degree (Cum Laude) in Computer science/ 2013 - 2015University of Lille, France
Erasmus Exchange/ Sep. 2012 - Feb. 2013University of Luxembourg, Luxembourg
Bachelor's degree (Cum Laude) in Computer science/ 2010 - 2013Institut Paul Lambin, Belgium