Post Job Free
Sign in

Android developer

Location:
Atlanta, GA, 30318
Salary:
95$ Hour
Posted:
November 05, 2020

Contact this candidate

Resume:

PROFESSIONAL SUMMARY

Nearly * years’ Experience in Android Development; including Android performance profiling, memory and power management and optimizations.

Served as a technical lead within the company to develop the Android development technology stack.

Ability to manage competing priorities in a complex environment and maintain high productivity.

Experience in working with Video, Static content, and advertising.

Given high-level goals, the ability to ask the right questions, provide feedback to stakeholders, break down the tasks, and create a plan to achieve the intended result.

Experience working a significant consumer Android app that is currently available in the marketplace.

Considerable experience debugging and profiling Android applications.

Collaborated with Android product team to identify, prioritize, and document detailed product requirements.

Providing assistance to code merges, builds, deployments, and ensuring production stability.

Architect, design, develop and test applications from scratch.

Maintain high unit test coverage and continuous integration principles.

Cultivate an environment of excellence, through code design, code reviews.

Solid background in Android UI, Android SDK, Android design patterns.

Work with Product Management, Delivery teams and Project Management to translate Android requirements into tasks for deliverables.

Experience with messaging related technologies like GCM, SMS, MMS, XMPP, SMTP.

Solid background in OOP and knowledge of software design patterns/best practices.

Familiarity with agile/iterative development methodologies (XP, SCRUM, etc.).

Capable of understanding business objectives and be able to translate that business logic into Android mobile app design.

Setup various accounts of mobile analytics tools: Mixpanel, Flurry, Crashlytics, Answers, Google Analytics.

Proactive self-learner who adapts to new technology such as Smart Watches, Chromecast, and Smart TV devices.

Proficient with multiple IDEs tailored for Android Development (Android Studio, Eclipse).

Excellent in modeling and translating business models and requirements to use cases and diagrams.

High capacity to constantly learn latest Android mobile device technologies such as Smart Watches, Android Smart TV’s, Chromecast.

Use of the Android frameworks to load data asynchronously like Loaders and SyncAdapters.

TECHNICAL SKILLS

Android Development

Android Emulator, BitBucket, Eclipse

Android Studio, IntelliJ, NetBeans, Retrofit, Jenkins, RxJava, Volley, Firebase, GSON, JobScheduler, JUnit, Espresso, EventBus, LeakCanary, Loaders, MVP, Android Studio, Bluetooth Low Energy, Glide, Git, Push Notifications, Google Cloud Messaging, Dagger, Dependency Injection, JIRA, Material Design, Eclipse, Android Native Development Kit (NDK). Visual Studio

Competencies

Software Development Life Cycle (SDLC)

Templates, algorithms and data structures

Architecture & Design Patterns

JAXB XML, UML Star, Proto.Io, Prototyping

MVC design pattern. MVP

Database Technologies

MySQL, SQLite, Oracle, Access

Power Architect,, Core Data

Project

Methodologies Agile Scrum, Waterfall

XP Extreme, KanBan

Programming Languages

C, C#, C++, PHP, Kotlin

Java, JavaScript, Action Script, SQL

Perl, Ruby, PhoneGap, Lisp, GO

jQuery, JavaScript, HTML, CSS, Bash

Unix Shell

Web Services

REST, SOAP, JSON, XML, AJAX

RESTful APIs

Networking

Windows Server, Unix, Linux, Windows, Red Hat, Virtual Box, TCPIP, FTP, DNS, DHCP

Multimedia

Picasso, Glide, Fresco, VP8, H264 and mpeg4 codecs, Audio support with speex, G711,ILBC, GSM, SILK, G722

Quality

TDD, Unit Testing, Automated Testing, JIRA, Junit, Jenkins, Written Test Cases, Android Testing(Robotium), Junit, Espresso, Roboelectric, DDMS tool, ADB

LeakCanary, Mockito

Android OS

Android 1.6. Donut

Android 2.1. Eclair

Android 2.2. Froyo

Android 2.3. Gingerbread

Android 3.0. Honeycomb

Android 4.0. Ice Cream Sandwich

Android 4.1. Jelly Bean

Android 4.4. KitKat

Lollipop 5.1.1

Marshmallow 6.0.1

Nougat 7.1.1

Oreo 8.0

Android P 9.0

PROFESSIONAL EXPERIENCE

May 2019

~

Present

Delta Airlines

Atlanta, GA

Senior Android Developer

I was foremost brought onto Delta to serve as a high-standards, efficient member of the mobile team to quickly ramp up on POD work and drive feature completion. Through my tenure, I’ve implemented 3 major initiatives. PSD2, the second iteration of the payment services directive, was a mandate by the European union that requires payment processors to inject an additional payment verification by a card issuer in order to reduce fraudulent transactions. For the implementation, we leveraged the SDK of the payment authentication solutions company, Cardinal, along with our internal APIs. I worked on integrating new rest calls by our backend team to follow a BFF (backend for frontend) approach aimed at reducing the number of APIs consumed by the app and ultimately the number of screens a customer is required to interact with during the checkout flow. Lastly, I worked on a project called MAC (Miles as Currency) Bags which allows a customer to purchase check-in baggage using award points (in our case, SkyMiles). This was particularly interesting as I got the chance to use the NavController component in the Android Jetpack to start a refactor for a particularly cumbersome but important legacy class responsible for our Check-In flow navigation. Around midway-through, my code-quality recognized me as a lead developer to which I was delegated tasks such as being the final approver for merge requests, performing release cuts & technical interviewing.

FlyDelta: https://play.google.com/store/apps/details?id=com.delta.mobile.android&hl=en_US

Refactored legacy code implementations to use MVVM architecture for maintainability & testing.

Utilized RxJava operators to efficiently handle data streams returned from API endpoints.

Created custom Dagger scopes for common utility classes for injection via lazy loading to improve performance.

Created unit tests to cover feature implementations using JUnit & Mockito.

Created integration tests using Espresso.

Utilized Calatrava framework to write shared logic across Mobile Web, iOS & Android projects using Javascript & CoffeeScript.

Utilized SOLID principles as well as Android + Sonar linting suggestions to ensure code quality.

Attended daily scrum sessions to keep progress up to date and communicate blocking issues.

Maintained Android code repository in Gitlab and used Git to manage source code.

Managed day-to-day activity with AGILE methodology.

Used JIRA for ticket tracking as well as velocity & burndown.

API testing & debugging using Postman.

Worked in Android development environment using Java, Kotlin, Javascript, and CoffeeScript.

Technologies: Android Jetpack, Dagger, RxJava, Retrofit, MVVM, Calatrava, Cardinal, JobScheduler, Butterknife, Junit, Mockito, Powermock, Gitlab, Git, Appium, Calabash, Postman

May 2018

~

May 2019

Telenav

Santa Clara, CA

Senior Android Engineer

I worked on a wide-range of applications during my tenure at Telenav. I initially started out working on the Scout app to which I implemented new UI specs and integrated Facebook connectivity. A few months in, I transitioned my work to our internal app, ARP, that is used as the baseline to develop common features for our client specific applications. I worked on two major initiatives, Amazon Alexa voice assistant deep integration and electric vehicle mileage estimator & charging station locator, both of which centerpieces of our showcase at CES 2018.

Scout: https://play.google.com/store/apps/details?id=com.telenav.app.android.scout_us&showAllReviews=true

ARP: proprietary internal app

Integrated Alexa Auto SDK into core app to allow for deep integration of a virtual assistant guided, touchless navigation system.

Gained familiarity with AWS authentication and login.

Created an electric vehicle charging station locator by populating a database of known charging stations nationwide and using the new architecture components Room, ViewModel and LiveData.

Refactored legacy AsyncTask implementations to use Kotlin coroutines.

Refactored an Android module codebase to MVVM architecture to decouple the business from the view logic & create unit tests.

Managed day-to-day development team project activities with Agile methodology.

Used JIRA to track team velocity, burndown, ticket progression, and backlog.

Attended daily scrum to update team on progress and to track overall team performance.

Used Git repository to manage source code and provide version control.

Hosted repositories and remote source code using Bitbucket.

Assured build quality through Jenkins continuous integration (CI).

Collaborative editing and documentation using Confluence.

Used sequence diagram and flow charts to visually present improved processes and workflows for prototypes.

Performed code reviews on team member pull requests to ensure quality.

Sideload APK and lib files to vehicle test unit using ADB.

Implemented Google Street View to allow a user to view their real surroundings upon arrival.

Implemented TensorFlowLite machine learning to prototype an AR collision avoidance solution.

Integrated C++ business logic using Android NDK and Native Java JNI.

Used SoapUI for API sandboxing and debugging.

Worked closely with UI/UX design team on app design, using Zeplin to collaborate with the design team.

Cross-checked provided UI components with Material Design guidelines.

Converted legacy ListViews to RecyclerViews.

Integrated open source Facebook SDK for account login/link and share functionality.

Integrated Yelp APIs to expose user reviews about searched points of interest (POI).

Technologies: Worked in a Java, Kotlin environment, implementing Dagger, RxJava, Coroutines, LiveData, Room, SqlLite, TensorFlow and Google Locations API

March 2017

~

May 2018

Ridecell

San Francisco, CA

Senior Android Mobile App Developer

Ridecell is a software development company with a proprietary mobility platform from which it creates custom apps for client companies. The mobility platform is used to enable business involving car sharing and ride sharing. These core apps allow users to locate nearby vehicles designated for Carsharing. Users can then choose and reserve a vehicle for an unspecified amount of time. I worked on three apps for Ridecell’s clients, BMW, AAA & Ferrovial w/ Renault.

Gig Car Share https://play.google.com/store/apps/details?id=com.gigcarshare&hl=en

ReachNow CarSharing https://play.google.com/store/apps/details?id=com.reachnow.carsharing&hl=en

Zity https://play.google.com/store/apps/details?id=es.zitycar.carsharing

A challenge in working with this Android app was molding the same core Android app to fit the needs of multiple customers. The same core app code was used for the various customers with flavors to alter the branding.

When I joined the Android team, it was experiencing some unique challenges which allowed me the opportunity to stretch my organizational development, process improvement skills as well as development skills.

I also worked on an autonomous fleet-management prototype. A mobile app combined with a newly built infrastructure platform would allow vendors to set up a job management integration to which workers would be automatically dispatched for routine vehicle maintenance and trouble calls in regard to their autonomous vehicle operations.

Bleed through – custom functionality for one customer would sometimes bleed over into another customer’s app causing unintended effects due to conflicts.

Lack of quality testing processes. Due to lack of a good automated testing process, quality was reliant primarily on manual testing. This limited the team by time and labor resulting in scope creep and inefficiency.

Lack of a well-defined process methodology. Typical of start-up growing pains, there were very few concrete processes, no consistency of use and a lack of any planned process system.

Following are some of the technical responsibilities and tasks involved:

Created user interfaces in Android Studio and JIRA for project status and tasks.

Used Zeplin mockups provided by the Android mobile design team for UI.

Extensive use of Google Maps library including geofencing, dynamic marker placing, marker clustering, reverse geocoding.

Used Geofencing to deliver notifications to users inside of a specific area or when moving outside of a specific area and used reverse geocoding to allow user to retrieve address based on map by dragging a pointer.

Showed real-time vehicle locations and clusters using Firebase.

Created test-driven Android app architecture using MVP and Mockito.

Served as Android lead in 3 product delivery sprints; took part in daily team and POD standup meetings; delivered weekly presentations of new functionality to internal team; presented app demo to stakeholders and answer questions.

Used WebViews to allow stakeholders to deliver custom HTML views in app.

Hosted SDK library in JitPack.

Interacted with Web API to send commands to authenticate user and send commands to vehicle.

Coordinated with iOS team for feature, behavior and UI parity.

Revised Android app permission request architecture using EasyPermissions.

Separated Android core feature functionality into SDK to be used as library for generic app.

Converted legacy Java code to Kotlin and added helper methods using Kotlin extensions.

Used Retrofit to perform all network requests.

Used LeakCanary to detect, analyze and fix memory leaks in Android.

Cached Android app data in shared preferences to reduce mobile data usage.

Authenticated Android user using Android Fingerprint API.

Tracked complex UI layout changes uses state factory pattern.

Used EventBus to handle inter-fragment, inter-activity communication.

Configured CI integrations with Jenkins automation server

Configured Push Notifications with Urban Airship SDK

Used RxJava to chain complex asynchronous operations

Utilized Room persistence to cache local data for offline-capability and data usage reduction

Technologies: Android SDK, Android Studio, Java, Kotlin, MVC, MVP, Espresso, Firebase, Git, GitHub, CircleCI, Jenkins, JitPack, Retrofit, Android Annotations, LeakCanary, Butter Knife, EventBus, SSL Pinning, Xcode, Swift, Firebase, Web API, JIRA, SCRUM, Slack, Zeplin, Postman, Jumio, Stripe, Braintree, Confluence, Quip, EasyPermissions, Recycler Views, Shared Prreferences, Mockito

Jan 2015

~

Feb 2017

Walmart

Bentonville, AR

Senior Android Mobile App Developer

Walmart Pay lets users pay at the store using their phones. Savings Catcher compares prices on your eligible purchases with any lower prices in your area.

Pharmacy module allows for ordering, transferring, and tracking prescriptions and refills. There is also a gift registry which can be created in-store using scanner. Share lists on social media. Savings with push notifications, and in store check-in for pick up with the Android app. The app provides location finder, in-store product finder, store availability and store info.

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

Following are some of the technical responsibilities and tasks involved:

Worked in accord with the visual standards team to make certain the mobile application complies with system UI/UX standards.

Trained and mentored new Android team members on the team in coding best practices, like memory management, network consumption.

Implemented RadaeePDF SDK Android for read, view and modifies PDF files.

Worked with Broadcast Receivers to receive system notification which was later used to send out reminders.

Maintain high unit test coverage and continuous integration principles.

Configured manual and generated content providers using Schematic.

Used Picasso to improve the image rendering on the Recycler Views.

Consumed Restful Web service in JSON strings using Retrofit.

Prioritize the technical architecture and technical debt of the Android app.

Programmed the locale to support different languages.

Implementation of different user interface components such as WebView, ImageView, TextView and ListView to display the data for the application.

Integrated comScore for an in-depth view of interactions and conversion including detailed information about usage by device and type.

Generated the application with a Model View Presenter architectural design pattern to help with the modularity and maintainability.

Automated testing using Espresso, and wrote test scripts in jUnit and Mockito for unit tests.

ProGuard for obfuscation, and used Glide to manage images with performance.

Utilized Jenkins for continuous integration of the Git code base managed with BitBucket om the Android team.

Android app Dependency Injection with Dagger and Butter Knife.

Configured the Mobile Back-End services using a Firebase instance building the database and setting the code cloud.

Created Lazy Lists for loading the images from the web & store them into the cache of the Android application.

Incorporated Push Notification with MixPanel for sending messages to the users.

Project followed an Agile Scrum methodology with Daily Scrums and bi-weekly sprints.

Built Android Activities using compound and customized views

Used image manipulation and animation, including techniques like alpha blending.

Implemented Android UI layout and created Wireframes with Balsamiq Mockup.

Technologies: : Android SDK, Android Studio, Java, RadaeePDF SDK, REST, JSON, GSON, Git, JIRA, Confluence, Agile, Scrum, Material Design, UI/UX< MixPanelPush Notifications, Firebase, comScore, MVP, Balsamiq Mockups, Mockito, jUnit, alpha blending, RadaeePDF SDK, ListView, LazyLoad, Picasso, Retrofit, ProGuard, Glide

Feb 2014

~

Jan 2015

Avis Car Rental

Parsippany, NJ

Android Mobile App Developer

The Avis Android app makes it easy for users to find and rent a car sing just the mobile device in any location. Android features include the ability to make, modify or cancel reservations 24/7. Book direct and pre-pay for the lowest rates online. Access to Avis Now for preferred members, upgrade, pick up and lock/unlock car with the app.

Includes nearby locator and roadside assistance.

Avis: https://play.google.com/store/apps/details?id=com.avis.androidapp

Following are some of the technical responsibilities and tasks involved:

Managed the project and implementation in Android Studio for IDE and JIRA for task and issue tracking/

Used ProGuard to shrink, optimize, and obfuscate the code for the Android app.

Contributed to well-designed user interface (UI/UX) using Balsamiq Mockup, creating multiple layouts in different physical devices.

Managed code review sessions to always have high quality Android code (reusable, simple, documented).

Used enhancement for multi-device compatibility for a variety of Android devices.

Displayed images using the Picasso library.

Mentored a Junior Android developer on software development best practices.

Implemented Loaders and AsyncTaskLoaders to perform the data loading in the User Interface along with efficient threading.

Conducted interviews and meetings with stakeholders, users, and the technical team.

Work effectively with mobile UI designers who are obsessive about pixel perfection.

Introduced the Google Maps API integration for the Android application.

Added Android support for Google Nexus Player and Amazon Fire TV.

Participated in all stages of software development including defining product vision, gathering requirements, software system design, coding, testing, release, and support.

Used Retrofit to implement RESTful calls to receive JSON based response and parsed to display data to the user, translating JSON objects with GSON.

Guide the integration of APIs successfully with highly performant/critical integrations.

Configured Git and Bitbucket servers as the software version control tools.

Used Google Maps API and Google Location server to ping the coordinates of the user and get feedback with the application.

Participated on the setup procedure for the Hudson server for continuous integration.

Used GCM for various message classes.

Avoid memory leaks and ANR using Leak Canary and memory monitor tools for Android apps.

Turned technical specs into Android multi-panel Activities created using Fragments for better form factor adaptability.

Wrote Android technical documentation for developers.

Joined a team of 4 Java developers for this Android project.

Implemented an MVP UI pattern as the basic layer architecture of the app.

Technologies: Android SDK, Android Studio, Java, ProGuard, GCM, REST, JSON, GSON, Git, JIRA, BitBucket, Confluence, Agile, Scrum, Material Design, UI/UX, MixPanel GCM, Push Notifications, MVP, Balsamiq Mockups, Mockito, jUnit, ListView, LazyLoad, Picasso, Retrofit, ProGuard, Google Maps, AsyncTaskLoaders, ANR

May 2012

~

Feb2014

Spark People, Inc.

Cincinnati, OH

Android Mobile App Developer

The Spark company provides online apps and mobile apps to support healthy diet, fitness and weight loss. Spark people Calorie Counter and Diet Tracker is the largest food database of any food tracking app (over 3,500,000). The healthy Recipes app features over 500,00 healthy recipes with an elegant search by ingredients, courses, dietary needs, occasions and more search parameters, including video demonstrations. People Pep is a community app to bring people together for support, fun and sharing.

Spark People Mobile: Calorie Counter and Diet Tracker

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

Spark People Healthy Recipes

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

SparkPeople Pep

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

Following are some of the technical responsibilities and tasks involved:

Worked with an internal QA team on system, performance, and acceptance testing.

Transitioned app IDE from Eclipse to Android Studio during the project.

Tested the user interface implementing Espresso.

Detected new improvement opportunities and implemented them using Volley Library and persistent data.

Retrofitted four legacy list views to the new RecyclerView / CardView combination, obtaining all the performance benefits.

Attended daily SCRUM meetings to track app development progress.

Developed Unit Test and Stress test cases with JUnit.

Peer reviewed code using Agile Software development.

Independently developed and expanded native mobile applications for Android platforms according to specifications handled by a design team or the clients.

Participated in planning meetings for the app and the overall system

Identification of issues during the test cycles.

Implemented early versions of the Floating Action Button with the usage of third party libraries.

Worked with SQLite to cache structured data from the cloud, improving overall app performance.

Designed Widgets for the purpose of keeping track of tasks and reporting object completed updating your stats.

Integrated AppsFlyer to track application campaigns and app metrics.

Introduced Parcelables for object transfers within activities.

Stored data in SQLite and with a Content Provider security layer.

Integrated with various NoSQL databases, and content services using Retrofit for asynchronous connections and multithreading.

EDUCATION & TRAINING

Bachelor of Information Technology

Clayton State University



Contact this candidate