Post Job Free

Resume

Sign in

Senior Android Developer

Location:
Charlotte, NC
Posted:
February 24, 2023

Contact this candidate

Resume:

Professional Profile

*+ years’ experience developing Android mobile apps with 6 Android apps published on google Play Store.

Experienced developing Android/Mobile apps based on MVVM, MVP, and MVC architectural schematics.

Experienced with design patterns Abstract Factory, Façade, Builder, and Singleton.

Built mobile apps using various integrated development environments such as Android Studio, Visual Studio, Visual Studio Code, SSMS, and Eclipse.

Programmed Android apps using a variety of languages, including Kotlin, Java, and C#.

Combined hard technical skills in Android development/deployment with soft skills to serve as a valuable Agile/Scrum team member on mobile app projects.

Experienced with data persistence private, external, and on the cloud.

Hands-on with continuous integration servers to help the build creation process (Travis, Jenkins, Circle-CI).

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

Experience with SQLite and Room DB for Data Persistence as well as User Preferences.

Familiar with jetpack compose for the creation of the new UI without the use of XML files.

Analyzed Code merges, builds, and deployments, and ensure production stability by implementing Jenkins Pipelines.

Work with Git, GitHub, GitLab, SVN, SourceTree, BitBucket, and Gradle in managing code base.

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

Apply design patterns like Singleton, Facade, Command, Builder, Integrator, Visitor, and Proxy.

Work with Shared Preferences to retain data locally.

Implemented security features in the Android app using Cipher, Certificate Pinning, TrustManager, SQLCipher, KeyChain, and Key Store.

Create unit and integration testing suites with JUnit, Mockito, and Espresso.

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

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

Well-versed in Test-Driven Development, JUnit Test Cases, Performance Optimization, and Integration Testing.

Strong knowledge of Android SDK, different versions of Android, and how to deal with different screen sizes.

Handle dependency injection with Dagger and Hilt.

Experience with Push Notifications, Google Maps, Navigation, and GPS.

Skilled with Jetpack components.

Set up various accounts of mobile analytics tools: Mixpanel, Flurry, Crashlytics, Answers, and Google Analytics.

Technical Summary

Programming Languages:

Java, Kotlin, C#, VB.NET, HTML, CSS, JavaScript, jQuery

Development IDEs:

Android Studio, Visual Studio, Visual Studio Code, SSMS, Eclipse, Flutter SDK

Databases/Languages: RoomDB, SQLite, Firebase Realtime DB, MySQL, MS SQL, GraphQL

Networking/Web Services:

REST, JSON, Retrofit, GSON, OkHTTP, WebAPI2, Volley

Events:

EventBus, Otto

Threading:

RxJava, IntentServices, Handlers, JobScheduler

Dependency Injection:

Dagger2, AndroidAnnotations

UI/UX:

Material Design, Material Dialogs, Calligraphy, ExoPlayer, VideoView, Chromecast, Push Notifications

Security:

AES/Cipher, Spongy Castle

Messaging:

Urban Airship, Google Cloud Messaging

Payment Processing:

Braintree SDK

Debug/Testing/Performance Frameworks:

Junit, Espresso, Hugo, Robotium, Mockito, LeakCanary, Doze Mode, Android P, Timber, Bluetooth BLE, Charles Proxy

Version Control:

Git, GitHub, GitLab, TFS

Architecture Design Patterns:

MVVM, MVP, MVC

Design Patterns and Practices:

Adapter, Factory, Builder, Singleton, Extension Function, Data Class, Handler, Parceler

Project Management:

JIRA, Sketch, MPAndroidChart

Software Development Methodologies:

Agile, Scrum, Waterfall

CI/CD:

Circle-CI, Jenkins, NDK, Firebase

Analytics:

Crashlytics, Google Analytics, Mixpanel

Libraries: MockK

Other:

JetPack, IoT, Services, Zeplin

Professional Experience

August 2022 – Present

Sr. Android App Developer

Ally Financial, Insync Staffing, Charlotte, North Carolina

https://play.google.com/store/apps/details?id=com.ally.MobileBanking&hl=en_IN&gl=US

Maintained high-quality code using code coverage and code correctness using various tools including Lint and SonarQube.

Created custom views for the interface to improve the user experience.

Refactored error messages across the application.

Created robust automated unit/functional test suites and deployment scripts.

Implemented whole new functionality to notify the user about any change in the calendar using Firebase push notifications and work manager from Android jetpack.

Worked on the migration and refactoring from MVP Architecture to MVVM architecture.

Conducted pair programming sessions for fast-paced development and implementation.

Performed code reviews on the work of other team members.

Implemented newer features in Kotlin and refactored old Java classes.

Used microservices architecture, and closely worked with the backend team.

Developed asynchronous communication with back-end services using multithreading solutions such as Kotlin coroutines and kotlin flows.

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

Provided technical advice to the business and design teams on a new application.

Implemented RecyclerView, toolbar, and CardView.

December 2021 – July 2022

Sr. Android Developer

Dish, Englewood, CA

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

Worked with an Agile dev team with the major goal of the project to make changes on the Android side such as acquiring Google Certification and integrating Hulu, Netflix, and YouTube into the Dish program.

Used Coverity static code analysis tool to check for syntax errors, resolved issues detected, and documented the corrective measures clearly and concisely.

Utilized GoogleChat for team communication and updated the Wiki project team communications platform with technical information weekly.

Used GitHub as a version control tool for the project among team members

Used Hilt for dependency Injection.

Added an intent-based API for the ATV application.

Added mapping file to the project and Taught client’s technical stakeholders how to properly map files on projects.

Added a new Java system app.

Generated build using MVVM architecture.

Worked with hybrid Java/Kotlin codebase.

Used Kotlin Coroutines for asynchronous calls and other features of Kotlin like null safety, smart cast, etc.

Integrated multimedia material and live streaming video, decoding, and playback.

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

Added a user configuration setting to persist and switch the network usage.

Improved the bit rate over network changes with the Connectivity Manager.

Added support for Chromecast for sending video and music to the TV.

Improved the Video browser and audio player performance multithreading.

Used Broadcast Receivers to observe local system broadcasts and WIFI connection state.

Worked with JetPack library.

February 2020 – December 2021

Senior Android Developer

Hertz, Chicago, IL

https://play.google.com/store/apps/details?id=com.hertz.android.digital

Worked with the Agile team on this value-added services project.

Participated in daily stand-ups and retrospective meetings.

Added push notifications natively with Android.

Applied Salesforce Marketing Cloud for Push campaign.

Worked in a large codebase with MVVM data binding library to declaratively bind UI elements, notify views of any database changes, and manage UI-related data in a lifecycle-conscious way.

Refined app by fixing bugs found through Dynatrace and Firebase tracking.

Implemented Google Analytics to track click-through rates on service pop-ups.

Implemented a new encryption method and removed the old Facebook Conceal library.

Designed/developed an app using API/SDK and business-embedded logic to achieve the mobile app's desired functionality.

Fixed issues for security scans such as SSL, encryption, and loopholes and profiled the application using the APK analyzer.

Implemented Android KeyStore to store user passwords safely.

Maintained Hertz app by use of the Java Programming language.

Migrated from Java to Kotlin for new features.

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

sed reactive frameworks such as RxJava, RxAndroid, RxBluetooth, and RxKotlin.

Used Jenkins to create test builds.

Maintained communication with team members using Microsoft Teams.

Applied pair-programming practices.

Maintained over 80% coverage for unit tests.

Wrote unit tests using JUnit, Mockito, Espresso, and Power Mock.

Overhauled email templates on Salesforce Marketing Cloud using HTML, JavaScript, and Salesforce’s custom script AmpScript.

Implemented Accessibility feature using the Talkback Feature.

October 2018 – January 2020

Android Mobile Application Developer

Kayak, Cambridge, MA

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

Reduced code footprint and increased reusability of logic by refactoring code from MVP to MVVM.

Utilized background services to update locally stored JSON.

Wrote and developed new features in Kotlin as well as translated some existing features from Java to Kotlin.

Used Dagger2 for dependency injection.

Developed UIs using wireframes provided by the graphics team via Zeplin.

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

Implemented UI Test Automation using Espresso as a testing tool to accomplish the task.

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 Jenkins for Continuous Integration.

Created multi-purpose apps for debugging and production with the use of flavors implemented in the Gradle file.

Analyzed and troubleshot the application using tools such as Android Profiler, Espresso, Mockito, and Robolectric.

Participated in scrum meetings to help with collaboration among the mobile team.

Used Git with Bitbucket servers for the applications Version Control System.

Used Coroutines for efficient and lightweight handling of asynchronous operations.

Optimized layouts by refactoring layout code from using Relative layout to Constraint layout.

Participated in code reviews and submitted constructive feedback to peers of all levels of development.

Reduced the application size and increased efficiency of rendering basic images by utilizing the use of Vector drawings.

Used reactive frameworks such as RxJava and RxBluetooth.

August 2017 – October 2018

Android Developer

Canon, Melville, NY

https://play.google.com/store/apps/details?id=jp.co.canon.bsd.ad.pixmaprint&hl=en

Implemented a ListView with lazy image loading using Picasso.

Consumed RESTful services, as well as serialized the returned code into POJOs via the GSON library for the Android app.

Used Parcelable interface to marshal objects before transferring them to other activities.

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

Used Git as the source control management tool.

Enhanced the requests for large content display on the application.

Used and implemented GCM for Android notifications (Status Bar Notifications).

Involved in the full lifecycle development process from product definition

Attended weekly Android team meetings to present the status of the project; demo the updates, get feedback, and update requirements.

Included a Navigational Drawer in the Android app interface.

Implemented automated testing with Robolectric for Android and worked closely with the testing team.

Used Activities, Services, and intents in the Android application.

Designed tweaks to the look and feel using Android Material Design guidelines.

Managed the build creation with a Jenkins instance hosted on a private server.

Liaison with the project team and deliver projects as per scheduled milestones.

Created and maintain technical documentation of the application.

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

Managed a large team of engineers and remote contractors encompassing a variety of Android specialties.

Refactored un-optimized pieces of code to guarantee the maximization of resources.

Migrated from AsyncTask to Intent Services to load the information from the user.

August 2015 – August 2017

ANDROID Mobile Application Developer

Box, Redwood City, CA

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

Participated in the Android team with other 3 developers and applied an Agile methodology with 3 weeks of Sprints and weekly Retrospectives.

Helped to implement google APIs services Google slide and configurated permissions account Oauth authentication and SlidesRequestInitializer.

Debbuged JSON serialization error during parsing steps on file names and created debugged points and executed step-by step-procedures.

Worked with UI/UX designers and implemented layouts and CustomViews that aligned with required branding.

Facilitated visualization of file uploads and downloads to make it easier for monitoring the user.

Replaced old UI with NavigationView drawer and swiped tabs and material design features to build new master screen.

Contributed to remote notifications to synchronize updates and files on a local version of documents.

Refactored background processing tasks to migrate from Android Job library to WorkManager API to adhere to power-saving features and asynchronous one-off.

Programmed Connection and Operation error handling module to catch display messages to users during Bluetooth communication.

Worked on offline data persistence using Shared Preferences and SQLite.

Created CustomViews and animations as app prototypes and implemented Android components to specifications.

June 2014 – August 2015

Software/IT Programmer

Dana Incorporated, Maumee, OH

Gathered requirements and mapped system designs.

Wrote new functions in Java and modified existing functions in Java.

Modified multiple scripts are written in JavaScript.

Programmed various software functions in C++.

Used the JIRA platform to track productivity and tasks.

Worked on MySQL queries with the database to fetch sensitive information.

Set up API calls for data in MySQL to send encrypted data to users.

Worked with actuaries to set up scripts in MySQL that queried statistics for estimates.

Conducted code reviews with the development team following best practices and implemented the company’s naming convention.

Tested and debugged software programs/systems.

Education

Bachelor’s in Computer Science – Thomas College



Contact this candidate