Rodrigo Lima

Software Engineer

image

Software Engineer Specialist with more than 10 years of experience. PhD. Candidate in Computer Science at Federal University of Pernambuco (Recife, PE - Brazil) advised by Prof. Phd. Baldoino Fonseca, Master Degree in Informatics Federal University of Alagoas, Specialist Course (lato sensu) in Software Engineering at Centro Universitário CESMAC (Maceió, AL - Brazil) and BSc. in System Analyst at Centro Universitário CESMAC (Maceió, AL - Brazil).


Work Experiences

Chief Technology Office

Edusynch | 2014 - Present

Scrum Master, Project Technical Leader, DevOps and Ruby Engineer

  • Ruby
  • Docker
  • Scrum
  • Test Driven Development

CO-Founder

Top Ideias | 2011 - Present

CO-Founder of Top Ideias

  • Ruby
  • Docker
  • DevOps
  • iOS

Software Engineer

Quimbik Inc. | 2019 - 2021

Development and maintenance of Systems using Java and JavaScript (ReactJS)

  • Java
  • JavaScript
  • Test Driven Development

Software Engineer

Quimbik Inc. | 2013 - 2017

Development and maintenance of Systems using Ruby, Java and Swift

  • Ruby
  • Java
  • Swift
  • Test Driven Development

Programmer

Unimed Maceió | 2012 - 2013

Development of hospital system using Java J2EE (Hibernate, log4j, Struts and Jasper Reports)

  • Java

Programmer

OFM | 2010 - 2012

Development of ERP System using Java and Adobe Flex.

  • Java
  • Adobe Flex

Projects

Understanding and Classifying Code Harmfulness

Research Paper / Open Source

Code smells typically indicate poor implementation choices that may degrade software quality. Hence, they need to be carefully detected to avoid such degradation. In this context, some studies try to understand the impact of code smells on the software quality, while others propose rules or machine learning-based techniques to detect code smells. However, none of those studies/techniques focus on analyzing code snippets that are really harmful to software quality. This paper presents a study to understand and classify code harmfulness. We analyze harmfulness in terms of CLEAN, SMELLY, BUGGY, and HARMFUL code. By harmful code, we mean code that has already harmed software quality and is still prone to harm. We perform our study with 22 smell types, 803 versions of 12 open-source projects, 40,340 bugs and 132,219 code smells. The results show that even though we have a high number of code smells, only 0.07% of those smells are harmful. The Abstract Function Call from Constructor is the smell type more related to harmful code. To cross-validate our results, we also perform a survey with 77 developers. Most of them (90.4%) consider code smells harmful to the software, and 84.6% of those developers believe that code smells detection tools are important. But those developers are not concerned about selecting tools that are able to detect harmful code. We also evaluate machine learning techniques to classify code harmfulness: they reach the effectiveness of at least 97% to classify harmful code. While the Random Forest is effective in classifying both smelly and harmful code, the Gaussian Naïve Bayes is the less effective technique. Our results also suggest that both software and developers’ metrics are important to classify harmful code.

EduSynch

Proprietary

EduSynch is Free Adaptive Training for English Language Proficiency Exams, it was developed using Ruby on Rails (API), AngularJS (Front-End) and Java (Android App), more Info: https://edusynch.com

OpenMed

Proprietary

Hospital System (ERP) System developed using J2EE, this system controls all the Hospital Unimed Maceió departments (pharmacy, hospitality, reception, patients etc.)