Post Job Free
Sign in

Android Developer

Location:
New York, NY
Posted:
January 09, 2023

Contact this candidate

Resume:

Profile Overview

* ***** ** ********** ** Android

* **** ** **** *****.

Experience interacting with RESTful API and data formats like (JSON, XML, etc.).

Experience with continuous integration tools like Jenkins or Travis CI and automated testing frameworks such as Espresso.

Utilize coroutines to implement cooperative tasks, exceptions, event loops, iterators, infinite lists, etc.

Knowledgeable about building scalable code using different libraries (Dagger, RXJava, Retrofit/Volley, Room DB, Volley, Android ViewModel, LiveData).

Hands on applying Hilt to optimize the implementation of dependency injection.

Skilled working UI/UX design with experience including RecyclerView, Animations, ConstraintLayout, Vector Drawables, 9Patch PNG, and Bottom Navigation View.

Hands on with Zeplin collaboration tool.

Work in Agile environments with strong SCRUM and pair programming fundamentals.

Cultivate an environment of excellence, through code design, code reviews, and Android best practices.

Set up proper interactions of the front-end design and implementation with backend servers.

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

Collaborate with the product team to identify, prioritize, and document detailed product requirements.

Skilled programming in Kotlin and Java languages to build Android applications.

Work with Android JetPack components.

Created multiple instances of Content Providers using a native approach, SimpleContentProvider, and Schematic.

Efficiently consumed and managed RESTful web services with XML and JSON formats.

Hands on experience migrating old Android Media player to the Android ExoPlayer streaming library to support dynamic adaptive streaming.

Well versed on requirement gathering, technical documentation creation, and wire frames.

Knowledgeable of the structure and parsing process of JSON, XML files used to store data (GSON, Jackson, Moshi, Protobuffer).

Comfortable with source control software programs such as GIT, GitHub, GitLab, BitBucket, etc.

Experienced with Android Layouts and using ConstraintLayout to build complex UI/UX.

Well versed using the Android navigation component from Android jETPACK

Experienced implementing application data persistence using SQLite, Android SharedPreferences, and External and Internal storage, and Android Room Database.

Proven skill with reporting systems such as Play Console Reports, Firebase Crashlytics, Splunk, InstaBug, and Fabric.

Demonstrated skill applying dependency injection using tools such as Koin, Dagger2 and Hilt.

Demonstrated sill applying threading with tools such as RxJava, RxAndroid, Kotlin Coroutines, Intent Services, Work Manager, Handler, Threads, and Loopers and Loaders.

Hands-on applying web services, including JSON, XML, GSON, and CharlesProxy.

Adept at applying Object Oriented Programming (OOP) architecture and design patterns (e.g., Singleton, Dependency injection, Builder, Factory, Model-View-Controller (MVC), Model–view–presenter (MVP), Model–view–view model (MVVM), etc.) to Android Mobile application developments.

Skilled with testing/debugging tools such as JUnit, Leak Canary, Espresso, and Android profiler.

Experience developing rich application Android UIs.

Experience with social media web services, libraries, APIs and SDKs such as Facebook, Youtube, Instagram, Google + and Twitter.

Experience working a significant consumer app that is currently available in the marketplace. Good experience with Firebase Push Notifications, Google Maps, Android Navigation, GPS

Technical Skills

Programming Languages: Kotlin, Java

Tools: Android SDK, Android Studio, Eclipse IDE, Gradle, MySQL, NDK

Dependency Injection: Butterknife, Hilt, Koin, Dagger2

Google API: Google Maps, Google Places API, Google Play services, Google Invites/Pay, ExoPlayer

Methodologies: Agile, Scrum, XP, Waterfall, TDD, Kanban

Testing/Debugging Tools: Espresso, Mockito, MockK, Android Profiler, Leak Canary, Robotium, Logcat, UIAutomator, Monkeyrunner Traceview, Hierarchy Viewer, DDMS, TestFlight, Crashlytics, SonarQube, TestCloud

Cloud Messaging: Firebase, Airship, Pushwosh, MixPanel, GCM

Databases: MySQL, SQLite, Realm, ORMLite, Room

Continuous Integration: Circle CI, Travis CI, Jenkins, Teamcity, Bitrise

Android Project Work

Goldman Sachs, New York, NY 08.2021 - Present

Senior Android Developer

https://play.google.com/store/apps/details?id=com.marcus.android&hl=en&gl=US

Marcus by Goldman Sachs offers personal finance tools to help you save, borrow, and invest. Grow your money with a high-yield Online Savings Account, high-yield CDs and No-Penalty CDs. Pay down high-interest debt with a no-fee personal loan. Automate your investing with Marcus Invest. And you can connect thousands of financial institutions to Marcus Insights -- free tools and trackers that help you organize and optimize your finances.

Migrated to Jetpack Compose by adding compose to an existing screen built using Android views and managed state in composable functions.

Performed gRPC authentication, including gRPC’s built-in error codes with use of SSL/TLS to authenticate server and encrypt all data exchanged between client and the server.

Implemented the UI and integrate custom analytics and security SDKs for new features and initiatives, working closely with iOS developers and backend services.

Implemented LiveData components.

Worked to complete migration from RxJava into Kotlin Coroutines and Flow from the Data layer to the Presentation layer (MVVM).

Applied Hilt to so simplify Dagger-related infrastructure for the app.

Made use of the Zeplin plug-in.

Used RecyclerView, CardView and SwipetoRefresh to improve performance and user experience.

Worked in Android Studio IDE.

Built UI layout using standard Android dev tools and adhering to best-practice principles for Android.

Worked in a MVVM architecture.

Authenticated users via Fingerprint scan API and implementing the user interface for the fingerprint authentication flow.

Ensured Room data persisted to was transparently encrypted and decrypted with standard AES-256 encryption.

Utilized Hilt for dependency injection.

Utilized two-way data binding to communicate between ViewModel and XML files.

Performed unit and system tests with JUnit, Mockito, MockK, and Espresso.

Utilized Cucumber for TDD (Test Driven Development).

Utilized JIRA for tracking stories and the story progression through the Development, QA, and Acceptance Testing.

Programmed in Kotlin as the main code language for the Android application.

H-E-B, San Antonio, TX 06.2020 – 08.2021

Senior Android Software Developer https://play.google.com/store/apps/details?id=com.heb.myheb&hl=en_US

H-E-B is an American privately held supermarket chain with over 350 stores throughout Texas.

The My H-E-B app allows customers to order curbside pickup and delivery, make shopping lists, redeem virtual coupons, and locate items in the local store.

Developed modules in Kotlin using MVVM app architecture.

Worked with ViewBinding to manipulate UI elements and used kotlin Coroutines for asynchronous tasks.

Applied relational DBMS skills using MySQL, PostgreSQL, and other DBMS products.

Utilized LiveData to simplify data retention and updates during configurational changes.

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

Integrated Hilt dependency injection.

Utilized Parcelable Objects to pass data across different activities.

Implemented multithreaded programming to handle long running operations in the form of suspend task using Coroutines building block launch and async.

Utilized Location Services to determine the user’s closest store locations.

Used Pending Intents along with work manager to handle database updates after a boot was completed.

Implemented Barcode API to enable customers to scan barcodes for products and check prices on the go.

Added animations to shopping menu to catch attention of users.

Added floating action buttons for quick access to customer shopping cart.

Utilized Picasso image processing for product menus.

Used Google Maps Android API to display local store locations using GPS.

Added Push Notifications through Backend support with Push Notifications and FCM.

Applied Git for code versioning control.

Worked on the feature to sign up and create a user account for mobile payments.

Included some pair programing and code reviews, and mentored Kotlin developers on Android best practices.

Modified Bottom Navigation bar to allow the user to smoothly transition from the Home screen to the shopping lists, coupons, and user account information.

CarMax, Parkway Richmond, VA 04.2019 – 06.2020

Android Mobile App Developer

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

Find, search, and browse used cars with CarMax, America’s #1 used car retailer. Download the CarMax app today to shop and find the right car, truck, or SUV for you.

Save time car buying with CarMax and search a nationwide inventory of 50,000+ used cars, SUVs and trucks.

Coded ‘car financing and make payments’ Android feature in MVVM clean architecture on data, domain, and presentation layer.

Generated app build on Android MVVM architecture.

Added databinding from Android JetPack to add new features to MVVM architecture modules.

Implemented observable data patterns using Android JetPack LiveData to make server data observable.

Built networking module to filter cars by price, mileage, colors, transmission, and display in Recycler view(View Layer) using Retrofit, OkHTTP, executors and kotlin coroutines.

Wrote and maintained existing unit tests (TDD) and helped drive forward BDD.

Created Kotlin coroutines for asynchronous execution and databinding.

Integrated Kotlin Koin dependency injection to describe dependencies into modules and sub-modules, provide a factory bean definition, and resolve a component dependency.

Handled the stream of data asynchronously that executes sequentially using Flow API.

Integrated MockK for unit and integration tests, create a Partial Mock with Spies and Mock a Call That Uses Kotlin Coroutines.

Implemented live streaming feature to render video stream between two endpoints using ExoPlayer and Comscore SDK.

Used Git with GitHub and GitLab servers for source control.

Debugged API requests/responses through the Charles web proxy.

Used Dagger 2 and Hilt for dependency injection.

Improved efficiency and readability of defective code modules through code refactoring and optimization utilizing SOLID principles.

Transformed one type of data to another, reduce map or expanded streams using Kotlin flows and coroutines operators and performed concurrent HTTP requests using schedulers.

Worked on securing the network traffic with Certificate Pinning to verify identity of the Host via SSL handshake along with AES encryption principle.

Travelocity, Dallas, TX 03.2018 – 04.2019

Android Software Developer

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

Find, research, and book a hotel room with the Travelocity app.

Used constraint layouts for new screens.

Worked on third Party tools and libraries with QR scanning, custom dialog boxes and progress bars, as well as various API’s to help calculating travel (such as Google’s Distance Matrix API) and Braintree Payment Processing to ensure safe transactions.

Used Android Studio as IDE in Android application development.

Performed programming in Java and Kotlin.

Programmed new functions in Kotlin and converted some existing Java functions to Kotlin.

Helped convert architecture from MVP to MVVM.

Utilized Dagger for dependency injection.

Created multiple scripts in the Gradle file for test automation, reporting, signing and deployment.

Made use of testing libraries and frameworks JUnit, Espresso, and Mockito.

Utilized Room persistence library to save web service responses and to act as the single source of truth for the application data.

Designed CustomViews to implement UX designs and for the reusability of the views created.

Used social media authentication such as Facebook and Twitter APIs for incorporating features such as logging in, liking items, and sharing product announcements

Used a private Git repository for the Android code base working with BitBucket.

Used custom views to easily reuse components built to UI/UX design specifications.

Implemented services and broadcast receivers for performing network calls to the server.

Worked with Jenkins CI server for continuous integration and followed Test-Driven Development (TDD) methods.

Analyzed and troubleshooted the application using tools like the Android Profiler, and DDMS.

Integrated PayPal SDK to receive a one-time payment from customer's PayPal account or payment card (scanned with card.io).

NerdWallet, San Francisco, CA 03.2017 – 03.2018

Android Software Developer

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

Discover the insights you need to make the most of your money. Start with the big picture and see all your financial accounts on one screen. Or zoom in on the details of your cash flow, expenses, credit score and net worth. Plus, get Nerd-approved tips to build it all.

Integrated custom DSK to link PayPal account, communicate with Customer Balance Transactions API, Visa token service, ATM locator and Visa card eligibility Restful web service

Replaced legacy Java code with Kotlin coroutines, sealed classes, Anko, extension functions, delegate properties, null safety checks and higher-order functions.

Refactored code base from MVC architecture design pattern to clean code 3-tier architecture in MVP,

Enabled Google Pay configuration to return appropriate payment credentials for transactions subject to Strong Customer Authentication (SCA) with Payment data cryptography.

Integrated OpenCensus library to collect application metrics and distributed traces, then transferred the data to backend database.

Integrated Ad Science SDK to measure ads and to address issues around fraud, view-ability and brand risk in TDD environment

Wrote custom services using JobDispatchers library to download pdf statements, credit score history and spending history.

Utilized functional interfaces, SOLID principles and code common modules to create accounts and set passwords, add or remove accounts and read Google service configuration

Android Mobile Developer 05.2016 – 03.2017

O&P Technology Corp. San Francisco, CA https://play.google.com/store/apps/details?id=jp.pioneer.avsoft.android.icontrolav2014

Not only can you control the basic features of your AV receiver like volume, switching inputs, select the listening mode and power on and off. iControlAV5 turns your Android device into an advanced remote control, giving full control (i.e., SOUND EXPLORER) of your new AV receiver, and in a fun and intuitive way.

Utilized Activities, Services, Broadcast Receivers, SQLite, and preferences Android components.

Worked on an Agile team and employed a Scrum methodology, with prototype presentations occurring every 2 weeks.

Utilized foreground services with Media Player and Exo Player to play tracks.

Used Material Design to adapt the User interface.

Interfaced with SQLite for storing information.

Applied Dalvik Debug Monitor Server (DDMS) for debugging and testing.

Used Jenkins and GIT for efficient and clean code integration and backup.

Applied Picasso to download images and show them in the UI.

Supported Spanish and German languages.

Created multiple versions of the app (free, trial, and paid) with the use of flavors set up in the build Gradle file.

Incorporated fonts and styles with Calligraphy lib.

Utilized SQLite for embedded local storage.

Managed memory leaks in debug builds with LeakCanary.

Education

Bachelor of science in computer engineering - Fairleigh Dickinson University



Contact this candidate