Post Job Free

Resume

Sign in

Senior Android Developer

Location:
Grand Rapids, MI
Posted:
January 06, 2022

Contact this candidate

Resume:

Profile

* ***** ** ********** ********** Android mobile applications. in Core Java, J2EE,

* ********* **** ** *** Google Play Store

Demonstrated proficiency using Android Studio.

Experienced refactoring and transitioning code bases and architectures from MVC to MVP to MVVM using Kotlin and Java.

Experience consuming web services and HTTP REST interaction with JSON and XML.

Crafts quality code through code reviews and SOLID principles.

Follows Android best practices and writes clean code.

Applies Material Design guidelines and principles to enhance UI/UX.

Effective working as part of distributed technical teams applying Agile project management principles.

Work with project managers to convert business requirements to tasks.

Skilled programming in Kotlin and Java languages.

Experience transitioning code from Java to Kotlin.

Front-end development implementing the latest Material Design guidelines, animations and UX optimization, Fragments, Layouts, Animations, Compound Views, Custom Views, ListView and RecyclerView.

Back-end development experience using Retrofit and RxJava and OkHTTP to consume RESTful Web Services.

Strives for high unit test coverage and applies continuous integration methodologies.

Well versed in automated testing frameworks such as JUnit, Mockito, and Espresso.

Extensive experience in debugging and profiling Android applications.

Experience developing Android apps for multimedia display with extensive user interface development.

Strong expertise in creating responsive UI for various screen resolutions.

Encrypt environment configuration with sessions and user login using Encrypted Shared Preferences.

Leak Canary used to manage, trace and fix memory leaks issue within Android apps.

Expertise with ListView and adapters to load data onto lists at runtime.

Use of Localytics to find issues, get stats and improve performance.

Work with Loopers for asynchronous callbacks with the Loading Everywhere library.

Used Mixpanel and Flurry to generate customized events in the analytics retrieval.

Hands-on with Bluetooth technology.

Hands-on with RXJava, RxKotlin, RxAndroid, and RxBluetooth.

Technical Skills

IDEs:

Android Studio, Microsoft Visual Studio, Eclipse, IntelliJ. Matlab

Architectures:

MVC, MVP, MVVM

Design Patterns:

Singleton, Decorator, Builder, Façade

Methodologies:

Agile, Scrum, TDD, Continuous Integration

Programming Languages:

Java, Kotlin, Python, C/ C++, C#, MySQL

RESTful Web Services:

REST, SOAP, JSON, GSON, Retrofit 2, OKHTTP, Volley, AsyncTask

Mobile Databases:

SQLite, MongoDB, Realm, Green DA

Frameworks

RxJava, RxAndroid, RxCache,

Firebase Cloud Messaging, Google Cloud Messaging, Firebase Crash Reporting

Operating Systems

Android OS, Windows 7/ Vista/ 10, Mac OS X, Linux

Media Management

Picasso, Glide, Volley, ExoPlayer, MediaPlayer

Management Tools:

Jira, Confluence

Source Control Tools:

Git, GitHub, GitLab, Mercurial, BitBucket

Dependency Injection:

Butter Knife, Dagger 1, Dagger 2, IcePick

Testing

Junit, Mockito, Espresso, Robotium, Robolectric

Profiling, Memory Management

Bluetooth Low Energy, Leak Canary

Experience

February 2020 Senior Android App Developer

To Present Bissel – Grand Rapids, MI

https://play.google.com/store/apps/details?id=com.bissell.bissellconnect&hl=en_CA&gl=US

Simplify your cleaning routines with the BISSELL Connect App. Did your dog make a mess of breakfast right as you’re heading out the door? Use the app to set a cleaning schedule with your robotic vacuum. Wondering what’s the best way to clean up your cat’s wet or dry mess? The BISSELL Connect App gives you the power to manage your connected BISSELL products anytime, anywhere with your smart device, so you can get on with your busy day.

Worked on an Agile team and participated in Daily Scrums, including progress and blocker reporting, Sprint Planning and Sprint Retrospective and Sprint Backlog.

Performed fit-gap analysis for the Android application in reference to technology, design, standards, and best practices.

Applied Kotlin coroutines and RxJava for network communication with suspend functions.

Refactored navigation to separate fragments into individual UI views with data binding.

Used Dependency Injection-Dagger, Reactive and functional programming (Rx, Coroutines, Flow etc.), Retrofit, and LiveData.

Practiced pair programming as part of collaborative project development/delivery strategy.

Worked in Android Studio for IDE and coding in Java with transitioning of many code elements to Kotlin, including Java arrays.

Used JetPack for Android components to improve back-end management.

Used Leak Canary to manage, trace and fix memory leaks issue within the Android app.

Optimized Android geo-location-based features, user location tracing, navigation, and Geocoding.

Used GIT for code repository and maintaining current and historical versions of the Android app source code.

Created Material Design layouts with different animations for optimized user experience.

Maintained high unit test coverage and continuous integration principles.

Used Espresso and Mockito for testing the UI and App functionalities.

Used GitHub/Git extensively.

Used reactive frameworks such as RxJava, RxAndroid, RxBluetooth.

Coded Bluetooth BLE services to scan devices and communicate attributes between them using RxAndroidBLE library.

Actively worked with the back-end team to improve the RESTful API to include new features for the Android app.

Ensured that UI/UX teams followed Material Design best practices and guidelines.

Implemented Material Design features of RecyclerView, ActionBar, CardView for Android app user interface.

Used Retrofit and RxJava to consume RESTful web services and handle multithreading on background for smooth performance.

Managed pull requests and branching of the source base using BitBucket’s Git.

Utilized Jira for documentation, task tracking, backlog management, and meeting prep.

April 2018 to Senior Android Mobile Application Developer

February 2020 Arby’s, – Sandy Springs, GA

https://play.google.com/store/apps/details?id=com.arbys.android.arbysapp&hl=en_CA&gl=US

We Have The Meats™. Wait. Now, you have the meats. Order online from participating Arby’s restaurants — right from the app. Download today and enjoy Arby’s in your immediate future.

Worked within an Agile team to deliver across the entire product life cycle – concept, design, build (code), deploy, test, release, and maintain unit, functional, and performance test automation.

Attended Scrum meetings, tracked progress of Sprints and was responsible for task planning.

Used Android Studio as IDE.

Worked on existing large 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.

Collaborated with backend and development team to develop an Android app that interacted smoothly with remote content and web services.

Communicated with RESTful web services to obtain information using Retrofit, OkHTTP and Jackson.

Worked closely with the UI/UX, Testing and continuous integration team to ensure a high-quality product.

Mentored junior developers in emerging technologies and patterns such as Observer and RxJava.

Created asynchronous operations using multiple strategies: AsyncTask, Handlers, Loopers, Intent Services, and Loaders for Android.

Created Compound views for a more attractive and efficient design.

Created custom animation and transitions to improve the user experience following the Android material design principles.

Created innovative solutions in media streaming and mobile user experience by implementing the MediaPlayer and VideoView.

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.

Integrated different modules using Dagger2 dependency injection to ensure separation of responsibilities and create highly testable classes and objects.

Used Firebase to track analytics and app crashes.

February 2016 Android Mobile Application Developer

To April 2018 GrubHub – Chicago, IL

https://play.google.com/store/apps/details?id=com.grubhub.android

Grubhub provides fast food delivery from all your favorite restaurants, along with deals and specials you won’t find anywhere else. The app features an in-app live 24/7 customer support module. Payments with credit card, gift card and Venmo.

Utilized MVP and Singleton Design Patterns to design the app structure.

Worked in Android Studio with Java coding and on an MVP architectural pattern with other design patterns.

Used Javadoc for documenting the different modules, hardware, and software features.

Parsed JSON files to obtain data returned from web services.

Used SharedPreferences to store custom key-value pairs.

Used the location API and Google Maps API to pull up selections of nearby restaurants for which service was available.

Facilitated back-end communication with Retrofit and RxJava, managing threading to not tie up the main thread.

Implemented List View using the view Holder pattern to improve the performance.

Managed the look and feel consistency in both portrait and landscape views using Fragments and a master-detail view.

Enhanced the module that communicates with the Java Web Services with Retrofit.

Implemented full social network integration with Facebook, Twitter SDKs.

Implemented messaging with Push Notifications and GCM.

Used Crashlytics and Leak Canary for optimizing and debugging.

Did unit testing using Junit and Mockito and for instrumentation testing used Roboelectric.

Managed continuous integration using Git and remote repositories on BitBucket.

Used AndroidAsync library to implement network communication structure that features two-way communication between the client and server.

Used Jenkins Continuous Integration server and worked in a Test-Driven Development cycle.

Documented pages in Confluence to assist current and future developers.

May 2014 Android Developer

To February 2016 Capital One – McLean, VA

CAPITAL ONE CREDITWISE

https://play.google.com/store/apps/details?id=com.capitalone.credittracker

CAPITAL ONE WALLET

https://play.google.com/store/apps/details?id=com.capitalone.mobile.wallet

I worked on and launched two new Android mobile apps for Capital one, participating in all phases of the software development lifecycle, getting approval in the Google Play store and deploying the apps.

Utilized material design standards and pulled from architectural patterns MVC and MVP).

Worked in Agile environment with active scrum participation.

Programmed natively with Android SDK and it supported devices starting from KitKat.

Added BroadcastReceivers that corroborate the validity of a user’s login session with the backend.

Implemented the Repository design pattern to properly allow the remote consumption and local caching to drive the offline features.

Added push notifications natively with Android.

Assisted in approval for Google Play app store, and ensured all guidelines were met.

Used JIRA for new requirements, issues, bug tracking, and project planning.

Supported multiple screen devices using Fragments and width-aware layouts.

Used GSON library to deserialize JSON information.

Used AsyncTask to handle the communication to the web services.

Used RecyclerView and adapters to efficiently load data onto lists at runtime.

Used support libraries to ensure backward compatibility with older Android versions.

Refactored the existing modules and components from Dagger 1 to Dagger 2.

Implemented Dagger to work with a Dependency Injection environment to help with the unit testing.

November 2012 Android Application Developer

To May 2014 Hammer Print – Overland Park, KS

https://play.google.com/store/apps/details?id=com.hammermill.premium

App enables users to print directly from their phone or tablet via WiFi, Bluetooth, or USB cable without a computer to virtually any printer.

I worked on a 6-member Android development team consisting of Android Mobile Engineers, Device Firmware Engineers, and Project Managers. Highlight work tasks:

Redesigned mobile UI and implemented dynamic image sizing and support for multiple devices.

Wrote maintainable and reusable Java and C++ code with a focus on security and privacy.

Configured Apache James Mime4j MimeStreamParser for e-mail message streams in plain rfc822 and MIME formats.

Implemented callback mechanism to report parsing events such as the start of an entity header and the start of a body with the SAX XML parser interface.

Implemented Java CIFS Client Library (JCIFS) to implement CIFS/SMB networking protocol.

Integrated Dynamixsoftware SDK for printing and com.dynamixsoftware.printhand.PAYMENT_BROADCAST_PERMISSION.

Implemented subscriber/follower system as well as an invite system (client side).

Worked on system settings relating to Bluetooth: allow Wi-Fi Multicast reception, connect and disconnect from Wi-Fi, prevent phone from sleeping, etc.

Communicated with Calendar AP and content providers to read calendar events plus confidential information, read contacts, read web bookmarks, and history.

Helped deploy beta version of the app to the Play Store.

Deployed the app on the Android Marketplace and supported the app for different releases of Android OS.

Worked independently on integration of Loopj library for asynchronous HTTP requests, handling responses in anonymous call-backs.

Education

Masters - Computer Science Engineering- National Autonomous University of Mexico



Contact this candidate