Post Job Free

Resume

Sign in

Senior Android Developer

Location:
Madison, WI, 53704
Posted:
October 31, 2023

Contact this candidate

Resume:

Aaron Ben Shalom

Android Developer

608-***-**** adzo0j@r.postjobfree.com

RESUME SUMMARY.

•Years developing Android apps: 9+.

•Android apps published to Play Store: Nelnet (Loan Payments), Longhorn Steakhouse app (restaurant), Finish Line, Inc., (retail consumer products), Rigid Software app solution (specialized technology), and Chubb app (insurance).

•Implement dependency injection using Dagger 1, Dagger 2, and Butter Knife.

•Experience with Android SDK (multiple versions) with Android development in Java and Kotlin.

•Skilled in a variety of tools and IDEs – Android Studio and Eclipse.

•Experience prototyping mobile experiences.

•Experience consuming third-party APIs in Android development projects.

•Handle Android Data Binding with JetPack and use JetPack ViewModels.

•Handle continuous integration using Travis, Jenkins, and Circle-CI).

•Follow the best practices for requirement gathering, design documentation, code review, testing, and defect fixing.

•Experience multithreading with back-end communications using Threads, Handlers, Asynctask, Volley, Retrofit, and RxJava.

•Hands-on with integration testing suites JUnit, Mockito, and Espresso.

•Work effectively with UI designers and implement according to Android style guidelines.

•Configure services including Parse, Firebase, and Google Cloud Messaging on Android apps.

•Experience in Messaging, Bluetooth, and Wi-Fi connectivity with Android devices.

•Knowledge in designing and developing adaptive UI components, and widgets for Android phones with different screen resolutions.

•Experienced in MVP and MVVM architectures as well as Singleton, Command, Facade, Proxy, and Observer design patterns.

•Experience with Android performance tuning and crash reporting applications.

•Knowledgeable in Android development, Java, and Object-Oriented Programming, along with Google Material Design Guidelines, Android Best Practices, and Android UI/UX implementation.

•Strong Kotlin and Java programmer.

•Experience with embedded local storage solutions such as SQLite.

•Implement RESTful data consumption using Retrofit with an OkHTTP client, GSON and Jackson converters, and a custom interceptor.

•Troubleshoot back-end communications, in-app functionalities, and 3rd-party frameworks.

•Experience prototyping and profiling Android applications.

TECHNICAL SKILLS TABLE

•Programming Languages - Kotlin, Java

•Architectures and Design Patterns - MVP, MVC, MVVM, Singleton, Delegation, Factory, Builder, Façade, Clean Code Architecture

•External Libraries - RxJava, RoboGuice, Butterknife, Volley, Okhttp, Android image filtering, Picasso, Retrofit, PayPal, Firebase, Koin, oAuth, GraphQL, Compose, Kotlin libraries

•Third-Party APIs - Google Play Services API, Facebook SDK, Twitter, Google+, LinkedIn, Leak Canary, Firebase, Retrofit, OkHttp, AES Encryption

•Continuous Integration - Jenkins, Git, Bit Bucket, SVN, Circle CI, TeamCity, Gitlab, DevOps, Bitrise

•Testing Tools - Espresso, Robolectric, Robotium, Calabash, Mockito, JUnit, Monkey, JaCoCo, Mockk, Appium

•Databases - Mango DB, Oracle, My SQL, OrmLite, Room, SQLite, and Realm

•Bug Tracking - Flurry Analytics, Crashlytics, Google Analytics

•Methodologies - Test-Driven Development, Behaviour-Driven Development, Agile, Extreme Programming, Scrum, Kanban

PROFESSIONAL WORK EXPERIENCE

Nelnet

Madison, Wisconsin

May 2022 - Present

Senior Android App Developer

https://play.google.com/store/apps/details?id=com.nelnet.borrower.federal HYPERLINK "https://play.google.com/store/apps/details?id=com.nelnet.borrower.federal&hl=en_US&pli=1"& HYPERLINK "https://play.google.com/store/apps/details?id=com.nelnet.borrower.federal&hl=en_US&pli=1"hl=en_US HYPERLINK "https://play.google.com/store/apps/details?id=com.nelnet.borrower.federal&hl=en_US&pli=1"& HYPERLINK "https://play.google.com/store/apps/details?id=com.nelnet.borrower.federal&hl=en_US&pli=1"pli=1

We listened to your feedback and handcrafted a new tool to help you manage your student loans. Our versatile app is optimized for your phone and makes account activity a snap. Checking how much you owe, making your payments, and monitoring your loan status all just got easier! Even better – soon, we’ll add face and fingerprint recognition to log in. Download the redesigned Nelnet app today.

•Developed new features and functionalities as per project requirements.

•Reviewed and provided feedback on pull requests from other developers.

•Collaborated with cross-functional teams, including web, CI/CD, and other development teams, to integrate certain functionalities into the mobile app.

•Integrated Retrofit and OkHttp libraries for seamless API integration and efficient network communication.

•Primary task include to implement business logic and address MVVM architectural issues and refactor old code using Kotlin, implement reusable components using Jetpack compose

•Used RoomDB to implement local database storage and management.

•Worked on UI/navigation using Jetpack Compose, particularly for the payment flow.

•Integrated Pendo SDK into the mobile app, leveraging track events for improved user analytics.

•Employed Mockito and JUnit for effective unit testing, including testing Jetpack Compose components.

•Used Kotlin as the primary programming language for Android development.

•Leveraged Firebase services for various functionalities such as authentication, storage, and push notifications.

•Implemented Moshi for JSON serialization and deserialization and followed the MVVM architecture pattern for clean and maintainable code organization.

•Utilized Hilt for dependency injection to improve code modularity and testability.

•Implemented StateFlows to manage app state and data flow.

•Collaborated with the team using JIRA for project management and Confluence for documentation.

•Utilized GitLab for version control and continuous integration/continuous deployment (CI/CD) processes.

•Integrated Detekt and Ktlint for code analysis and enforcing coding standards.

•Used Android Studio and Gradle for efficient Android app development and build management.

•Configured Proguard for code obfuscation and optimization and used Jacoco for code coverage analysis.

•Performed QA testing based on JIRA test cases for work not directly committed by you.

•Participated in regression testing for new functionality being released.

•Ensured successful completion of CI/CD pipeline audits and resolved any issues causing failed audits.

•Uploaded signed prodRelease APK to Google Play for app distribution.

Starbucks

Seattle, Washington

January 2020 – May 2022

Senior Android Mobile App Engineer

https://play.google.com/store/apps/details?id=com.starbucks.mobilecard HYPERLINK "https://play.google.com/store/apps/details?id=com.starbucks.mobilecard&hl=en&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.starbucks.mobilecard&hl=en&gl=US"hl=en HYPERLINK "https://play.google.com/store/apps/details?id=com.starbucks.mobilecard&hl=en&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.starbucks.mobilecard&hl=en&gl=US"gl=US

The Starbucks® app is a convenient way to order ahead for pickup, scan and pay in-store and customize your favorites. Rewards are built right in, so you'll earn Stars towards free drinks and food on your purchases.

Mobile Order & Pay

Customize and place your order, then pick up from a nearby participating store without waiting in line.

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

•Programmed features/functions and modules in Kotlin.

•Created Kotlin extension functions to make the code more readable and concise.

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

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

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

•Used and sent tracking data from FusedLocationProvider to the server to track the device during deliveries.

•Connected the app to Twitter, Instagram, and Facebook, by integrating their SDKs.

•Contributed to the technical documentation to increase 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 an Offline-First model using Room Databases and migrating from SQLite implementation.

•Applying Roboelectric, Mockito, and Espresso for testing.

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

•Created unit tests for all the code I implemented using Mockk as a means of TDD.

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

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

•Utilized RecyclerViews to display item lists.

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

Bed Bath & Beyond

Union, New Jersey

August 2018 – January 2020

Senior Android Application Engineer

https://play.google.com/store/apps/details?id=com.bbby.bedbathandbeyond HYPERLINK "https://play.google.com/store/apps/details?id=com.bbby.bedbathandbeyond&hl=en&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.bbby.bedbathandbeyond&hl=en&gl=US"hl=en HYPERLINK "https://play.google.com/store/apps/details?id=com.bbby.bedbathandbeyond&hl=en&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.bbby.bedbathandbeyond&hl=en&gl=US"gl=US

Bed Bath & Beyond and buybuy Baby stores remain open to serve you.

•Added a new credit card with a camera card scanner for the quickest checkout

•push notifications to alert as soon as sales start and remind when they're ending.

•Included Stripe Billing APIs to create and manage invoices and recurring payments and create fixed-price subscriptions with Elements.

•Programmed on a large existing codebase with MVVM Architecture Design pattern using Flowables and data binding connections between modules.

•Applied an MVVM architectural base.

•Performed code migration from Java to Kotlin and implemented null safety checks, higher-order functions, extension functions, coroutines support, and KMM.

•Implemented Custom Attribute and Custom View, re-used existing binding adapters, and reduced boilerplate code with MVVM data binding.

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

•Participated in code review and reviewed code carefully before approval.

•Worked with testing libraries and frameworks Junit, Espresso, and Mockito.

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

•Created a Repository pattern to abstract connections between local databases and remote endpoints.

•Created abstract classes to define common behavior across the application and utilized extension function from the Ktx plugin to consolidate common operations like getting current time and parsing data

•Debugged network calls to reflect correct consumption of data using Postman, Swagger, and Charles Proxy API

•Implemented new features in Kotlin and converted some existing Java classes to Kotlin.

•Utilized Android SDK and supporting development devices.

•Utilized Charles Proxy to understand and detect issues in the payload or provide feedback to engineers and QA.

•Used Coroutines and Schedulers for long-running and background tasks.

•Integrated with Google Maps.

•Encrypted and decrypted the shared preference data with the AndroidX Security Library.

United Airlines

Houston, Texas

February 2017 – August 2018

Senior Android App Engineer

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

Meet the United app

From planning, to booking, to day of travel, we’ve got you covered.

On our app you can:

• look for flights across our global network and book them easily for yourself, or your friends and family

• check in for your flight and get your boarding pass before you get to the airport

•Performed technical work in Android Studio IDE.

•App developed in modules deployed as artifacts to Artifactory, and consumed within the app.

•Participate in design meetings for the architecture of the app, migrating from 1-activity per view, to using the Jetpack navigation component 1-activity hosting multiple fragments.

•Programmed in Java.

•Applied an MVP architecture as the basic layer architecture of the app and transitioned dependency injection from Dagger 1 to Dagger 2.

•Used Singleton, Proxy, Visitor, Decorator, Facade, Builder, and Interpreter Design Patterns.

•Utilized Retrofit for back-end integrations.

•Implemented RESTful call to receive JSON-based response and parsed with GSON to display data.

•Transitioned threading from NineOldAndroids to RxJava and Retrofit with loopers, and loaders to manage activities and fragments.

•Implemented Bluetooth Kit and Bluetooth Low Energy (BLW) to manage the connection with the device.

•Worked with Bluetooth beacons using formats like Eddystone, iBeacon and Exposure Notification Service standard to scan nearby devices and transmit data.

•Involved in the design and development of the Travel Ready Center architecture and implementation within the check-in process for the users to be able to submit documentation

•Working on the seatback application for inflight entertainment, bag tracking, etc.

•Implemented Datadog into the application for user monitoring, this tool is helpful to debug issues in production giving us all the context from the session and all interactions between the device and backend.

•Managed code review sessions to always have high-quality (reusable, simple, documented) code, and Unit testing in Junit, and automated testing with Robolectric.

•Displayed images using the Picasso library.

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

•Used GitLab for continuous integration and tested using tools and devices.

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

•Handled memory leaks and ANR using Leak Canary and memory monitor tools.

•Utilized Crashlytics for troubleshooting.

Chubb

Warren, NJ

March 2016 – February 2017

Android App Engineer

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

Chubb Mobile: Delivering hassle-free insurance anytime, anywhere. You're in the driver's seat. With all your information at your fingertips, Chubb's mobile app helps you access your Masterpiece auto insurance id on the go.

•Worked with SCRUM (Agile) methodology and attended Scrum meetings to track the app development progress and present updates.

•Worked closely with the Android and iOS development teams for the web service API definition.

•Worked with the UI/UX team to generate a new app layout with Holo themes.

•Developed unit test cases to check the correct behavior of the app.

•Enhanced the application for heavy web content display.

•Programmed in Java using the Eclipse IDE and the Android Development Tool (ADT).

•Use of services to run Java classes for the back work.

•Created Compound and Custom UI components to improve the user experience.

•Configured a Parse account to use as a Mobile Backend, setting up the database, code cloud, and services integration.

•Used GSON instances to parse JSON files and load them into POJOs.

•Implemented Loaders and AsyncTaskLoaders to implement the data loading in the User Interface.

•Consumed the back-end services using a Retrofit instance built with an OkHttp client.

•Implement NDK to embed C or C++ ("native code"), reuse existing libraries, and build Java Native Interface (JNI).

•Implemented Fragments to support multiple device sizes.

•Integrated Crashlytics to analyze the behavior of the users.

•Implemented services that ran in the background to handle HTTP calls with a multithreading approach (OkHTTP and GSON).

•Implemented Sliding Menu library to provide a fluid swiping from left to right and right to left.

•Tracked issues with Jira.

•Utilized Git as a source control management tool.

•Used Picasso and RxJava to manage images on multiple threads for improved performance.

Reciprocal Labs- Propeller

Madison, Wisconsin

July 2014 -

March 2016

Android App Developer

https://play.google.com/store/apps/details?id=com.asthmapolis.mobile HYPERLINK "https://play.google.com/store/apps/details?id=com.asthmapolis.mobile&hl=en&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.asthmapolis.mobile&hl=en&gl=US"hl=en HYPERLINK "https://play.google.com/store/apps/details?id=com.asthmapolis.mobile&hl=en&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.asthmapolis.mobile&hl=en&gl=US"gl=US

Propeller can help you follow your treatment plan and take control of your asthma.

Propeller is a digital health tool that has been used by over 100,000 people worldwide. The Propeller sensor discretely attaches to your asthma inhaler, gathers information about your medication use and sends that information to the Propeller app. The app builds your profile and provides personalized support to help you follow your doctor-recommended treatment plan

•Worked with the UI/UX team to generate a new app layout

•Programmed in Java using the Eclipse IDE and the Android Development Tool (ADT).

•Consumed RESTful Java web services built with RESTEasy on JBoss interfacing with a MySQL database

•Tracked issues and tasks during the project using JIRA for Project Management

•Worked with Retrofit to consume RESTful web services

•Implemented Crashlytics for mobile user tracking, stats, and crash reports.

•Participated in daily Scrum meetings to track app development progress.

•Integrated Geo Location Services with Google Maps to show the last known location of the inhaler for Asthma Patients.

•Utilized Git as a version control tool as a source control management system.

•Supported multiple screen resolutions to provide resizing across multiple devices.

•Used support libraries to ensure backward compatibility with early Android versions.

•Worked with GSON library to parse JSON files.

•Included NewRelic for optimization and improvement of the app's overall performance.

•Implemented Urban Airship to send push notifications easily.

•Created compound and custom UI components to improve the user experience.

•Tested the user interface with Espresso

•Helped to set up Jenkins for Continuous integrations

•Created Compound and Custom UI components to improve the user experience.

•Implemented Loaders and AsyncTaskLoaders to implement the data loading in the User Interface.

•Consumed the back-end services using a Retrofit instance built with an OkHttp client.

•Implemented services that ran in the background to handle HTTP calls with a multithreading approach (OkHTTP and GSON).

EDUCATION

University of Miami, Bachelor of Science



Contact this candidate