Ian Medeiros

Senior Software Engineer at Marco Polo
  • Claim this Profile
Contact Information
us****@****om
(386) 825-5501
Location
BR
Languages
  • Inglês Full professional proficiency
  • Portuguese Native or bilingual proficiency

Topline Score

Topline score feature will be out soon.

Bio

Generated by
Topline AI

You need to have a working account to view this content.
You need to have a working account to view this content.

Experience

    • United States
    • Technology, Information and Internet
    • 1 - 100 Employee
    • Senior Software Engineer
      • Nov 2022 - Present

    • United States
    • IT Services and IT Consulting
    • 1 - 100 Employee
    • Android Team Lead
      • 2018 - Feb 2023

      After some time in a Senior position, I was offered the chance to lead the development of one of the products of the company. As I had a little bit of more autonomy for implementing my ideas (with hard deadlines constraints), I started to push for better android development practices: - The team started migrating the codebase to Kotlin- The team started decoupling the code from Activities/Fragments into presentation / data layers- The team started increasing the test coverage- We introduced code-reviews into the development process The introduction of those practices, together with excellent work from the product team, we were able to deliver results: - The deploy rate got faster, delivering more than 8 high value features in the semester with only 4 developers (including myself)- Overall product metrics improved substantially: crash-rate, user engagement, retention rate, ARPU, etc.Today, the product I was leading got into "maintenance mode" and the team was merged into the main product of the company. As the practices proved effective, they were adopted on all our Android Development Cycle and I am co-leading being seen as the "evangelist" for good software development practices.Some software concepts I try to implement daily: Clean Architecture, SOLID, DRY, Dependency Injection, TDD, Multi-Modular AppSome specific android development keywords: Kotlin, Coroutines, Android Architecture Components, AndroidX, Dagger, Gradle, Groovy Show less

    • Senior Android Developer
      • 2016 - 2018

      After two years of hard work and proven ability to solve complex problems from start to finish without supervision, a strong overall system knowledge, understanding of the application domain and strong work ethic, I was promoted to a Senior position. I helped develop a lot of core features in the app, but one that I believe had an overall good impact in my evaluation was the Anti Phishing. That feature involves strong android permission system knowledge, handling background services, back-end communication and code modularity: it is being used in different mobile products of the company and is helping thousands of users not being scammed daily.Some technologies used: Java, Android, Gradle, Groovy, Unix, Bash, Python Show less

    • Android Developer
      • 2014 - 2016

      While I was working on windows, the company started to give strong signs that it would pivot to the mobile market: more investments were being made to hire mobile developers and the OKR's were almost exclusively related with mobile projects. Anticipating the oficial migration, I negotiated a change to the Mobile team. It was the right choice: the mobile market showed a lot more growth potential and I had the opportunity to learn an exciting new language / framework, mostly Android with some small iOS projects. C++ knowledge is easily transferable to Java, so I was able to fix bugs in my first work day and ship new features in no time.Worked in this position for almost two years, sharpening my knowledge about the Android ecosystem and keeping my studies on fundamentals: code refactoring, SOLID principles, unit testing, design and architectural patterns.Some technologies used: Java, Android, Gradle, Groovy, Unix, Bash, Python Show less

    • C++ Windows Developer
      • 2013 - 2014

      Started at PSafe as a native windows developer and worked in a variety of applications mostly implemented in C++ with Qt5 before migrating to Android. At the time, the company was focusing on penetrating the Windows software market in Brazil and I had the opportunity to help design, develop and maintain apps with a large user base, with millions of downloads. Worked on building an antivirus, some windows installers, a native windows file backup system and managed our build scripts mostly written in Python. The products were discontinued when the company made the executive decision to pivot to the Mobile market.Some technologies worked on: C++, Qt5, CMake, Win32, Python, Windows Show less

  • Fictix
    • Rio de Janeiro, Brazil
    • Software Engineer
      • 2011 - 2013

      Fictix was a bootstrapped startup company building interactive media content for other brands. As the main developer of the company, together with one of the founders, I had the opportunity to implement a lot of challenging applications from the ground up. They ranged from motion detection and augmented reality to touch-screen apps. It was a really good opportunity to be exposed to the market, starting to apply project management methodologies like SCRUM and dealing with the pressure of meeting tight dead-lines. Some concepts exercised: Background segmentation, motion detection and augmented reality Some used technologies: C++, OpenGl, Qt5, and ActionScript Show less

    • Brazil
    • Higher Education
    • 700 & Above Employee
    • Scientific Initiation Researcher
      • Jun 2008 - Dec 2010

      Started my career as an undergraduate researcher in my university. It was a great opportunity to develop my writing skills, work ethics and sharpen one of the most critical skills in any software developer: the ability to find answers to open questions. Had 2 main research areas: applied math and scientific computation. Some used technologies: C, Linux and a multi precision arithmetic library called GMP. Started my career as an undergraduate researcher in my university. It was a great opportunity to develop my writing skills, work ethics and sharpen one of the most critical skills in any software developer: the ability to find answers to open questions. Had 2 main research areas: applied math and scientific computation. Some used technologies: C, Linux and a multi precision arithmetic library called GMP.

Education

  • PUC-RJ
    Master's degree, Computer Science
    2010 - 2012
  • Universidade Estadual de Santa Cruz
    Bachelor's degree, Computer Science
    2006 - 2010

Community

You need to have a working account to view this content. Click here to join now