Post Job Free
Sign in

Senior Android Engineer

Location:
Windsor, CT
Posted:
July 05, 2022

Contact this candidate

Resume:

Profile Summary

Hands on developing Android apps since 2014.

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

Skilled Kotlin and Java programmer.

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

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

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

Apply knowledge of Android multithreading frameworks: AsyncTasks, IntentServices, Handlers, Threads, Runnables, and Loopers.

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

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

Experience with Android performance tuning and crash reporting applications.

Manage the implementation of dependency injection and in Android (Dagger 1, Dagger 2, Hilt).

Experience with Android SDK with Android development in Java and Kotlin.

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

Experience prototyping mobile experiences.

Proficiency in Java (JDK: Collections, Generics, Networking, Core Java), Java concurrency, and memory management.

Experience consuming third-party APIs in Android development projects.

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.

Supervise the creation of unit and integration testing suites developed 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.

Technical Skills

Languages: Java, Kotlin, .NET, C#, C++

Architectural Patterns: MVP, MVC, MVVM

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

Design Standards: Material Design

Data Binding: Android Data Binding Library, ButterKnife

Frameworks: Firebase, Reactive-X, JetPack

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

Dependency Injection: Dagger 1, Dagger 2, Hilt

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

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

Misc Libraries: JobScheduler, EventBus

Reactive-X: RxAndroid, RxJava, RxCache, RxBluetooth

JetPack: LiveData, Room, ViewModel, Download Manager

IDE: Android Studio, Eclipse

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

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

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

Version Control: Git, GitHub, Bitbucket

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

Android Security: SpongyCastle, Certificate Pinning

Profiling: Bluetooth Low Energy, Leak Canary, Crashlytics,

Media: ExoPlayer, Media Player, Picasso, Glide, Fresco

Testing: Junit, Espresso, Mockito, Robotium

Analytics: Mixpanel, Flurry

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

Build: Gradle

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

Professional Experience

Cigna Insurance, Bloomfield, CT June 2020 to Now

Senior Android Mobile Engineer

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

The myCigna app gives you a new and improved way to easily access your important health information. You must be a Cigna customer to use the secure myCigna mobile app.

Worked with team adapting UI elements for the different types of plans being integrated with the app.

Worked in pair programming culture from driver and navigator across several iterations in the project strategy.

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

Utilized Android Studio for app development.

Participated in Sprints lasting 2 weeks with a release every 4-6 Sprints.

Added enhancements to existing features like dental and vision benefits.

Added new features to the app such as Authorizations and new plan types.

Secured transmitted Personal Health Information with application of token-based authentication and SSO to follow HIPPA standards.

Handled dependency injection with Hilt.

Worked on dev team that applied Agile development methodology with a strong Scrum Master.

Adjusted UI elements for the new enhancements to Dental and Vision claims.

Worked establishing an entire new feature for authorizations. Included new services and UI elements.

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

Developed custom and compound views to match UI/UX specifications.

Applied Kotlin extension functions to efficiently re-use existing codes and reduce code duplication to its bare minimum.

Performed daily code reviews on new submissions using SonarQube.

Utilized Bitbucket with code reviews and release branches.

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

Panda Express, Rosemead, CA September 2018 to June 2020

Sr. Android Mobile Engineer

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

Order your favorite Panda dish on the fly for dine-in, take out or delivery! Order your food at your own pace and we’ll scoop it hot and fresh in the store. Easily find a location, choose your meal and order in minutes. Not ready to pick it up yet? Just let us know through the app and your order will be hot when you’re ready for it.

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

Performed technical work using Android Studio with Kotlin codebase and MVVM architecture.

Programmed new Kotlin modules and migrated existing Java code into Kotlin.

Worked closely with the UI/UX, Testing and continuous integration team to ensure a high-quality product.

Used Firebase to track analytics and app crashes.

Used Google Maps to display all map data to the user.

Used Google Geocoding API to transform coordinates to readable addresses.

Used Retrofit and Coroutines to consume RESTful web services and handle multithreading on background for smooth performance.

Used Retrofit and OkHTTP networking libraries to retrieve information relating to status and deliveries.

Integrated Lottie animation library to parse Adobe After Effects animations exported as JSON and rendering them natively.

Used Android Studio IDE and Android SDK to write application logic.

Refactored callbacks to suspendible Coroutines and performed network requests, JSON parsing, and reading from a database.

Implemented Android Bluetooth and Location Connectivity components

Applied an Offline-First model using Room Databases and migrate from SQLite implementation.

Applied Roboelectric, Mockito, and Espresso for testing.

Used reactive frameworks such as RxAndroid, RxBluetooth, and RxKotlin.

Converted old responses into using Rx2 error handling methods.

Performed troubleshooting of production problems arising from API errors and Low Connectivity and refactored code to address those problems.

IHG Mobile, Atlanta, GA September 2017 to September 2018 Android Mobile Engineer

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

Book and earn rewards at our family of hotel brands, including Holiday Inn®, Holiday Inn Express®, Holiday Inn Club Vacations®, Holiday Inn Resort®, InterContinental® Hotels & Resorts, Six Senses Hotels Resorts Spas, Regent® Hotels & Resorts, Kimpton® Hotels & Restaurants, voco™, Hotel Indigo®, EVEN® Hotels, HUALUXE® Hotels & Resorts, Crowne Plaza® Hotels & Resorts, avid™, Staybridge Suites®, Atwell Suites™ and Candlewood Suites®.

Worked in Android Studio with coding in Java and Kotlin using an MVP architecture.

Utilized WebView to render some HTML and JavaScript content.

Contributed to Scrum meetings to track app development progress and ensure project development was on track.

Implemented relational databases using SQLite.

Implemented MVP architecture and various design patterns (Singleton, Proxy, Observer, Façade)

Developed rich application layouts following Material Design.

Consumed REST API to display user history on the user interface.

Developed test cases using JUnit and tested the UI using Espresso and Mockito.

Participated in-app planning, architecture, and design; app approval and launch in the Google Play app store.

Followed the Test-Driven Development (TDD) approach while developing the app.

Worked with product and user experience teams to support multiple screen resolutions on multiple Android devices. Identification of issues by root cause analysis during the test cycles.

Implemented the cipher method for the storage of sensitive data such as passwords within the Android application.

Experience with Android performance tuning and crash reporting applications.

Implemented dependency injection natively in Java for object references.

Implemented push notifications to alert users to save by creating notifications natively with notification builder.

Frontier Airlines, Denver, CO April 2016 to September 2017

Android Developer

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

Frontier’s mobile app makes travelling easier than ever before! Wanna skip the lines? Use our mobile boarding pass and go straight to the security checkpoint. Need to add a bag or select your seat? This app makes it easy. On the go, but need to book a flight? Shop our low fares here. Wanna’ know the status of your flight? Get up-to-the-minute flight information here.

Worked with the design team and testers to improve the onboarding flow of the app in a fast-paced Agile environment.

Worked in Java and Kotlin using Android Studio IDE.

Used SQLCipher and a custom CryptoManager and Keystore using SHA256 and RSA asymmetric encryption to store sensitive data.

Used SSL and a custom certificate-pinner on top of an OkHttp client built with SHA 256 to avoid man-in-the-middle attacks.

Automated publishing App Bundle or APK to Google Play Store using Gradle Play Publisher API, combine artifacts into a single release.

Worked with the Android SDK.

Gathered JSON data and parsed it using the GSON library.

Worked with Zxing to implement barcode generation and processing for easier check-ins with mobile boarding pass.

Introduced and refactored selected modules with Kotlin using Smart Cast, default arguments, data entities, and null safety.

Utilized RxJava/Functional for seamless real-time updates for flight tracking, flight updates and ticket prices.

Enhanced Android features to minimize usage based on authorization and authentication tokens.

Migrated Dependency Injection framework from Roboguice to Dagger.

Created test cases for flight tracking using Mockito.

Profiled, tuned, and optimized Android apps and branching, pushing and merging codes with Git repository.

Used GIT for code repository and version control.

Followed Test-Driven-Development (TDD) and used Mockito PowerMock and Espresso for our default testing frameworks.

Created custom Espresso matcher class to help test RecyclerView and their scrolling functionality.

Lakeland Financial, Warsaw, IN January 2014 to April 2016

Android Application Developer

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

Lakeland Bank’s Mobile Banking App provides convenient 24/7 access to your Lakeland Bank accounts. Use the same login credentials as your online banking profile and enjoy a simplified interface optimized for your mobile device. Monitor account activity and make transfers anytime and anywhere your phone takes you.

Worked closely with the API team to define and consume API services for the apps.

Worked in team of back end, front end, QA, and engineers to design, create, test and deploy applications.

Troubleshoot and resolve defects that are found by our customers and beta testers.

Used SAX parser library to receive XML responses and parse to get the required output.

Pair-programmed to create the "Login" feature using Facebook SDK and user email login through use of OAuth Authentication.

Integrated AppsFlyer SDK to measure, track, and optimize mobile user acquisition campaigns.

Transitioned from Dagger 1 to Dagger 2 dependency injection in network and database module.

Implemented Shortcut Badger library to show the count of unread messages as a badge on App shortcut.

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

Added Selectors and Animation effects on Android UI/UX elements to create a dynamic user experience (UX).

Reviewed code base reviews of Java code base and refactored java arrays to Kotlin.

Used continuous integration tools Jenkins and Travis CI and automated testing framework Espresso.

Utilized Android and third-party frameworks to use the multithreading capabilities of the physical devices: AsyncTasks, IntentServices, Handlers, Threads, RxJava instances.

Made use of Activities and Activities for Result and the RecyclerView to get a better performance of the Android application.

Education

Bachelors (Computer Engineering) - UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO



Contact this candidate