Hello! I'm a

Who am I?

I'm an assistant professor at COLTEC/UFMG, responsible for lecturing Basic Programming, Web Development, and Mobile Development classes. Also, I'm a member of the Applied Software Engineering Research Group (aSERG), where we conduct empirical research in software engineering.

My interests are related to software maintenance and evolution, mining software repositories, and empirical software engineering. Currently, I am working with mining software repositories and machine learning techniques to map software developers' expertise based on their activity in Social Code Platforms (aka GitHub and Stack Overflow).

Academic

Important note: The copyrights for the following papers belong to the publishers. Papers may be downloaded for personal or research purposes only.

Publications

What skills do IT companies look for in new developers? A study with Stack Overflow jobs
João Eduardo Montandon, Cristiano Politowski, Luciana Lourdes Silva, Marco Túlio Valente, Fábio Petrillo, Yann-Gaël Guéhéneuc. Information and Software Technology (IST). 2021.
Mining the Technical Roles of GitHub Users
João Eduardo Montandon, Marco Tulio Valente, Luciana Lourdes Silva Information and Software Technology (IST). 2021.
Are Game Engines Software Frameworks? A three-perspective study
Cristiano Politowski, Fábio Petrillo, João Eduardo Montandon, Marco Tulio Valente, Yann-Gaël Guéhéneuc. Journal of Systems and Software (JSS). 2021.
Identifying Experts in Software Libraries and Frameworks among GitHub Users
João Eduardo Montandon, Luciana Lourdes Silva, Marco Tulio Valente 16th International Conference on Mining Software Repositories (MSR). 2019.
Resultados da Primeira Rede de Sensores de Auscultação de Barragens Sem Fio, Autonômica e de Baixo Custo da Cemig GT
Cunha, A. B. ; Gontijo, A. F. ; Braga, A. R. ; Montandon, J. E. ; Lima, D. P. ; Brandão, D. A. L. ; Maciel, P. H. A. ; Pinto, V. M. M. ; Melo, A. V. ; Caliman, E. H. ; Andrade, J. S. IX Congresso de Inovação Tecnológica em Energia Elétrica. 2017.
APIMiner 2.0: Uma Plataforma para Recomendação de Exemplos de Uso de APIs Baseados em Padrões de Uso
Hudson Silva Borges, João Eduardo Montandon, Marco Tulio Valente, Heitor Costa, Daniel Felix IIV Congresso Brasileiro de Software: Teoria e Prática (Sessão de Ferramentas). 2013.
Documenting APIs with Examples: Lessons Learned with the APIMiner Platform
João Eduardo Montandon, Hudson Borges, Daniel Felix, Marco Tulio Valente 20th Working Conference on Reverse Engineering (WCRE), Practice Track. 2013.
APIMiner: Uma Plataforma para Recomendação de Exemplos de Uso de APIs
João Eduardo Montandon, Marco Tulio Valente III Congresso Brasileiro de Software: Teoria e Prática, sessão de ferramentas. 2012.
Static Correspondence and Correlation between Field Defects and Warnings Reported by a Bug Finding Tool
César F. M. Couto, João Eduardo Montandon, Christopher Silva, Marco Tulio Valente Software Quality Journal (SQJ). 2012.
Avaliação da Relevância dos Warnings Reportados por Ferramentas de Análise Estática
João Eduardo Montandon, Marco Tulio Valente XXX Concurso de Trabalhos de Iniciação Científica (CTIC). 2011.
Study on the Relevance of the Warnings Reported by Java Bug-Finding Tools
João Eduardo Montandon, César F. M. Couto, Silvio José de Souza, Marco Tulio Valente IET Software. 2011.
Um Estudo sobre a Correlação entre Defeitos de Campo e Warnings Reportados por uma Ferramenta de Análise Estática
João Eduardo Montandon, César F. M. Couto, Silvio José de Souza, Marco Tulio Valente IX Simpósio Brasileiro de Qualidade de Software (SBQS). 2010.
Os Defeitos Detectados pela Ferramenta de Análise Estática FindBugs são Relevantes?
João Eduardo Montandon, Silvio José de Souza, Marco Tulio Valente IX Simpósio Brasileiro de Qualidade de Software (SBQS). 2010.
Uma Meta-Ferramenta para Detecção de Defeitos
Silvio José de Souza, João Eduardo Montandon, Marco Túlio Valente VII Workshop de Manutenção de Software Moderna (WMSM). 2010.

Thesis & Dissertations

Mining the Technical Skills of Open Source Developers
João Eduardo Montandon, PhD. thesis, Computer Science Department, Federal University of Minas Gerais (DCC/UFMG). 2021.
Documenting Application Programming Intefaces with Source Code Examples
João Eduardo Montandon, Msc. dissertation, Computer Science Department, Federal University of Minas Gerais (DCC/UFMG). 2013.

Honors & Awards

2018

Honored professor
Software Development '18 graduating class

2016

Honored professor
Information Technology '16 graduating class

2011

Honored mention
One of the 10 best papers at CTIC'11

2010

Best paper
Best paper at SBQS'10

Teaching

Here you can find basic info about the courses I am responsible for. Classes are in portuguese, but you can find a small description about them below.

Desenvolvimento de Aplicativos Android Mobile App Development: Android

  • Mobile
  • Android
  • Java

In this course the students learn the fundamental concepts needed for developing mobile applications on the Android platform. Also, students are encouraged to look for real-world problems and how a mobile app solution can help solving them. We cover the following topics in this course:

  • The mobile app lifecycle
  • GUI componentes and guidelines
  • Persistence techniques
  • Communication among different applications
  • Communicatio with external services
Offered at: 2021

Desenvolvimento de Aplicações Web Web Applications Development

  • Frontend
  • Backend
  • Database
  • REST

The objective of this course is to teach the fundamental principles in web application development. The idea is to expose the students to concepts, techniques, technologies, and platforms necessary to create such applications from scratch. This course is divided into three modules:

  • Frontend: presents the technologies used to build enriched web interfaces, such as HTML, CSS, Responsive Design, JavaScript, etc.
  • Backend: depicts the stack used in backend development. Also, students are exposed to basic relational database concepts.
  • Advanced Techniques: presents modern techniques currently used in web software development, such as RESFul APIs, SPAs, etc.
  • Offered at: 2021, 2018, 2017, 2016, 2015, and 2014

    Técnicas de Desenvolvimento de Software Software Development Techniques

    • Software Engineering
    • Git
    • Software Architecture
    • TDD

    In this course, I teach software development techniques we frequently use when implemeting computer programs. We assume the students are aware of the main software design concepts, so we can focus on the techniques to effectively implement and maintain any kind of software. Basically, the following topics are covered:

    • Version control techniques
    • Design patterns
    • Software architecture models
    • Refactoring
    • Software Testing
    Offered at: 2021

    Introdução a Programação Introduction to Programming

    • algorithms
    • programming
    • C

    This course starts by introducing problem-solving concepts and how to use algorithms to solve them. Later, we start by practicing these concepts in a real programming language (C). I covered the following topics in this discipline:

    • Types and variables
    • Control-flow structures (if-else, for, while, etc)
    • Multidimesional arrays
    • Basic IO operations (read and write to text files)
    • Basic structures concepts

    Offered at: 2018, 2017, 2016, 2015, and 2014

    Get in Touch

    Universidade Federal de Minas Gerais
    Colégio Técnico - Room 237
    Av. Antonio Carlos, 6627 - Pampulha
    31270-010 - Belo Horizonte - MG - Brazil
    Phone: 55-31-3409-2519 - Fax: 55-31-3409-4962
    E-mail: jemaf@ufmg.br