Professional Summary
** ***** ** ********** ******** Android Mobile Apps.
* **** ********* ** *** Play store.
Skilled with multiple IDEs tailored for Android Development including Android Studio and Eclipse.
Advanced programming skills with Java and Kotlin.
Experience with Android performance profiling, memory, and power management, including optimizations.
Demonstrated ability to manage competing priorities in an Android development environment while maintaining high productivity.
Knowledge of the latest Material Design guidelines, including animations and User Experience optimization.
Experienced in code merges, builds, deployments, and ensuring Android mobile app stability.
Able to architect, design, develop and test Android mobile applications from scratch.
Able to maintain high unit test coverage and continuous integration principles in Android mobile development.
Skilled in requirement gathering and analyzing technical documentation.
Solid background in Android User Interface (UI), Android SDK, Google Material Design, and architectural and design patterns in Android development such as MVC, MVP, MVVM, dependency injection and more.
Considerable experience debugging and profiling Android applications, as well as writing unit tests using JUnit and tracking in JIRA.
Skilled in keeping Android development teams on track with daily Scrums and Sprint planning, breakout sessions and assigning tasks.
Projects setting up various accounts of mobile analytics tools: Mixpanel, Flurry, Crashlytics, Google Analytics.
Experience using native Android and third-party frameworks such as Fabric and Firebase.
Experience working on-site and off-site teams and management.
Knowledge of Android frameworks to load data asynchronously like Loaders and SyncAdapters.
Strong familiarity with various third-party libraries in Android.
Experience troubleshooting back-end communications, in-app functionalities, and 3rd party frameworks.
Proven ability prototyping and profiling Android applications.
Technical Skills
Architecture & Design Patterns: MVC, MVP, MVVM
Design Patterns: Singleton, Builder, Façade, Decorator, Observer
Android Misc.: Android Emulator, BitBucket, Android Studio, IntelliJ, Retrofit, Jenkins, RxJava, Volley, Firebase, GSON, JobScheduler, JUnit, Mockito, Espresso,
Libraries: JetPack, Unit Testing, Automated Testing, JIRA, Written Test Cases, Robotium, Robolectric, DMS tool
Competencies: Software Development Life Cycle (SDLC) templates, algorithms, and data structures
Project Methodologies: Agile Scrum, Test-Driven Development (TDD), Continuous Integration, Code Reviews, Pair Programming
Multimedia: Picasso, Glide, Fresco
Database Technologies: SQLite, MySQL Workbench, SQL Developer
Tools and Software: Toad, Informatica, Eclipse, NetBeans, Adobe Photoshop, Illustrator, In Design, Visio, EventBus, LeakCanary, Loaders, Bluetooth Low Energy, Glide, Git, Push Notifications, Google Cloud Messaging, Dagger, Hilt, Dependency Injection Material Design, Android Native Development Kit (NDK), Visual Studio
Android Project Experiences
June 2020 – Present / Senior Android Developer - Dutch Bros (Grants Pass, OR)
https://play.google.com/store/apps/details?id=com.dutchbros.loyalty&hl=en&gl=US
The Dutch Bros® App: join the party! Use the new Dutch Bros App for a fun, contactless way to pay for your favorite drinks, and earn rewards as you do!
Began transitioning modules of the app from MVP architecture to MVVM, and applied SOLID principles throughout the Android mobile app.
Used Material Design concepts to create an outstanding looking Android mobile application UI with exceptional UX.
Implemented Android Jetpack Room and LiveData components.
Commenced refactoring of much code including Java classes from Java to Kotlin.
Used Atlassian as Continuous Integration system to track released versions with all of fixes detailed in a changelog and code backup.
Implemented Android Bluetooth and Location Connectivity components.
Programmed modules in Kotlin.
Fixed issues for security scans such as SSL, encryption, loopholes and profiled the application using the APK analyzer.
Applied the Bitbucket GIT repository, Jira, and Confluence tools for enhanced team collaboration and real-time task tracking during the entire project lifecycle.
Utilized Dagger 2 and Hilt for dependency injection.
Used JUnit, Roboelectric, and Espresso for testing, Jira for ticket creation and tracking.
July 2018 – June 2020 / Android Developer - Olive Garden (Orlando, FL)
https://play.google.com/store/apps/details?id=com.darden.mobile.olivegarden
The Olive Garden app conveniently brings your favorites to your fingertips. Find real-time directions to your nearest Olive Garden, browse the menu, place and save to go orders, save your spot on the wait list, and more, all within a few taps.
Worked on existing codebase in MVVM architecture with data-binding implementation.
Implemented newer features in Kotlin and migrated older features coded in Java to Kotlin.
Conducted Kotlin training sessions.
Used Android Studio IDE and Android SDK to write application logic.
Utilized LeakCanary to detect and remove all memory leaks.
Fixed issues for security scans such as SSL, encryption, loopholes and profiled the application using the APK analyzer.
Worked on payment module to Create a Payment and Process the Order using OAuth2 tokens, the Client Metadata ID, and PayPal's API.
Communicated with RESTful web services to obtain information using Retrofit, OkHTTP and Jackson.
Created multiple scripts in the Gradle file for test automation, reporting, signing and deployment.
Worked with testing libraries and frameworks JUnit, Espresso, Mockito, and Robolectric.
Worked with Jenkins CI server for continuous integration and followed Test-Driven Development (TDD) methods.
Persisted non-sensitive data with Realm database and ensured that the database was using encryption algorithms when persisting user information.
Documented project work in Confluence.
Utilized Dagger 2 and Hilt for dependency injection.
Added Push Notifications through Backend support with Push Notifications and GCM.
Applied Git for code versioning control.
September 2016 – July 2018 / Android Mobile App Developer - Rand McNally (Chicago, IL)
https://play.google.com/store/apps/details?id=com.randmcnally.driverconnect
The Rand McNally DriverConnect app allows users to log duty statuses; view engine metrics; upload Driver Vehicle Inspection Reports (DVIR) and fuel receipts; and store location information of the route driven during a trip.
Generated app build using a MVP architecture base.
Applied Builder, Observer, Singleton, and Abstract Factory design patterns.
Utilized Firebase for real-time database, CDN, user login.
Helped implement Material Design UI/UX as well as alignment to guidelines.
Used Executors, Handlers, and Schedulers for handling concurrency threads for better resource consumption and network request asynchronously.
Implemented layouts using the latest RecyclerView and CardView combinations to improve the User Interface.
Used design conversion tools Sketch and Figma.
Added a DrawerLayout to handle external and constant menu items related to the app’s current Activity and extra features.
Implemented LocationManager (GPS) and Google Maps API for driver location services.
Implemented LRU Cache to increase the performance of ListView scrolling.
Added Retrofit to consume RESTful web services to parse realtime data and with GSON converter to parse JSON objects.
Configured MixPanel with Firebase API to send push notifications, record events and stored User Profiles.
Implemented Firebase Crash Reporting in debugging and troubleshooting.
Applied Roboelectric, Mockito, and Espresso for testing.
July 2014 – September 2016 / Android App Developer - Lakeland Financial (Warsaw, IN)
https://play.google.com/store/apps/details?id=com.lakelandbank.mobile&hl=en_CA&gl=US
Lakeland Bank’s Mobile Banking App provides convenient 24/7 access to your Lakeland Bank accounts. Use the same login credentials as your online banking profile and enjoy a simplified interface optimized for your mobile device. Monitor account activity and make transfers anytime and anywhere your phone takes you.
Worked on Android development team applying Agile principles, Scrums, Sprints, and pair-programming.
Used SAX parser library to receive XML responses and parse to get the required output.
Created small testing suites with JUnit and the Android Studio IDE capabilities.
Enhanced the UI/UX with well-designed UI/UX and custom views and compound views.
Constructed prototypes of the User Interface integrating the latest Material Design guidelines.
Implemented Flurry mobile analytics to find problem areas and debug or improve performance.
Made use of Activities and Activities for Result and RecyclerViews in Android to get a better performance of the application.
Applied solid relational DBMS skills using MySQL, PostgreSQL, and other DBMS products.
Implemented MVP architecture and design patterns Singleton, Proxy, Observer, and Façade.
Wrote algorithms in MVP architecture for real-time updates, local data access for offline scenarios, and data synchronization with customizable conflict resolution when devices are back online.
Collaborated with migration from Java to Kotlin for some specifics features and new implementations created in Kotlin.
Utilized Dagger for dependency injection and RxJava for high performance with multithreading.
Used continuous integration tools Jenkins and Travis CI and automated testing framework Espresso.
Implemented OAuth and authentication tokens.
March 2012 – June 2014/ Android Developer – Coca Cola (Atlanta, GA)
https://play.google.com/store/apps/details?id=com.cocacola.app.cee&hl=en&gl=US
Experience the world of Coca-Cola on your mobile or tablet. Enjoy our refreshing beverages, collect special app currencies, play games, and enter promotions for the chance to win prizes!Built app using Android Development Tool and Eclipse, utilizing MVP architecture in Java.
Integrated communication with backend services using Retrofit and RxJava, parsing JSON objects with GSON.
Worked with Custom Frameworks and Custom Templates for building this application.
Implemented Frame Layout method to show background images of the Android app.
Used Jenkins as the continuous integration tool.
Introduced optimal caching mechanism into SQLite, to avoid unnecessary queries.
Used Android XML in design and development of user interfaces.
Used JIRA for new requirements, issues, bug tracking, project planning, and task assignment.
Used Leak Canary to manage, trace and fix memory leaks issue within the Android app.
Integrated Flurry for mobile analytics.
Added Broadcast Receiver logic to listen for events that can trigger a local database update.
Adhered to TDD and BDD testing methodologies and wrote tests with RSpec and Cucumber.
Implemented automated testing with Robolectric for Android and worked closely with the testing team.