Post Job Free

Resume

Sign in

Senior Android Developer

Location:
Columbus, OH
Posted:
March 23, 2023

Contact this candidate

Resume:

GLENN WHITE

Senior Android Developer

Professional Summary

A result-oriented Professional offering over 12 years of Experience building, integrating, testing, and supporting Android applications for mobile and tablet devices on the Android platform.

6 Apps published on play store; 1 app in Alpha test phase; 1 App built for internal corporate use.

Skilled in RxJava for multithreading and consumption of RESTful Web.

Ability to debug, diagnose performance bottlenecks and fix complex issues in Android.

Build mobile applications that utilize web services (REST, HTTP-based, XML, SOAP, JSON or other services).

Contribution Android teams with mentoring, development, and extensive code reviews.

Able to develop consistent, reliable code that is efficient and clean.

Collaborates well with cross-functional teams, finding ways to Add value for other teams, and contribute to overall quality and success of application.

Proactive self-learner skilled in adapting to new technologies, such as Smart Watches, Chromecast, and Smart TV devices.

Proficient in using best UI/UX best practices implementing fragments, diverse layouts, animations, Material Design, Compound Views, and custom Views.

Designed various applications using optimal architectural design patterns (Model View Controller, Model View Presenter, Model View View Model).

Experienced in integrating Android mobile apps with web services using Retrofit, Volley, Async Task, OkHTTP, JSON, GSON, and REST.

Extensive experience with source control code repositories such as Git, GitHub, and GitLab using tools like SourceTree as well as the command line.

Worked with continuous integration servers (Jenkins, Hudson, Travis) and implemented simultaneous testing on various devices.

Experience with continuous integration tools like Jenkins or Travis CI and automated testing frame Experience in working with Android SMS Manager, Location Manager, Google Maps, APIs, and Ajax.

Experience using 3rd party libraries for image loading, notifications, and web services.

Experience with embedded local storage solutions such as SQLite, Room DB, Shared Preferences, Encrypted Shared Preferences, internal storage, external storage and cloud storage with Firebase.

Technical Skills

Programming Languages & Tools

C, C++, C#, Java, JavaScript, Kotlin, CSS, XML, Linux, J2EE, Spring, JSON

Database

SQL, Oracle SQL, MySQL, SQLite, Mongo, Room DB, Firebase

Web Technologies

HTML, CSS, Node JS, ExpressJS, JavaScript, Ruby

Android Libraries

EventBus, Butterknife Retrofit, Room DB, LiveData, RxJava, Glide, Picasso, TextureView Video Player, RxAndroidBle, RxAndroid, EventBus, HttpLoggingInterceptor, Dagger2, Dagger1

Version Control

GitHub, Git, Source Tree, BitBucket

Architecture & Design Patterns

MVC, MVP, MVVM, Singleton, Builder, Factory, Facade, Dependency Injection

Debugging & Testing

Jenkins, Test Fairy, Robotium, Leak Canary, Mockito, Espresso, Firebase Hudson CI, Travis CI, JUnit, Monkey Runner, RoboElectric

IDEs

JCreator, Android Studio, NetBeans, Eclipse, Visual Studio, Gradle

OS: Windows XP/7/8/10, Mac OS

UI/UX

Android RecyclerView, Android ListView, GridView, CardView, ConstraintLayout, GuideLines, BottomNavigationView, LinearLayout, Vector Drawables, Animations, AnimationUtil

Scheduling

WorkManager, JobScheduler, Evernote Android Job, Handler, AlarmManager, Pending Intents

Issue Tracking

Jira, InstaBug

Experience

Sr. Android App Developer

September 2022-Present

Hanover, Maryland

Comcast

Xfinity

App: https://play.google.com/store/apps/details?id=com.xfinity.digitalhome&hl=en_IN&gl=US

App Description: The Xfinity app is the easiest way to to manage your Xfinity experience, now all in one place. Get online in minutes with seamless service activation and 24/7 real-time support anytime you need it.

Xfinity customers get all this, free:

• Everything you need to manage your account — pay your bill, view your plan details, change or upgrade your service

Technical Skills: Jetpack Compose, Retrofit2, Junit12, MVVM, Coroutines, Timber, Mockito, Permissions, Dagger2, Okhttp, Navigation, Bluetooth Permissions, Jenkins, Slack, Outlook, Zoom, Charles proxy, Kotlin, Android studio, Github, Jira

Developed modules in Kotlin using MVVM app architecture for ease of maintainability and extensibility, as well as improved quality testing.

Created Kotlin extension functions to make the code more readable and concise, programmed features/functions and modules in Kotlin.

Used Dagger for managing dependencies between different components of an application and enabling the creation of more modular, testable, and maintainable code.

Utilized RecyclerViews to display item lists.

Using an Offline-First model using Room Databases and migrate from SQLite implementation.

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

Participated in Agile meetings such as daily scrum stand-up meetings, biweekly gut checks, biweekly retrospectives, biweekly sprint planning and weekly Android backlog refinement meetings.

Worked closely with UI/UX designers and interacted with stakeholders, product managers and business units to gather requirements and ensure final product matched needs.

Used and sent tracking data from fused Location Provider to the server to track the device during deliveries.

Contributed to the technical documentation to increase the maintainability.

Implemented Google Maps for location search with the Google Location APIs.

Using Retrofit2, OkHTTP networking libraries to retrieve information relating to status and deliveries.

Using reactive frameworks such as RxAndroid, RxBluetooth, and RxKotlin.

Implemented Android UI test using Espresso and Mockito for critical functionality.

Utilized Relative, Linear, Constraint, and custom View Groups to layout views.

Interfaced with the payments REST API, extending the existing call to include the retrieved eligibility information to process the transaction.

Sr. Android Mobile Developer

February 2021 – August 2022

Columbus, OH

Wayfair

App: Driveway App

App Description: This allows the driver to both scan products for their delivery (both first and last mile), collect signatures from customers, navigate to each delivery, as well as take photos of each delivery

Technical Skills: Java, MVVM, MVP, Recycler View, Google Scribe, Google Firebase, Retrofit, Oauth, JUNIT, Espresso, Mockito, Intent, Location Services, Room and Shared Services

Leading the team and coordinated on object-oriented programming with the Android framework for the app

Worked on various files in both Java and Kotlin and refactored some legacy Java code into Kotlin.

Developed modules in Kotlin using MVVM app architecture for ease of maintainability and extensibility, as well as improved quality testing.

Using the Android Studio toolkit and identify and fixing existing anti-patterns in the code base.

Created Kotlin singleton objects to abstract consumption of data model layers into Repository layers.

Created custom and compound views to preserve the general look and feel specified by the client.

Began transitioning modules of the app from MVP architecture to MVVM, and applied SOLID principles throughout the Android mobile app.

Fixed null pointer exception crashes.

Added the following:

oTerms and Conditions feature to sign in.

oMetrics to failed log in to Google Firebase and Google Scribe.

oMetrics to a Successful Login to Google Firebase and Google Scribe.

oFeature to show the user when the battery percentage is low.

Created Recycler Views and their respective adapters to display all list information per UI/UX design requirements.

Handled web services calls for information and content data retrieval with Retrofit.

Assisted in new employee on boarding.

Peer Reviewed coding through PRs.

Updated the UI of the application for ease of use.

Assisted in spring grooming where I assigned points to tickets.

Worked on payment module to create a payment and process money transfer using OAuth2 tokens and multiple payment APIs.

Worked on unit tests extensively following TDD best practices, using JUnit, Mockito and Espresso for UI testing in the development process.

Used Intents and Intent Filters to initiate activities and pass information between Activities and Fragments.

Implemented Location Services for geolocation and geofencing.

Applied encryption techniques to encrypt local Room database.

Documented how the application is used when in offline mode as well as how it behaves when the user suddenly loses access to the internet.

Led presentations for tech demos and engaged in one-on-ones with peer developers.

Helped with German translation of the application.

Assisted in the launch of an EU version of the application (Germany).

Sr. Android Developer

Oct 20 – Feb 22

Remote

Walmart Labs: Project Glass

(App is still in Alpha)

Responsibilities:

Mentored Junior developers and assist in reading code base, perform code reviews etc.

Worked in an AGILE team and also play SCRUM Master (daily standups, weekly planning meetings).

Led discussions and contributing to technical decisions, striving for clean architecture.

Tech Contribution

Designed App Architecture, select necessary tools, frameworks and patterns with Android JetPack Architectural components (LiveData, ViewModel, Room)

Integrated Retrofit for network call handling.

Created analytic BLE beacons for tracking information.

Pulled server data using REST API, using Retrofit, okhttp and RxJava(RxAndroid) networking libraries.

Used Kotlin to update the code base to bring it more inline with the rest of the various modules.

Created functional test to ensure that new code is working properly and as intended.

Collaborated with external clients to include Branch SDK for mobile conversion, retention, and engagement through deep linking and user routing.

Use Mockito API for Capturing the arguments, wrapping java objects with spy and verify the calls on the mock objects.

Refactored code base to implement dependency injection strategy using Dagger library.

Created several components and factory interfaces to isolate app components into modular fashion.

Implemented background services to keep track of BLE connectivity and resolve issues with Android Oreo background limitations.

Coded schedulable jobs through WorkManager API.

Performed bug fixes on existing code and took part in code reviews.

Participated in sprint retrospective, where I gave suggestions on how to improve the work flow.

Defined migrations strategy with the implementation of Room database to remove previous SqliteOpen helper implementation.

Sr. Android Developer

Oct 19 – Sept 20

San Francisco CA

Everlance: Free Mileage Log

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

Responsibilities:

Collaborated with the server-side developers to design APIs specifically for the Android application.

Work in a multi-disciplinary team in London and alongside dev peers throughout US within an agile team (daily standups, weekly planning meetings).

Lead discussions and contributing to technical decisions, striving for clean architecture.

Tech Contribution

Designed App Architecture, select necessary tools, frameworks and patterns with Android JetPack Architectural components (LiveData, ViewModel, Room)

Worked with Android Beacon Library API to request ranging update from one or more beacons at a frequency of approximately 1Hz.

Exported data to CSV or PDF using Android PdfViewer and FastCRV external library.

Saved and backup a GPS "mileage receipt" for each trip using FireBase Cloud Backend and Realtime database services.

Upload paper receipts of meals, supplies, and other expenses with background threads using JobSchedulers and JobIntentServices to MongoDB backend.

Consumed Milage API, Accounts details API using Retrofit, okhttp and RxJava(RxAndroid) networking libraries.

Migrate and develop new products features using Kotlin programming language features and Android KTX.

Upgraded payments systems within the app by incorporating Stripe SDK to accept and manage card payments.

Collaborated with external clients to include Branch SDK for mobile conversion, retention, and engagement through deep linking and user routing.

Use Mockito API for Capturing the arguments, wrapping java objects with spy and verify the calls on the mock objects.

Refactored code base to implement dependency injection strategy using Dagger library.

Created several components and factory interfaces to isolate app components into modular fashion.

Implemented background services to keep track of BLE connectivity and resolve issues with Android Oreo background limitations.

Coded schedulable jobs through WorkManager Api to have routines for backup information from Mileage Website entries.

Contributed with proper documentation and KT documents to ease onboarding process for new developers.

Defined migrations strategy with the implementation of Room database to remove previous SqliteOpen helper implementation.

Sr. Android Developer

Aug 18 – Sep 19

Atlanta, GA

Mercedes me (USA)

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

Responsibilities:

Ensured new and existing applications met Mercedes requirements.

Code reviewed peer’s development.

Worked with Designers and Product Managers to agree product definitions.

Coded, debugged and united test systems per requirements and technical design.

Tech Contribution

Coded in existing MVVM architecture using Data Binding Library to bind UI components in the layouts to data sources.

Created Repository layer and abstracted monolithic ViewModel into view-case scenario.

Performed Offline database synchronization with Realm Database to display the latest news from Mercedes-Benz, View manuals and how-to videos.

Scheduled payments with Mercedes-Benz Financial Services using Google Pay API to request any credit or debit card stored in customer's Google Account.

Posted and update account and contact information with Backend API using Retrofit Form-Encoding and perform secure network traffic transmission.

Worked with Android NDK and use ReLinker library to load native libraries asynchronously.

Upgraded Splunk MINT SDK to collect crash, performance and usage data for your app and send it to our Cloud servers.

Worked alongside senior developer to use AltBeacon library to interact and get notifications when one or more beacons appear or disappear.

Addressed many of the development and performance issues that plagued reflection-based solutions using Dagger2 injection library.

Communicated with Amazon Web Services (AWS) for secure cloud services platform, database storage and content delivery.

Android Specialist

May17 – Aug 18

San Francisco, CA

DoorDash – Food Delivery

https://play.google.com/store/apps/details?id=com.dd.doordash

Responsibilities:

Worked with other developers to write software based on backlog items.

Worked with testers to ensure they are engaged and ready to test the software at the right time in the development cycle.

Supported, refactored and enhanced existing production systems.

Tech Contribution

Organized business logic, workflows, processes, rules in Domain layer and communicated with data/ presentation layer in MVP architecture.

Integrated OAuth2 authentication with Identity Server.

Enhanced the module that communicates with the Java WebServices with Volley library.

Collected customer data and send it to your tools for mobile analytics, marketing automation, and raw data access with SQL using Segment SDK.

Replaced Samsung Pay with card.io library for credit card scanning and BrainTree SDK.

Used Git flow for code integration, Jenkins for continuous integration and JIRA for bug tracking.

Worked on `Schedule Deliveries’ and `Real Time tracking’ acceptance criteria’s in TDD manner.

Wrote automated UI test cases using Espresso and functional integration testing using Robolectric API.

Performed additional beta testing using Google Cloud testing mechanism.

Encrypted card details in Android Keystore system to store cryptographic keys in a container to make it more difficult to extract from the device.

Native Android Developer

June 15 – May 17

Dublin, OH

Patient Medical Records & Appointments for Doctors

https://play.google.com/store/apps/details?id=us.drpad.drpadapp

Responsibilities:

Helped define development environment and communicate the best development practices within the organization (i.e., code reviews, testing, etc.).

Worked closely with other teams (Stakeholders, Product and UX) to drive product development in an iterative and agile way.

Participated in the relevant scrum events; planning and estimation, daily scrums, sprint reviews, and retrospectives.

Tech Contribution

Defined business rules for data manipulation and then processed the user's data with the help of Model and passed the results back to the View in MVC architecture.

Created and updated patient's appointments, visit history, and medical records locally using Realm database library.

Worked with Calendar API to send SMS and/or email appointment reminder.

Automated sync to secure AWS cloud at a specific time (Save data to cloud automatically) using Intent Services and Alarm Manager API.

Created automatic routines scheduling network requests and transparent disk and memory response caching with standard HTTP with Volley library.

Pair-programmed to work on Google CData Client library for HTTP transport, error handling, authentication, JSON parsing, media download/upload, and batching.

Incorporated VuDroid library to enable PDF functionality within the app.

Created Custom view circular ImageView to display profile images, material Dialogs, graphs, tabs and custom progress bars.

Worked with Behavior Driven Development frameworks such as Cucumber.

JR. Android Programmer

Sep 13 – May 15

Sterling, VA

AOL – News, Mail & Video

https://play.google.com/store/apps/details?id=com.aol.mobile.aolapp

Responsibilities:

Collaborated as a member of the team undertaking the shared commitment towards completion of the team's sprint goals.

Accepted joint responsible with the team for converting the Product backlog into 'Done' potentially releasable increments.

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.

Tech Contribution

Worked with NineOldAndroids library to include animating rotation, translation, alpha and scale.

Implemented disk-based LRU cache which specifically targets Android compatibility for accessing filesystem.

Optimized UI for different android versions and devices using Fragments.

Parsed JSON data using HTTP client (GET, POST, DELETE, PUT) Volley library and displayed in a listview following view holder pattern to display latest news and articles.

Upgraded Twitter SDK and Facebook SDK to share articles and videos.

Performed XML DOM parsing to weather information according to current location of the user.

Configured and send Notifications around breaking news and important emails using GCM with UrbanAirShip client.

Implemented data persistence using SQLite for caching data in the app device.

Associate Software/Android Engineer

May 10 to Sept 13

Columbus, OH

ACCENTURE/JP MORGAN CHASE

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

Responsibilities:

This was a sub-contracted role with JP Morgan Chase.

Under constant supervision, collaborated with multiple teams under JP Morgan Chase development team.

Participated in several Code-Labs and Courses covering technical discussions and increase code quality.

Tech Contribution

Successfully assisted multiple teams to build and deploy to both test and live servers.

Utilized version control software such as GitHub and Jenkins to deploy and monitor software releases.

Contributed to created multiple Jenkin pipelines to speed up build process.

Created small fixes to help software compile and deploy to large enterprise servers.

Effectively tested new software for bugs and defects for the JP Morgan consumer banking branch.

Including Microsoft Excel and HP Quality Center to both manage defects as well as creating test scripts.

Created several test cases using tools like Cucumber, Mockito and jUnit.

Worked closely with product owners and business analyst to ensure that any new functionality both worked but also did not break any existing functionality.

Collaborated with QA engineers to elaborate uses cases and implement pyramid test.

Applied happy path along with black box white box strategy to ensure code quality in multiple assignations.

Provided support to various software teams in migrating software access to a central access team.

Education & Certification

Bachelor’s in Computer Engineering from Devry University

Marketing Number: 380-***-**** Marketing email: adrgpy@r.postjobfree.com



Contact this candidate