Experience developing Android apps in versions of Android including Marshmallow, Lollipop, KitKat, Nougat, and Oreo.
Portfolio of published Android apps, enterprise and customer facing for notable, high profile companies – apps with high traffic.
Experience developing mobile applications throughout the entire software development lifecycle (SDLC). Participated in all the phases including Requirements Collection, Design & Analysis of Customer Specifications, Development and Customization of the application, Unit testing and Production support, using Agile Scrum.
Skilled in Android development using Android SDK, frameworks, Java and Android Studio or Eclipse.
Experience in Messaging, Bluetooth and Wi-Fi connectivity with Android devices with Android CTS.
Experience with third-party APIs and web services like Google, Facebook, Twitter, YouTube Player and Surface View.
Experienced integrating Android mobile apps with web services using Retrofit, Volley, AsyncTask, OkHTTP and JSON, GSON, REST.
Worked with an internal QA team on system, performance, and acceptance testing.
Expert with IntelliJ, Eclipse, SQLite in Android development.
Proficient on User Interface (UI) in android, having good knowledge on customizing UI components.
Android frameworks and APIs, Loaders, AsyncTaskLoader and SyncAdapters.
Experience working on-site and off-site teams and management of remote teams.
Experience with dependency injection with Dagger 1, Dagger 2, Butter Knife.
Strong understanding of Android framework, best practices, and design patterns.
Proficient in using SVN and GIT code version control tools, as well as GUIs such as SourceTree, and BitBucket.
Experience with mobile Wallet and various payment processing integrations.
Proactive self-learner who adapts to new technologies, such as Smart Watches, Chromecast, and Smart TV devices.
Passionate about best UI/UX best practices implementing fragments, diverse layouts, animations, Material Design, Compound Views and Custom Views.
Experience in the implementation of Android mobile applications with RxJava, Firebase, Retrofit and Bluetooth for modern applications using IoT and learning.
Experience in architecting and developing networking and secure applications for Android; working with video, static content, and advertising.
Experience in building multithreaded applications using Threads, Handlers, Asynctask, Retrofit, and RxJava
Programming: Java, .NET (C, C#, ASP.Net), PL/ SQL, SQL, MySQL
Databases: Oracle, MySQL, Firebase DB, PostgreSQL, MS SQL
IDE/Dev: Android Studio, Eclipse, IntelliJ
Design Standards: Material Design
Design Patterns: MVP, MVC, MVVM
Project Tools/Methods: TDD, JIRA, Continuous Integration, Kanban
Operating Systems: Windows, Android OS Lollipop, Nougat, Marshmallow, Oreo
Version Control: Git, GitHub, SVN, Bitbucket, SourceTree, GitLab
Integration/Content Service: REST, SOAP, XML, JSON, GSON, Retrofit
Threading: Loopers, Loaders, AsyncTask, Intent Service, RxJava
Android Tools: Schematic, Smart TV,, Certificate Pinning, MonkeyRunner, Bluetooth Low Energy, ExoPlayer, SyncAdapters, Volley, IcePick, Circle-CI, Samsung SDK, Glide, VidEffects, JUnit, Ion, GSON, ORMLite, Push Notifications, Kickflip, SpongyCastle, Parse, Flurry, Twitter, FloatingActionButton,, Espresso, Fresco, Moshi, Jenkins, UIAutomator, Parceler, Dependency Injection, EventBus,, Dagger, Crashlytics, Mixpanel, Material Dialogs, RxCache, Retrofit, Marshmallow, Loaders, Jitpack, JobScheduler, ParallaxPager, XmlPullParser, Google Cloud Messaging, LeakCanary
June 2019 – Present
Daytona Beach, FL
Senior Android Developer
Engage 360 - TV: Not available on Play Store.
This is a new Android mobile app for TV, which is different from Android TV. The target users are partners using the Engage 360 service for communities. This Android app has a SmartTV-like UI with community features such as Calendar, Activities, TV Service, Ambient sounds, Weather, Community Dining, and ordering service and repair.
I successfully created a new Android Mobile App from scratch to be installed in Set Top Box as a System App. The Android system app is multilanguage capable. Agile iterative process was used to successfully enable the client to make several changes in design and behavior of the app prior to final release.
Created a simple and scalable project structure, which has a clean and simple design, is easy to escalate, takes advantage of the dependency injection, and naturally integrates new modules and views.
Created different themes based on a content server, to allow a user to change themes from the Android UI.
I used Android Studio 3.4.2 as the IDE for development of the Android app in Kotlin using MVVM architecture throughout.
The app utilized various native and third-party technologies including Android JetPack, Kotlin, Github, Koin, Retrofit 2, OkHttp, Moshi, Glide, Timber, View Model, Coroutines, TagView, ExoPlayer.
The project team consisted of 1 Android Developer, 1 full stack developer, 1 product developer, 1 product architect.
I was responsible for writing the technical API documentation.
The App will be manually installed in each device for the system app process.
Maintained Android app quality in development through integration process using GitHub.
Followed Google Material Design Guidelines.
Used Confluence for documentation, Jira for task tracking, backlog management and meeting prep.
Used Koin for Dependency Injection and Data Binding with Observable for easy binding integration with Koin for Dependency Injection.
Implemented back-end integration with Retrofit, Moshi and Coroutines.
Developed the Android App using Android Nougat-version 7.1, API Level 25.
Managed threading, performance, and memory management with Coroutines to handle download the different files needed (images and content).
Implemented Data Classes, Sealed Classes, Singleton Objects.
Implemented Shared Preferences for fast data retrieval and data persistence.
Implemented Caching of API responses for fast data retrieval.
Worked with Android Profiler for Troubleshooting and improving performance.
October 2018 – June 2019
Volvo Cars R&D
Senior Android Developer
Care by Volvo: https://play.google.com/store/apps/details?id=com.volvocars.cbv
Volvo Cars is a global luxury vehicles company based in Gothenburg, which designs and develops high-performance, premium vehicles, infused with the latest technology so that the users can have a great experience.
The company has R&D and design experts from around the world with significant technology and management background from leading automobile and high-tech companies, with more than 43,000 employees.
I successfully implemented 1 new Android mobile app for 2 different markets (US and Germany) from start to finish in a nine-month period. Using the Agile iterative process, with the client making several changes in design and behavior of the app prior to final release.
My greatest accomplishment was component decoupling. I was able to successfully create different templates to be used in the app for code recycling, that allowed us developers having a clean layout and easier implementation all over the app.
I was successful in another challenge: I integrated google maps for a dealer selection based on a searched location (Google Place Autocomplete) or current location (Device Location) implementing permission manager with a nice user experience.
I used Android Studio 3.4 as the IDE for development of the Android mobile apps in Kotlin using MVP – VM architecture throughout.
The project team consisted of one product manager, one product owner, one Scrum Master who was also in charge of 5 other projects, three Android developers in site and two Android developers remote in Stockholm.
The Android development team consisted of three developers in site and two in Stockholm. I provided mentoring and assistance to one junior Android developer.
Used Proguard for release security and worked with DevOps for Play Store approval and deployment
Maintained Android app quality in development through continuous integration process using BitBucket and HockeyApp (AppCenter).
Followed Google material design guidelines.
Used Jira for documentation, task tracking, backlog management, and meeting prep.
Used Dagger 2 for Dependency Injection.
Automated testing with Espresso.
Implemented back-end integration with Retrofit, Moshi and CoRoutines.
Developed the Android app using Android Marshmallow (version 6.0)
Managed threading, performance, and memory management with CoRoutines to handle download the different files needed (images and PDF).
Enabling thread cancellation strategy for when requesting the price for the configured vehicle.
Implemented data classes, sealed classes, singleton objects
Worked with Data Binding integrated with Dependency Injection (Dagger 2) and abstract classes for heritage to make the app scalable.
Implemented Caching of API responses for fast data retrieval.
Implemented Shared Preferences for data persistence to store user orders.
April 2017 –October 2018
Senior Android Developer
Used Android Studio as the primary IDE to develop, test and deploy the Android application.
Used Bitbucket to manage Git repositories and versioning control.
Optimized the Android application by implementing the design in high performant frameworks and libraries.
Improved application performance using Activities, Activities for Result and RecyclerViews.
Implemented the Android application in MVP architectural pattern.
Used design patterns: MVP, Factory, Singleton, and Decorator.
Tracked and fixed memory leaks using Leak Canary.
Implemented automated testing with Espresso.
Implemented Retrofit for back-end integration and multithreading with RxJava to provide superior user experience on main thread.
Implemented SQLite database for persistent data storage and fast data retrieval.
Implemented the use of handlers and threads on several tasks which improved the application performance.
Implemented various third-party technologies to optimize the app functionality including, Firebase Cloud Messaging, SQLite, Glide, Shared Preferences, MixPanel, EventBus, RxJava
Feb2016 – April 2017
Senior Android Developer
Managed Android team code review sessions to ensure high quality (reusable, simple, well-documented) code
Participated in conception, design, implementation and was responsible for ensuring that guidelines were followed for getting app approval and submitting the app to the Android app store
Triggered events in the physical device using Local Broadcast Receivers
The project team used Agile/Scrum and did two-week sprints and daily scrums.
Use of social media libraries, Facebook, Twitter and Google Plus integrated into the Android app
Improved the Android bit rate over network changes with the Connectivity Manager
Implemented Fragment retention for the RxJava operations
Implemented Firebase analytic libraries in Android to track user behavior and crashes
Implemented Android MVP design pattern; setting up all the interfaces and the decoupling of the classes
Implemented secure data encryption using a SQLCipher instance
Implemented Otto library for decoupling different parts of the Android application
Configured PayPal Android SDK for ease of payments and user experience (UX).
Relied on Git for version and source control
Consumed RESTful services through Retrofit to communicate with web services and replaced old third-party libraries versions with more modern and attractive ones.
Jan 2015 -Feb 2016
AT&T Mobile Transfer
Used Android Studio IDE as development tool on the Android team.
Implemented Android Data Binding in place of Dagger dependency injection.
Stored data of the task bonuses in SQLite on the Android app
Included Retrofit to make asynchronous HTTP requests in an anonymous callback.
Attended daily Scrum meetings to keep track of issues, tasks and Android app development progress
Implemented MVP Android design patterns considering mobile application design and development constraints to user interfaced and memory management
Installed Facebook and Twitter API functions into the Android app, enabling users to post live status updates and tweets
Optimized animations for Material Design to ensure a superior user experience
Participated in requirement gathering process to gain an understanding of user specifics
Implementation of various user interface components such as WebView, ListView, ImageView, and TextView to display the data for the Android application
Kept abreast of Android industry trends and technologies
Android app performance tuning and crash reporting
Tied the client-side app to the critical server-side APIs
Implemented Intent Services to run tasks in the background in separate threads
Implemented Run-Time Permissions as introduced in Android Marshmallow
March 2014 - Jan 2015
JP Morgan Chase & Co.
New York, NY
Chase Mobile Checkout
Used Implicit and Explicit Intents.
Included a Navigational Drawer in the Android app interface
Used and implemented GCM for Android notifications (Status Bar Notifications).
Implemented OAuth and authentication tokens.
Used Git as the source control management tool
Set up proper interactions of the front-end design and implementation with backend servers
Used the Parcelable interface to serialize objects before transferring them to other activities
Enhanced the requests for large content display on the app
Designed tweaks to the look and feel using Android Material Design
Involved in the full lifecycle development process from product definition
Implemented automated testing with Robolectric for Android and worked closely with the testing team
Consumed RESTful services, as well as serializing the returned code into POJOs via the GSON library for the Android app
Used Activities, Services, and intents in the Android application
Created and maintained technical documentation for the Android application
Used Intents & Intent Filters to initiate activities and pass information between Activities and Fragments.
Created the content provider logic to load the information with an Observer Pattern in the UI thread using Loaders in Android
Implemented entire feature using Fragments and Custom Views.
Weekly Android team meetings to present the status of the project; demo the updates, get feedback and update requirements.
March 2013–March 2014
Papa John’s Pizza
Optimized REST calls for better performance using different Android app threads
Worked with Android design patterns including Singleton, Builder, Decorator
Established the use of instance handlers for Java threading separated from the Android user's interface thread
Utilized Git version control tool as source control management system for Android project
Integrated social networking APIs such as Facebook and Twitter into the Android app
Introduced Push Notifications to keep the user engaged with Parse for Android
Tested and troubleshot memory management, network consumption in Android.
Validated network state before calling the web service.
Worked with Robolectric for automated testing/
Wrote test cases in Junit and Mockito and worked issues logged in Jira.
Fixed many bugs and improved Android app performance and ensured high code quality.
Refactored code in Java as needed to make the code cleaner and reusable.
Bachelor of Computer Engineering
6 Android Apps on Google Play
7 Years Android Development Experience
7 Years I.T. – Software Development Experience