Post Job Free

Resume

Sign in

Senior Android Developer

Location:
New York, NY
Posted:
September 21, 2023

Contact this candidate

Resume:

ady4jd@r.postjobfree.com

Phone: 380-***-****

Daniel Rafalano

Senior Android Developer

Profile Summary

•Android development experience: 11+ years with 6 apps published to Play Store.

•Overall software/IT and Android experience covers 17+ years.

•Experience building Android apps from scratch as well as revision, refactoring, and transitioning architecture (MVC, MVP, MVVM) and code base (Java to Kotlin and Android versions).

•Familiarity with push notifications, APIs, and cloud messaging.

•Android performance profiling, memory and power management and optimizations.

•Experience working on Agile development teams using Scrum processes.

•Native Android Development in Android Studio and Eclipse using Java and Kotlin.

•Apply Java patterns Singleton, Facade, Factory, Builder, Adapter.

•Well versed in Android third-party libraries such as Volley, Retrofit, Picasso, YouTube, Location API, Maps View, Google View, Google Maps, PayPal, Stripe, Android pay, QR Droid, Butterknife, Dagger, Google Wallet payments, Android Annotations.

•Knowledgeable of the latest analytics tools for mobile applications such as Google Analytics, Localytics, Mixpanel, Answers, Flurry, Crashlytics, NewRelic, etc.

•Experience in Git for code base and version control (GIT, GitHub, GitLab).

•Used Android frameworks and APIs to efficiently load data and update databases: Loaders, AsyncTaskLoader and SyncAdapters.

•Skilled in consumption of RESTful web services (REST, HTTP-based, XML, SOAP, JSON, etc.) and use of Retrofit, Volley, AsyncTask Android back-end communications.

•Expertise in Android Life Cycle, Fragments, Intents, and threads on Android; binding services, implicit and explicit Intents, background processes, sync adapters, activity, activities for Result, WebView, ImageView, TextView, RecyclerView, ListView, and Object-Oriented design and programming.

•Skilled in using designs tools like CardView, Toolbar, RecyclerView, animations properties and support libraries for this Android mobile app.

•Improved the performance and UX of several modules of the local Content management system.

•Work with Shared Preferences, Cipher, Certificate Pinning, TrustManager, Bouncy Castle, Spongy castle, SQLCipher, KeyChain, Key Store.

•Hands-on with testing tools such as Mockito, Espresso, Robotium, etc.

•Implement full life cycle of SDLC from Analysis, Design, Development, Deployment and Testing of Application.

•Skilled in leadership and able to work well with all people, mentoring developers, working with project managers, stakeholders, and cross-functional team members.

Technical Skills

Languages: Java, Kotlin, .NET, C#, C++, HTML, CSS, JavaScript, Git, .NET MVC, Visual Basic, Windows Batch & Shell Scripting, Java EE, JavaBeans

Databases: SQLite, Firebase DB, MongoDB, T-SQL, MS SQL, My SQL

IDE: Android Studio, Eclipse

Design Standards: Material Design

Architectural Patterns: MVP, MVC, MVVM

Design Patterns: Abstract Factory, Adaptor, Bridge, Builder, Command, Decorator, Interpreter, Monitor Object, Observer, Proxy, Singleton, Visitor

Project Tools: JIRA, Kanban, Trello, Slack, Confluence, VSTS

Methods: Test-Driven Development (TDD), Continuous Integration, Agile, Scrum, Pair Programming

Version Control: Git, GitHub, Bitbucket

RESTful Web Services: REST, SOAP, XML, JSON, GSON, Moshi, Retrofit, Volley, OKHTTP

Threading: Loopers, Loaders, Handlers, AsyncTask, Intent Service, RxJava, Coroutines

Data Binding: Android Data Binding Library, ButterKnife

Frameworks: Firebase, Reactive-X, JetPack

Android Security: SpongyCastle, Certificate Pinning

Profiling: Bluetooth Low Energy, Leak Canary, Crashlytics,

Media: ExpoPlayer, Media Player, Picasso, Glide, Fresco

Testing: Junit, Espresso, Mockito, Robotium,

Analytics: Mixpanel, Flurry

Dependency Injection: Dagger 1, Dagger 2

Push Notifications: Google Cloud Messaging (GCM), Firebase Cloud Messaging (FCM)

UI Implementation: Navigation Drawer, Widgets, UIAutomator, FloatingActionButton,

Misc Libraries: JobScheduler, EventBus

Continuous Integration: Bitrise.io, Jenkins, Hudson, Travis

Build: Gradle

Reactive-X: RxAndroid, RxJava, RxCache, RxBluetooth

JetPack: LiveData, Room, VIewModel, Download Manager

Misc: Schematic, MonkeyRunner, SyncAdapters, Ion, Kickflip, Parse, Parceler

Professional Experience

Android Developer Consultant

JP Morgan Chase, Columbus, OH / 07.2022 to Present

App: https://play.google.com/store/apps/details?id=com.chase.sig.android

Project Summary: The Chase Mobile app is utilized to do banking, managing accounts, monitoring credit scores, budgeting, and monthly spending. Currently, Chase is 5 years behind in mobile technologies in comparison to leading mobile apps. Chase is actively going through a process of closing technology gaps. The main ongoing projects are migrating the base code from Java into Kotlin, implementing Google Tink’s cartographic APIs, and utilizing Jetpack frameworks.

•Led a 20-member team and collaborated in a cross-platform environment with 8 Android developers, 8 iOS, 3 Lead Managers, 3 Scrum master’s and 1 Unit Lead.

•Refactored modules and tested deprecated APIs against new APIs.

•Facilitated requirement gathering sessions and wrote the high-level and detail design for the Android application.

•Successfully managed the authorization with the backend services using certificate pinning.

•Collaborated on the development of Semantic versioning documentation for incoming developers.

•Created Unit Tests using Mockito to increase Sonar code coverage.

•Configured Git repositories in private GitHub for the Android development team.

•Created a successful proof of concept (POC) with a secure SSL layer to authenticate users and refresh login tokens.

•Worked on End-To-End encryption using Google Tink cartographic APIs to refactor existing cartographic APIs.

•Used integration test of biometric automated test for Android SDK/API Levels to authenticate users via fingerprint scan API.

•Transitioning legacy code and correcting code; Conducted code analysis.

•Used JPRxJava and JPRxAndroid for asynchronous streams of data.

•Use of GIT for source control management and continuous integration with Jenkins

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

•Constructed prototypes of the User Interface integrating the latest Material Design guidelines.

•Contributed to full software development lifecycle (SDLC) from product definition through design, development, test, release, and maintenance.

•Documented the Android project details, functionality and quality testing.

•Liaised with the testing team during the testing phase to resolve issues of Android app performance and user experience (UX).

•Created small testing suites with JUnit and the Android Studio IDE capabilities.

•Developed the app natively in Android Studio.

•Devised creative, technical solutions to functional problems.

•Diagnosed and resolved mobile networking performance issues.

•Managed competing priorities in a complex environment and maintained high productivity.

•Integrated web applications, and web services to the Android app to add functionality and enhance performance.

•Accessed web content using implicit and explicit intents.

•Decoupling with Dagger 2 for Dependency Injection.

•Assisted in Sprint planning by creating stories, breaking into tasks, and created a plan estimating time for tasks, and thus user stories.

•Documented the progress of the daily stand-ups with the Atlassian stack (JIRA, Confluence, HipChat).

•Enhanced the UI/UX with well-designed UI/UX and custom views and compound views. Also, collaborated with designers on the Android look and feel.

•Established communication with back-end server to consume Restful API using core Android classes.

•Implemented the use of handlers and threads on several tasks which improved the application performance.

•Combined a Drawer Layout to handle external and constant menu items related to the app’s current Activity and extra features.

•Added encrypted environment configuration with sessions and user login using Shared Preferences.

•Used JIRA to organize, prioritize and assign issues as they arose.

•Built Activities using compound and customized views.

•Ensured security of application, login, and authentication using SSL and encrypted tokens.

•Facilitated Scrum meetings including Sprint Planning Meeting, Daily Scrums, Sprint Reviews, Sprint Retrospective Meetings, and Backlog Refinement Meetings.

Senior Android Developer

First Midwest Bank, Chicago, IL / 09.2020 to 07.2022

Start banking wherever you are with First Midwest Mobile! Available to all First Midwest Bank online banking customers. First Midwest Mobile allows you to check balances, make transfers, pay bills, make deposits, and find locations.

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

•Improved Android Keystore program to store cryptographic keys in a container and protect key material from unauthorized use.

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

•Persisted Realm data to disk and transparently encrypted and decrypted with standard AES-256 encryption pair program to work on the feature “Transfer money” between your Chase accounts’ in a TDD way.

•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 gRPCs built-in error codes with use of SSL/TLS to authenticate server and encrypt all data exchanged between client and the server.

•Pair programmed to perform migration of the existing DEV/USR/PRD environments to the cloud for the native application resulting in reduce of servers and infrastructure administration by 97%.

•Integrated Flow API with Kotlin coroutines to handle streams of values, transform data using Flow operators, code exception handling during flow processing and combine multiple Flows

•Configured GSON converter to convert data in JSON format into POJO.

•Applied OKhttp3 and Logging interceptor to log API call Infos.

•Used Hilt for dependency Injection.

•Developed a library that abstracted the core banking business rules and defined the business objects to provide interface for GUI.

•Used coroutines for asynchronous call and handle threading.

•Wrote Functional, Unit, and Instrument tests using Mockito and Espresso.

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

•Created and tested with Custom Proxy tool to diagnose emulator connection to Bank’s Payment Services.

Senior Android Mobile App Developer

Trane, La Crosse, WI / 04.2018 to 09.2020

Take care of your home and the people in it from anywhere with Trane® Home (formerly Nexia™). Trane Home is home automation made simple because now you stay connected everywhere you go. Run the most important systems in your home - thermostats, locks, lights and cameras - from your Android phone.

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

•Applied build work to a MVVM clean code architectural pattern.

•Refactored arrays and refactored some modules from Java to Kotlin.

•Applied ML Kit mobile SDK to enhance app with machine learning aspects.

•Utilized latest version of Google application programming interface (API) for communication with Google Services and related integration to other services.

•Set up and configured an RxAndroidBLE environment.

•Used Jetpack Compose for UI development.

•Utilized Firebase Real-Life Database to remotely store information from the Room Database, enabling users to maintain their information when changing devices.

•Managed automated testing with additional quality with Charles Proxy and Leak Canary.

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

•Refactored codebase with JobIntentSerivce, WorkManager, and Paging.

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

•Implemented Jetpack component for data binding along with Dagger 2 and Hilt for dependency injection.

•Integrated Firebase Remote Config API to change the styles and themes of app in app preferences.

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

•Applied elements of Kotlin Flow such as coroutines to interact with the database and networking operations in repository layer in Clean Code architecture.

Android Engineer

Walgreens, Deerfield, IL / 06.2016 to 04.2018

Use the Walgreens’ app to shop and manage your prescriptions. Refill in a snap by scanning your barcode. Track order status for you and your family. Stay on track with pill reminders to help you manage medications day-to-day. Get FREE prescription and general health advice 24/7 from a pharmacy expert in a live chat. And more.

https://play.google.com/store/apps/details?id=com.usablenet.mobile.walgreen

•Involved in all phases of software development lifecycle from planning to launch.

•Participated in code reviews, testing and troubleshooting.

•Followed an Agile Scrum methodology.

•Helped prepare the implementation plan.

•Worked in a small team of developers using Agile methodology and Scrum practices.

•Programmed in Java/Kotlin using Android Studio.

•Embedded Google Maps API, GPS Location Data into app with zooming controls.

•Organized and tracked tasks in JIRA and managed project backlog.

•Used GitHub repository for version control.

•Wrote unit and instrumentation tests using JUnit, Mockito and Espresso.

•Implemented several design elements that added great value to the application and improved UX while attaining to Google’s design guidelines.

•Contributed value to cross-functional engineering teams (back-end development, front-end development, UI/UX designers, QA, Product Management, etc.).

•Applied Crashlytics for productive bugs detection and app crashes reporting to better refine the Android app.

•Configured APIs to consume web services for integration with various repositories using Retrofit.

•Integrated the PayPal Android SDK for making payments through the Android app.

•Collaborated with Software Engineers for the design and development of back-end services.

Android App Engineer

United Airlines, Chicago, IL / 02.2014 to 06.2016

The United app allows the user to book tickets, check-in, scan mobile boarding passes, manage the United Club membership for access to United Club locations, MileagePlus card, travel tools, including check-in, booking and flight status.

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

•Worked closely with back end team to redesign RESTful web services

•Created a Push Notification Server using NodeJS and implemented MongoDB and MSSQL databases to store unique device keys.

•Worked closely with designers to create the look and feel of the application meeting Google’s design standards while following company’s corporate identity guidelines.

•Integrated Facebook and Twitter for social networking

•Worked with the back-end team to implement a secure login system for the application

•Designed and implemented a module for users to review their historic travel information

•Designed application workflow and wireframe for new modules

•Improved the performance on the UI by implementing fragments and implementing the RecyclerView.

•Participated in pair programming to reduce learning curve on new Kotlin language implementation.

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

•Participated in code reviews and applied the Jacoco tool to ensure complete code coverage review.

•Integrated push notifications messages with cloud tool Firebase to populate new updates on schedules.

•Improved the user experience by including android wear compatibility.

•Integrated VideoView for video promos about upcoming events.

•Used Bluetooth low energy and Leak Canary to solve mobile networking performance issues

•Implemented a Navigation Drawer for quick access to different activities and a better User Experience

Android Application Developer

Jewel-Osco, Itasca, IL / 05.2012 to 02.2014

Get all your deals, coupons, and rewards in one place. Easily find items carried in your store. Build your shopping list so you won’t forget anything. Quick access to your online and in-store purchase history. Use Drive Up and Go or Delivery to get your groceries in a snap.

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

•Implemented secure data encryption using an SQLCipher instance.

•Introduced Navigation Drawer and Tabs, custom and compound views to the project.

•Implemented HTTP client (GET, POST, DELETE, PUT) to consume RESTful web services.

•Connected the app to Twitter, Instagram, and Facebook.

•Generated reachable daily goals and created a delegation task system that allowed developers focus on the development bearing.

•Used Android Annotations for dependency injection.

•Used design patterns: MVP, Factory, Singleton, and Decorator.

•Identified bugs on the previous version improving the performance on the Android lifecycle.

•Trained internal Java developers for further application maintenance.

•Used Android Device Monitor for monitoring CPU load, heap size, and memory usage.

•Implemented multithreading communication using the built-in Android frameworks like AsyncTasks and Handlers.

•Closely worked with the testing team and used developer testing tools like Robolectric.

•Integrated Flurry for mobile analytics.

•Use of GIT for source control management and continuous integration with Jenkins.

•Assisted with the architecture and implementation of runtime permissions for Android version 4.1 and above.

•Proven abilities to work closely and effectively with engineering and non-engineering teams

•Generated a downstream logic to communicate the servers with the phones using Google Cloud Messaging (GCM).

•Configured manual and generated content providers using Schematic.

•Interacted closely with both the Product and the Design teams.

•Used Android Studio, Java, AsyncTasks, Google Maps, RESTful, JSON, SQLite, Servlets, Tomcat, MySQL, SVN, 9Patch.

•Fluent in Android SDK/NDK and device driver development.

IT/Software Systems Engineer

Mercer, New York, NY / 06.2006 to 05.2012

•Installed and maintained servers and other related computer systems.

•Installed, configured, and maintained hardware and software components and systems.

•Troubleshot customer issues over the phone and in person, accurately diagnosing and resolving issues in response to customer reported incidents.

•Applied company standard customer support policies and procedures.

•Engaged with cybersecurity stakeholders to set up systems to identify and repel any potential threats or attempts at unauthorized network access, and ensured enforcement of national and DoD security policies, directives, and standards.

•Engaged in remote control, patch management, operating system deployment, network protection, and other services via the Microsoft SCCM platform.

•Performed troubleshooting and related technical fixes to servers.

•Performed dedicated strategic and budget planning for all systems and their hardware or software.

Academic Credentials

Master’s in computer science - Lehman College



Contact this candidate