Recent Posts

International Conference on Software Engineering (ICSE 2018) May 27 - June 3, 2018, Gothenburg, Sweden

Proceedings of the 11th Brazilian Symposium on Software Components, Architectures, and Reuse (SBCARS ‘17), Sep 18-22, 2017, …

Experience

 
 
 
 
 
January 2020 – Present
Mountain View, California - USA

Assistant Teaching Professor

Carnegie Mellon University - Silicon Valley campus

Courses:

  • Software Verification & Testing
 
 
 
 
 
May 2016 – December 2019
Rio de Janeiro, Brazil

Researcher and Developer

OPUS Research Group - PUC-Rio

Development of a gamified platform for promoting virtual communities to prevent and combat Zika, Chikungunya, and Dengue. The core is the VazaZika plafform, a gamified system for stimulating citizens to denounce and confirm Aedes breeding sites, and for updating users, in real time, about actions taken by health agents. Responsibilities include:

  • Researching
  • Analysing
  • Modelling
  • Implementing
  • Testing
  • Deploying
 
 
 
 
 
March 2015 – December 2019
Rio de Janeiro, Brazil

Researcher

OPUS Research Group - PUC-Rio

CAReCo – Recommendation Systems for Collaborative Software Maintenance. Funding Institution: Coordenação de Aperfeiçoamento de Pessoal de Nível Superior-CAPES, Brazil. Responsibilities include:

  • Researching
  • Analysing
  • Modelling
  • Implementing
  • Testing
  • Deploying
 
 
 
 
 
March 2015 – February 2016
Rio de Janeiro, Brazil

Researcher

OPUS Research Group - PUC-Rio

Investigation of Architecture Anomalies in Multi-language Software Responsibilities include:

  • Researching
  • Analysing
 
 
 
 
 
May 2014 – December 2015
Rio de Janeiro, Brazil

Researcher and Developer

OPUS Research Group - PUC-Rio

Development of a multi platform for promoting virtual communities to prevent and combat Dengue diseases. The core is the VazaDengue plafform, a system that allows citizens to denounce and confirm Aedes breeding sites using their smartphones. Responsibilities include:

  • Analysing
  • Modelling
  • Implementing
  • Testing
  • Deploying

Selected Publications

In SMC’18, 2018

Distinguished Paper Award
In ICSE’18, 2018

In Information System, 2018

In SBES’18, 2017

Skills

Empirical Software Engineering

Quantitative and Qualitative Analyses

Java, C, C++ and Python

Recent Publications

Distinguished Paper Award

Distinguished Paper Award

Projects

Leveraging Gamification and Social Networks for Improving Prevention and Control of Zika

Research Project, 2017 – Current. In cooperation with Newcastle University, UK, Newton Fund.

ReSoM: Restructuring Software in Multi-language

Research Project, 2015 – 2016. In cooperation with University of Southern California (EUA), and University of California at Irvine (EUA)

A Software Infrastructure for Promoting Efficient Entomological Monitoring of Dengue Fever

Research Project, 2015 – 2016. In cooperation with Newcastle University, UK, Newton Fund.

Teaching

Software Verification & Testing

Verification and testing (VT) support software engineers and development teams in their endeavor to build dependable systems. These interrelated activities form the backbone of a high-quality software solution that performs its function as intended. VT is no longer considered an exclusively backend phase undertaken by a separate quality assurance unit, vulnerable to availability of discretionary resources near project end. Rather, VT is a cross-functional discipline applied throughout the software lifecycle from beginning to end. As such VT is an integral and essential part of any sensible software development process. This course introduces the students to concepts, principles, theory, types, tools, and techniques of VT with exposure to both modern, widely-applicable approaches and traditional, formal techniques. Students will acquire sufficient depth and breadth in VT through a balanced coverage of topics. The course syllabus spans fundamentals such as VT principles, systematic testing, input space analysis, and test coverage; practical strategies such as test-driven development, unit testing, and test design; and formal approaches such as abstraction, model checking, static analysis, and symbolic execution. Please note that this course is intended for ECE master students with a concentration in Software Engineering and will satisfy the Analysis area core course requirement. Please note that this course is intended for ECE master students with a concentration in Software Engineering and will satisfy the Analysis area core course requirement.

Contact