Igor Vilela
Tech Leader & Senior Android Software Engineer at Banco Inter- Claim this Profile
Click to upgrade to our gold package
for the full feature experience.
-
Português -
-
Inglês -
Topline Score
Bio
Credentials
-
Professional Scrum Master I (PSM I)
Scrum.orgJan, 2019- Nov, 2024
Experience
-
Inter
-
Brazil
-
Financial Services
-
200 - 300 Employee
-
Tech Leader & Senior Android Software Engineer
-
Jul 2020 - Present
- Android technical leader of the Investments tribe, with 8 developers and more than 1+ million Investments users and 10+ million at Inter. One of my main responsibility is to ensure the quality of the deliveries of the Android chapter of the tribe;- Android architecture, development, and refactoring, using the concepts of OOP, SOLID, Clean architecture, multithreading (coroutines, flow), functional programming, passive views, custom views, etc. Which made it easier to test and scale the solutions developed;- Refactoring the tribe's navigation system, which the VIPER concept was used and the jetpack navigation for the tribe was removed;- Implementation and maintenance of CI using the Bitrise tool. In which automated tests are verified, test coverage in addition to the publication of the Investments tribe library;- Implementation and monitoring of an internal system for the Android Investments tribe of analytics and crash reporting, using Firebase, which facilitated the investigation of problems in production;- API design using BFF concepts;- BFF implementation, using an internal framework (based on micronaut and spring).
-
-
-
CI&T
-
United States
-
IT Services and IT Consulting
-
700 & Above Employee
-
Senior Android Software Engineer
-
Aug 2019 - Jul 2020
- Work in an offline-first application, for the treatment of patients with diabetes, in which the business rules were centralized in the mobile applications and the client located abroad;- Development, architecture, and refactorings using Kotlin, Coroutines, Clean Architecture, MVVM, Koin, etc. In addition to maintenance and corrections at CI using Jenkins;- Part of a change in the team's culture concerning test automation, with the implementation of unit tests, screenshot tests, and integration tests. The test coverage that was initially 10% was increased to 90%, in which the common testing frameworks for Android were used: JUnit, MockK, Espresso, in addition to the Facebook library for screenshot tests;- Reference for developers, teaching about Android development, software architecture, and design patterns in general.
-
-
-
-
Senior Android Software Engineer
-
Sep 2018 - Aug 2019
- Android development consultant in projects for large customers in the e-commerce and mall administration sectors. Architecture and development of Android applications, using Kotlin, Coroutines, Clean Architecture, MVVM, Dagger2, and the most common technologies for Android development;- Responsible for migrating projects to use androidX;- Analysis and implementation of automated tests, using JUnit, MockK, and Espresso. Implementation of reports regarding code quality, using JaCoCo and SonarQube;- Development of REST microservices, using Spring Boot and Firebase;- Reference for developers, teaching about Android development, software architecture, and design patterns in general.
-
-
-
Capgemini
-
France
-
IT Services and IT Consulting
-
700 & Above Employee
-
Android Software Engineer
-
Dec 2017 - Sep 2018
- Work on projects of international scale, allocated in the company Prosegur;- Architecture and development of Android applications, using Kotlin, Coroutines (when it was in the experimental state), Clean Architecture, MVVM, Android Architecture Components, Dagger2, etc;- Responsible for leading the team in the analysis and implementation of automated tests, using JUnit, Mockito, MockK, and Espresso;- Technical leadership, instructing teammates in software development and architecture.
-
-
-
Nexer Labs
-
Brazil
-
IT Services and IT Consulting
-
1 - 100 Employee
-
Android Software Engineer
-
Jan 2017 - Dec 2017
- I worked as an Android developer in a startup about connected cars, being responsible for the architecture and development of applications, which it was used Java, Clean Architecture, MVP, Dagger2, etc.- Release of applications in the Play Store, in which the process was automated, applying CI / CD concepts with bitbucket and the Bitrise tool.- Member of the product team to define features, UX, usability tests, and changes to applications.- Implementation of an application to collect data from an OBDII device, communicating using Bluetooth Low Energy.
-
-
-
-
Intern
-
Sep 2016 - Dec 2016
Term paper alongside with an internship scholarship focused on the portability of PVANET - a virtual learning environment of the Universidade Federal de Viçosa (UFV), for the Android platform. I worked on the requirements analysis and gathering with the Departamento de Informática (DPI) and the Diretoria de Tecnologia da Informação (DTI) in a project named UFV Mobile. I was responsible for the architectural modeling of the app, in which I used some of the main software design patterns in Android: Model View Presenter and Clean Architecture. The application was developed using the Test Driven Development (TDD); therefore, having an extensive testing routines and high robustness. The project developed is being homologated by DTI and soon it will be used by UFV students
-
-
-
-
Intern
-
Dec 2015 - Dec 2016
The objective of this internship was to develop a clock-in system under the Android platform. By bering one of the main developers of the project, I worked on the development and the enhacement of new features. I developed automated tests using JUnit, Robotium and Roboeletric. Later on, by using a tool called Jenkins, I was responsible for the implantation of Continuous Delivery and Continuous Integration. Again, with Jenkins and the support of static code analysis such as FindBugs, PMD and CheckStyle, I developed an automated code review to guarantee a better code robustness. With that, it was possible to decrease the number of errors applying an intense routine of integration testing before the delivery of the final product.
-
-
Education
-
Universidade Federal de Viçosa
Bacharelado em Ciência da Computação, Tecnologia da Informação