Post Job Free

Resume

Sign in

Senior Android Developer

Location:
United States
Posted:
March 27, 2024

Contact this candidate

Resume:

Adam Wisecarver

Senior Android Developer

Phone: 314-***-****

Email: ad4ls7@r.postjobfree.com

Profile Summary

•Versatile professional with nearly a decade of experience in building, integrating, testing, and supporting Android applications for mobile and tablet devices on the Android platform.

•Successfully published 7 apps to play store.

•Excellence in building, integrating, testing, and supporting Android applications for mobile and tablet devices on the Android platform.

•Build mobile applications that utilize web services (REST, HTTP-based, XML, SOAP, JSON, GraphQL 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.

•Integrated ExoPlayer to stream media content from remote servers and managed playback functionality.

•Proficient in using best UI/UX best practices implementing fragments, diverse layouts like RelativeLayout, ConstraintLayout, animations, Material Design, Compound Views, and Custom Views and now Jetpack Compose.

•Designed various applications using optimal architectural design patterns MVC (Model View Controller), MVP (Model View Presenter), MVVM (Model View ViewModel).

•Experienced in integrating Android mobile apps with web services using Retrofit, Volley, AsyncTask, OkHTTP, JSON, GSON, REST, Kotlin Coroutines, WorkManager, Handlers, Threads, Runnables, and Loopers

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

•Familiar with Android Automotive OS for the car infotainment system.

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

•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.

•Used C++ language to create communication interfaces between hardware and software.

•Skilled in RxJava for multithreading and consumption of RESTful Web.

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

•Program Kotlin and Java programming languages at an advanced level.

•Experience with embedded local storage solutions such as SQLite, RoomDB, SharedPreferences, Encrypted SharedPreferences, internal storage, external storage, and cloud storage with Firebase.

•Work with internal QA teams on system, performance, and acceptance testing.

•Hands-on with Android Data Binding with JetPack and use of JetPack ViewModels.

•Excellent communicator and leader who works closely with Product, Design and Back-End teams.

•Adept with Android performance tuning and crash reporting applications.

Work closely with Project Managers, Product Managers, and Stakeholders to ensure app developments meet specifications and successfully drive corporate strategy.

Technical Skills

PROGRAMMING LANGUAGES

Kotlin, Java

IDE

Android Studio, Eclipse, IntelliJ

THIRD-PARTY LIBRARIES

Coroutines, RxJava, RxAndroid, Firebase, Fabric, Reactive-X, C standard Library, MPL and MECL libraries, Ksoap2 library, Jersey Library, Java Swing, Ajax Swing, GWT, Retrolambda

PERFORMANCE

Bluetooth Low Energy (BLE), Leak Canary, ProGuard, Dalvik, Memory Mapping, ART

DATABASES

SQLite, Firebase, Room DB

BACK-END

Consumption of RESTful web services, Connection to database endpoints, Use of REST, SOAP, JSON, XML

ARCHITECTURE & DESIGN

MVC, MVP, MVVM, Singleton, Dependency Injection, Builder, Factory, Façade, Proxy, Command, Observer, Visitor

PUSH NOTIFICATIONS

Google Cloud Messaging (HCM), Firebase Cloud Messaging,

DEPENDENCY INJECTION

Android Annotation, RoboGuice, Dagger 1, Dagger 2, Hilt

CODEBASE MANAGEMENT

Git, SVN, SourceTree, BitBucket, Jenkins, Hudson, Travis CI

PROJECT

Agile, Scrum, pair Programming, Xtreme Programming, JIRA, Confluence, Javadoc, Slack, Trello, KanBan, Atlassian, Requirements Gathering, Daily Scrums, Sprints, Sprint Planning, Sprint Backlog, Sprint Retrospective, Scrum Master, Code Reviews

Work Experience

Senior Android Developer

12/2022 to Present.

Express Scripts – St. Louis, MO

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

Rating: 3.9; Installs: 10,000,000+

App Description: The Express Scripts app is an all-in-one solution for managing your mail-order pharmacy, with the ability to make payments, order refills, schedule automatic refills, and get reminders to take your medications, among many other features.

Summary: During my contract with Express Scripts, I worked on several features relating to the Communication Preferences screens in the app and modularization, as well as several miscellaneous bug fixes.

Contributions:

•Employed Kotlin programming language within the Clean Architecture framework, following the MVVM pattern ensuring a well-structured and maintainable codebase.

•Collaborated with the design team using Figma to create intuitive and user-friendly interfaces for Android applications, ensuring a seamless and visually appealing user experience.

•Managed design assets efficiently in Figma, ensuring consistency across multiple screens and resolutions, and facilitated the integration of design assets into the Android application development process seamlessly.

•Implemented and maintained Jenkins CI pipelines for automated build, test, and deployment processes, ensuring the seamless integration of code changes into the Android application development cycle.

•Automated the deployment process using Jenkins, enabling the rapid and reliable deployment of Android applications to various environments, including development, testing, and production, with minimal manual intervention.

•Integrated automated testing frameworks, such as Espresso and Robolectric, into the Jenkins CI/CD pipeline, enabling comprehensive unit testing, integration testing, and UI testing to ensure the robustness and reliability of Android applications.

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

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

•Actively participated in a hybrid Scrum environment, ensuring the successful integration of Agile principles and practices into the development process for Android applications.

•Fostering effective communication and ensuring the alignment of goals and priorities within the Hybrid Scrum Development Team.

•Applied several design patterns while implementing new features and refactors, Observer, Singleton, Builder, Facade, Adapter, Repository, Router, etc.

•Employed tools like JIRA and GitLab to maintain a well-organized and efficient workflow, enabling effective task management and code version control.

Senior Android Software Developer

01/2022 to 12/2022

JP Morgan Chase – Columbus, OH

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

Rating: 4.4; Installs: 10,000,000+

Bank securely with the Chase Mobile® app. Manage your investments with J.P. Morgan and your Chase accounts: monitor your credit score, budget and track monthly spending, send and receive money with Zelle® and deposit checks.

Contributions:

•Maintained the dashboard sections of the Chase app.

•Served on an Agile team that practiced Scrums and Sprints.

•Reviewed source code programmed in Java and Kotlin programming languages.

•Made modifications to source code written in Java and Kotlin.

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

•Handled continuous integration (CI) with Jenkins.

•Made modifications to design schematics using Figma.

•Use Jira to manage the project backlog and tasks assignment and tracking.

•Performed technical work uisng a MVVM architectural base.

•Integrated multiple third-party libraries like Retrofit, RxJava and Dagger.

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

•Implemented MVVM architecture in Kotlin with state flows and live data.

Android Development Lead

09/2021 to 01/2022

Fiserv – San Ramon, CA

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

Rating: 3.7; Installs: 500,000+

Now you can manage your money anytime, anywhere – from your mobile device. With TouchBanking you can conveniently and securely check your account balances, view recent transactions, transfer money between your accounts, pay bills, find ATMs and branch locations.

Contributions:

•Migrated from MVP to MVVM architecture to reduce and consolidate code to make use of Android Ktx plugin.

•Applied design patterns Singleton, Façade, and Builder.

•Made version upgrade to Android SDK 31, AndroidStudio Artic Fox.

•Made Retrofit Rest calls with AES-256 encrypted and secure by HTTPS TLS 1.2 to Amazon Web Services.

•Created automated UI testing using Espresso and Mockito.

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

•Applied AMPCapture to enhance audio.

•Implemented Proguard and ShrinkResources to prevent reengineering the APK.

•Implemented Room ORM for persistent data storage and fast data retrieval.

•Utilized SQLite for data persistence and Shared Preferences for login info.

•Ran Fortify SCA static application security testing (SAST) to analyze source code for security vulnerabilities.

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

•Worked in an Azure DevOps environment.

Sr. Android Developer

01/2020 to 09/2021

Chevron Mobility – San Ramon, CA

https://play.google.com/store/apps/details?id=com.stuzo.chevron HYPERLINK "https://play.google.com/store/apps/details?id=com.stuzo.chevron&hl=en_US&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.stuzo.chevron&hl=en_US&gl=US"hl=en_US HYPERLINK "https://play.google.com/store/apps/details?id=com.stuzo.chevron&hl=en_US&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.stuzo.chevron&hl=en_US&gl=US"gl=US

Rating: 4.5; Installs: 100,000+

Use your smartphone and the Chevron app to pay for fuel from the comfort of your driver’s seat for a fast and simple experience at the pump! It’s simple to do: Before heading to the station, sign up and create a user account for mobile payments and link your PayPal account, Venmo account, Chevron, and Texaco Techron Advantage® Card, or credit card to your user account Then, find a station that is processing mobile payments through the station locator feature. At the station, use the app on your phone to reserve the pump and select your payment method from your driver’s seat. When prompted, fill up at the pump and go. Your receipt will be waiting for you on your phone!

Contributions:

•Working within Agile/Scrum environment to develop stories and tasks.

•Developing Android in MVVM architecture for scalability and modularity.

•Working on application from scratch using JetPack components and Android KTX.

•Migrating code to Kotlin language with coroutines, sealed classes, null safety check on Techron Advantage Card feature to check balance and make payments.

•Programming Kotlin expressions and higher-order functions to reduce boilerplate code.

•Developing new features in Kotlin to reduce codebase with data classes and extension,

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

•Applying Pdfviewer SDK to view in-app receipts for Mobile Payments.

•Adding ability to mock final classes/methods using Mockito.

•Adding WorkManager to project to periodically sync application data with a server and send logs, analytics to backend services.

•Pair-programming with dev-ops team to enhance deployment process for several environments using Bamboo and Jenkins.

•Writing the technical API documentation.

•Implementing Data Classes, Sealed Classes, and Singleton Objects.

•Enabling modular app development and working on Chevron SDK with functional reactive programming using Map, Flattop, Zip, and Concat operators.

•Implementing LiveData to notify views of any database changes, manage activity and fragment lifecycles.

•Collaborating with Bluetooth LE with a proprietary Tile iBeacon under the Eddystone protocol.

•Creating, testing (unit testing and integration testing) suites with Espresso and Mockito.

•Using Koin for Dependency Injection and Data Binding with Observable for easy binding integration with Koin for Dependency Injection.

•Pair-programming to link PayPal account and Techron Advantage Card to user account using RxKotlin and Retrofit.

•Used Dagger, Retrofit, Robolectric, Picasso and other third-party libraries.

•Adding a custom account to the user's device to authenticate back-end services using OAuth.

•Improving location-based features, including geocoding, geofencing for station locator feature, and finding a Chevron or Texaco station.

•Mentoring junior developers by explaining code, pair-programming, explaining project approach and arhitectural models and reviewing code.

•Analyzing the requirements and develop strategies for the development of the Web and Android product.

Senior Android Mobile App Developer

01/2018 to 12/2019

Washington Post – Washington, DC

https://play.google.com/store/apps/details?id=com.washingtonpost.rainbow HYPERLINK "https://play.google.com/store/apps/details?id=com.washingtonpost.rainbow&hl=en_US&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.washingtonpost.rainbow&hl=en_US&gl=US"hl=en_US HYPERLINK "https://play.google.com/store/apps/details?id=com.washingtonpost.rainbow&hl=en_US&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.washingtonpost.rainbow&hl=en_US&gl=US"gl=US

Rating: 4.6; Installs: 1,000,000+

Designed for your tablet and smartphone, the Washington Post Select app keeps you informed with award-winning national and international news coverage—along with striking photography and informative graphics that bring stories to life. Breaking news and important updates keep you in the loop throughout the day. Intuitive browsing and a streamlined design allow you to seamlessly navigate through stories and enjoy in-depth reading. Free to download, subscribers enjoy unlimited access.

Contributions:

•Worked with a team of 5 developers.

•Developed new features and resolved issues using Android Studio.

•Worked in Android Studio in Java and XML, and increasingly incorporated Kotlin into the code base.

•Built application using MVVM architectural patterns.

•Reduced learning curve on Kotlin language by creating multiple training materials and balance current sprint work with mentoring developers’ piers.

•Worked in a hybrid code-base with both Java and Kotlin coding while transitioning to Kotlin.

•Used reactive frameworks such as RxJava, RxBluetooth and RxCocoa.

•Improved performance on back-end integration by transitioning to Retrofit working with RxJava and parsing JSON objects with GSON.

•Organized the code into submodules to easier add to and subtract from the Android app.

•Wrote new features in such a way that they could be added to a submodule to be used by multiple apps.

•Participated in weekly Android app testing to ensure quality of new additions.

•Used Jira and spreadsheet for tracking and project management.

•Applied Agile Scrum methodology and two-week sprints with code reviews, merging, and testing.

•Participated in daily check-ins to report progress, and filled-in for Scrum Master as needed.

•Worked extensively on back-end integrations, logic and performance, worked on UI/UX (e,g., content recirculation module, the GDPR screen, the classic onboarding screen, and the GUI for the podcast player).

•Made updates encompassing new features and issue resolutions.

•Worked with quality testers to ensure any issues found were and resolved prior to Play Store or user involvement.

•Implemented unit tests with the help of JUnit, Robolectric, Mockito, and Espresso.

•Implemented automated UI tests utilizing Espresso.

•Collaborated with cross-functional teams.

•Integrated 3rd-party libraries such as Firebase.

•Used Crashlytics to track errors and tracked crashes in Fabric for Android.

•Added tracking libraries like AppsFlyer, to track events in the app, such as purchases and uninstalls.

•Demonstrated new features to stakeholders at the end of each sprint.

•Used WebEx for presentation to remote stakeholders.

•Configured Android emulator through Android Studio for device testing on specific Android OS versions.

•Worked with Android app architecture to add new features visible to the user, like the recirculation carousel.

•Used animations to give the user additional feedback during interactions.

•Used ratings and reviews on the app store to diagnose and prioritize bugs in the apps.

•Stayed up to date on the latest versions of the Android OS making sure to implement any necessary changes on the Android app required by new Android OS versions.

•Used Dagger2 for dependency injection.

•Used Git for source management.

Android Mobile App Developer

11/2015 to 12/2017

Little Caesar’s – Detroit, MI

https://play.google.com/store/apps/details?id=com.littlecaesars HYPERLINK "https://play.google.com/store/apps/details?id=com.littlecaesars&hl=en_US&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.littlecaesars&hl=en_US&gl=US"hl=en_US HYPERLINK "https://play.google.com/store/apps/details?id=com.littlecaesars&hl=en_US&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.littlecaesars&hl=en_US&gl=US"gl=US

Rating: 4.7; Installs: 10,000,000+

If you love pizza, you've come to the right app. AND WE DELIVER! Sorry, couldn’t wait to get that out. This is the app that can make you a pizza artist. Create your own masterpiece online and then get it delivered.

Contributions:

•Involved in all phases of software development life cycle, including planning, architecture, development.

•Worked on an Agile/Scrum team and made recommendations for project efficiency and quality during Scrum meetings (planning, retrospective) and discussions, assisted with project planning, and ensured deadlines were met.

•Oversaw quality testing, working with testing team.

•Utilized RxJava and MVP architectural pattern, with various design patterns such as Abstract Factory, Builder, Observer, and Singleton.

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

•Incorporated payment integration with SSL for protection of financial information.

•Added value encryption in SharedPreferences using AES 128 with the Secure-preferences Library.

•Analyzed and determine the time and effort needed to perform a user story.

•Added push notification features with Firebase Cloud Messaging for Android.

•Created the database using SQLite local file and a Firebase implementation.

•Delivered the setup of a Firebase mobile back end, setting up the code cloud and the connection with multiple external services.

•Used native Android and third-party technologies to optimize the app functionality including, Material Design, Firebase Cloud Messaging, Espresso, JUnit, SQLite, Glide, Shared Preferences, Java, MixPanel, EventBus, Travis., RxJava

•Built the application to support multiple screen sizes over various Android devices through qualifiers and fragments.

•Configured private GitHub as a code repository for the Android development team.

•Configured the continuous integration process with a Jenkins instance hosted on a private server.

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

•Contributed to the technical documentation to increase the maintainability.

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

•Developed multiple modules ready to be released with Android 7.0 features (multi-window and enhanced notifications).

•Effectively used Activities, Services, Broadcast Receivers, SQLite, and Preference components of Android.

Android App Developer

10/2013 to 11/2015

Snag – Glen Allen, VA

https://play.google.com/store/apps/details?id=com.snagajob.jobseeker HYPERLINK "https://play.google.com/store/apps/details?id=com.snagajob.jobseeker&hl=en_US&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.snagajob.jobseeker&hl=en_US&gl=US"hl=en_US HYPERLINK "https://play.google.com/store/apps/details?id=com.snagajob.jobseeker&hl=en_US&gl=US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.snagajob.jobseeker&hl=en_US&gl=US"gl=US

Rating: 4.5; Installs: 5,000,000+

Snagajob is the #1 free, easy job finder app to find part-time jobs and full-time jobs, make job applications easier, get great career advice and more. Great for students, teens or anyone who needs flexible hours. Plus, Snagajob is better than Indeed, Monster or ZipRecruiter because we only have hourly jobs, so it makes your job search easier.

Contributions:

•Configured app to save search and get email updates when new jobs are posted that match in search.

•Consumed web services with a Volley client to support for request prioritization and strong ordering that made it easy to correctly populate the UI with data retrieved asynchronously from the network.

•Configured app to search for local job openings and have daily job matches sent directly users’ phones.

•Enabled views of job application status updates on jobs that users have applied to.

•Included Moshi library for built-in support for reading and writing Java’s core data types.

•Configured app to enable a user to apply to jobs with just one click using Snag profile.

•Performed 80% integration testing using Robolectric framework.

•Improved user interface by adding AndroidSlidingUpPanel component foe draggable sliding up panel and circular ImageView in list view.

•Applied map search feature to enable finding jobs hiring in user area.

•Created a Snag Widget on home screen to show the latest offers according to users’ geo-location.

•Incorporated contacts, calendar, gallery device specific content-providers and built custom content providers to share data across processes.

•Replaced old SQLIte database with Realm to include difficult-to-build features like two-way data sync, realtime collaboration, persist with lightweight transactions and query using fluent interfaces.

•Modularized code by using Dagger 2 dependency injection library to decouple the classes to make the code easier to test and maintain with no hard dependencies.

•Implemented Bolts Framework to perform branching, parallelism, and complex error handling, without the spaghetti code of having many named callbacks.

•Worked on functionalities like WIFI, Bluetooth, and cellular data for data transfer.

Software/IT Support Provider

06/2011 to 10/2013

Atlassian – San Francisco, CA

Atlassian is a software company that develops and supports clients across industries with project tracking, content creation and sharing, and service management products to work better together and deliver quality results on time.

Contributions:

•Hands on with various object-oriented programming languages (e.g., C++, Java, etc.), and integrating with multiple database platforms (e.g., Windows Server, Oracle, etc.).

•Programmed Java based code to convert source files into custom flat file layouts.

•Performed requirements gathering, analysis, design, development, and testing of various types of applications, both custom and off-the-shelf.

•Utilized Node.js server for hosting using express middleware.

•Performed unit testing and integration test cases to check the functionality of modules,

•Developed and enhanced features to restrict usage based on authorization and authentication tokens.

•Conducted troubleshooting activities on customer issues over the phone and in person, accurately diagnosing and resolving issues in response to customer reported incidents.

•Spearheaded the research, evaluation, and feedback on problematic trends and patterns in customer specific issues such as network connectivity, software, hardware, etc.

•Developed and maintained problem tracking and resolutions databases, endeavoring to always ensure comprehensive and accurate documentation.

•Implemented customer support policies, procedures, and standards.

Education

Bachelor of Science - Computer Science - University of Tulsa



Contact this candidate