Post Job Free

Resume

Sign in

Senior Android Developer

Location:
Kansas City, MO
Posted:
August 20, 2021

Contact this candidate

Resume:

Solomon Ade

Senior Android Developer

954-***-**** adn91h@r.postjobfree.com

Professional Summary

** ***** ** ********** ** the IT field.

11+ years of experience in Android.

* ********* **** in the Google Play Store.

1 app developed as a system service app.

Strong coding ability in Kotlin and Java.

Strong knowledge and demonstrated experience with Android Architecture Components as well as design patterns like MVP, MVVM, MVC, Singleton, Builder, Factory.

Experience with Android third-party libraries like Retrofit, Picasso, Glide, Location API, Google Maps, Stripe, PayPal, Dagger, Android Annotations.

Well versed in newest patterns like reactive programming with RxKotlin, RxJava, RXAndroid, and Dependency Injection.

Strong understanding of OOP and software design patterns.

Experience with Agile and working in teams using Scrum.

Strong ability to work with teams from other departments to achieve cross-functional goals and meet the specified requirements.

Strong written and oral communication skills.

Experience with Mockito, Junit, Espresso and simulated design patterns to test and develop applications.

Hands-on experience with debugging and profiling Android applications.

Ability to mentor less experienced team members on technical matters.

Well versed in Material Design guidelines.

Ability to problem-solve and manage multiple priorities in fast-paced, deadline driven environments.

Hands-on experience with continuous integration tools like Jenkins and Travis CI.

Adept with development/design standards and best practices in Android.

Skills

Programming Languages:

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

Development IDEs:

Android Studio, Visual Studio, Visual Studio Code, SSMS, Eclipse

Databases:

SQLite, Room Database, Firebase Realtime DB, MySQL, MS SQL

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

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

Other:

JetPack, IoT, Services

Experience

T-Mobile

Kansas City, MO

Senior Android Mobile Developer

Jun 2021– Present

Link: https://www.manageengine.com/mobile-device-management/mobile-content-management.html

(MCM is called Mobile Content Manager. The application is a system app used for branding devices.)

Worked on an Android development team that applied an Agile project methodology, including the use of Microsoft Teams, Kanban, WebEx, Slack, and regularly scheduled scrums and retrospective presentations and demos.

Developed MCM Notification and merged MCM/MI.

Responsible for the exponential synchronization of MCM to ensure in the event of failure it can retry after a certain amount of time.

Worked in Android Studio with coding in Kotlin using an MVVM Android app architecture.

Incorporated RxJava for API calls.

Implemented Firebase config to facilitate real-time parameter changes.

Migrated from JObschedular to WorkManager library.

Used Jira for ticket issuing/tracking to make sure dashboard everyone is assigned work and backlog defect tickets are single digits.

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

Used Postman to test API services.

Implemented Kotlin Coroutines for back-end communications threading.

Replaced Dagger with Koin dependence framework.

Upgraded MCM to next-generation version.

Maintained project documentation using Confluence.

TrackR Inc.

Santa Barbara, CA

Senior Android Developer Sept 2019 – Jun 2021

Store Link: https://play.google.com/store/apps/details?id=com.phonehalo.itemtracker

Worked on a medium-sized team of 12 developers.

Applied Agile project methodology principles and collaboration tools such as Kanban, Skype, and Jira.

Contributed to team Scrums, Sprints, and planning poker sessions and retrospectives.

Responsible for development, support, maintenance, and implementation of a complex project module.

Wrote code to construct Model to represent the data and business logic and exposed its data through observables for decoupling completely from ViewModel in MVVM architecture.

Replaced old legacy Java code with Kotlin coroutines, extension functions, delegate properties, null safety checks and higher-order functions.

Used Jibestream’s proximity service to create situational awareness and send real time targeted messages to users based on destinations and nearby assets.

Enhanced the experience using Jibestream SDK to configure indoor mapping and location, floor selector, and navigator feature.

Worked on GATT protocol and coded Bluetooth BLE services to scan devices and communicate attributes between them using RxAndroidBLE library.

Used functional interfaces, SOLID principles, and code common modules to create accounts and set passwords, add or remove accounts, and read Google service configuration.

Implemented Koin dependency injection to create and inject network models, and view model and analytics modules.

Worked on wearable module to include SwipeDismissFrameLayout, WearableRecyclerView and BoxInsetLayout and to display TrackR product information.

Used RxKotlin in conjunction with RxAndroid, RxBinding libraries to make app multithreaded and

perform asynchronous operations.

Ensured task execution, add work constraints like network availability and periodically sync application data with a server using WorkMananger API.

Used Reactive Streams API to govern exchange of Json data, compose streams of data, handle complex threading and implement back-pressure.

Add support for Dynamic Delivery by including a base module, organizing code and resources for configuration APKs.

Configured app to view item’s last seen location on a map using Google Maps services along with Location Provider Services.

Consolidated code in Bitbucket repository.

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

WISH INC

San Francisco, CA

Senior Android App Developer May 2017 to Sept 2019

Store Link: https://play.google.com/store/apps/details?id=com.contextlogic.geek

Large cross functional team, planning poker scrum estimation, 2 weeks sprints, Gitlab, TeamCity CI, Trello.

Worked existing clean-code 3-tier architecture in MVP and created shopping module, add-to-basket module, and customer-profile module.

Worked on Google Protocol Buffers to encode structure data for almost all internal RPC protocols and file formats.

Used RxJava as network protocol for passing reactive streams over various transport media and apply map, flatmap, merge, and concat operators.

Created API request to generate the token request from client app and send encrypted user data with RSA/

ESA asymmetric algorithm to backend.

Wrote code on network module to implement OkHTTP caching mechanism and used Mockserver to mock API responses.

Performed 80% code coverage integration testing using Robolectric and 70% automated UI testing using UI Espresso library.

Made app adaptable to new Android O for Notification channels and background limits to sync workout results and set notification preferences to keep tabs on account activity.

Added more payment types with existing checkout fragment by adding support for PayPal, Apple Pay, and Google Pay.

Wrote algorithms to calculate billing based on customers’ product usage and configured rules to automatically or manually renew customers’ subscriptions using Stripe API.

Implemented Firebase Realtime Database API to store and sync data with NoSQL cloud database. Included Firebase Authentication SDK to create users and allow users to sign in with their Google, Facebook, andTwitter.

Developed shipment method management dialog screens to hold/edit shipping method like express, ordinary, etc.

Improved customer retention with loyalty, gamification, and geolocation features, including special offers for customers using the app in-store.

SMART RECEIPTS LLC

New York, NY

Android Mobile Developer

Mar 2015 to May 2017

Store Link: https://play.google.com/store/apps/details?id=wb.receipts

Worked on medium-sized Android development team applying Agile principles, pair-programming, Jenkins CI, daily scrum, and SVN.

Synchronized data between Android device and web servers, implemented automated execution, and integrated account management and authentication into data transfer.

Architected the app using data binding library to operate with observable data objects, customize generated binding classes and support two-way data binding.

Integrated Google Play billing service API for buy one-time products, query for in-app product details, and test acknowledging purchase with license testers.

Integrated Android-Query (AQuery) library for doing asynchronous tasks and manipulating UI elements to display distance traveled for mileage reimbursement.

Enabled the user to search and pinpoint desired listings based on multiple varying inputs via SearchView and Content Provider allowing for customized findings.

Designed and integrated a "Terms and Conditions" screen where the user can review, in detail, the "Terms of Service" and "Licensing Agreement".

Validated asynchronous operations whose results affect subsequent operations in a UI test using Idling Resource Espresso.

Provided backwards-compatible notification API with Wear and Auto support, media playback and routing.

Created modules, components, and custom scopes using Dagger2 and performed loose coupling.

Worked with ScribeJava OAuth library to sign HTTP messages and request tokens from an OAuth service provider.

Converted Relative/Linear layouts to ConstraintLayouts to flatten the view structure and

improve performance.

Created a generic Retrofit wrapper class and put in an internal library to replace Volley and incorporate RxJava 2 for API calls.

Focused on implementing rich user interface per UI/UX and Google's Material Design specifications.

Used third party Z-Xing library to scan items using barcode scanner.

REDFIN

Seattle, WA

Android Developer

Jan 2013 to Mar 2015

Store Link: https://play.google.com/store/apps/details?id=com.redfin.android

Small team with 5 developers, BDD, Agile, XP, Gitlab, Circle CI, JIRAUsed built-in SQLite Database Schema for offline data persistence and for localized caching

Utilized Facebook Stetho, Charles Proxy API, Memory profiler, HierarchyViewer and Android Profiler to identify issues and enhance the performance.

Configured MixPanel API to send instant notifications when a new home hits the market and push notifications for any house, condo, or townhome that meets search criteria.

Created bound service to send requests, receive results, and even do so across processes with inter-process communication (IPC).

Created a custom transition animation and apply one or more animation effects to all of the views in a view hierarchy.

Coded the algorithm necessary to properly structure the query for the request needed to implement the “Filtered Search” feature.

Migrated from AsyncTasks and IntentServices based components to a reactive paradigm with RxJava concurrency modelling.

Included Android-Job utility library to run jobs delayed in the background by creating JobRequest with the corresponding builder class and schedule this request with the JobManager.

Communicated with Calendar AP and content providers I to read calendar events plus confidential information, read contacts, read web bookmarks and history.

Refined, improved performance of the app using SonarCube, Network profiler, CPU and battery profilers. Developed update patches, modules and components to mitigate security risks.

Worked with other developers, designers and product/business managers to develop new features consistent with product roadmap.

Created frameworks and automation in the development process to maximize build efficiency and secure solid code.

Maintain the Session Management for the app and Supporting screen orientations.

MyNetDiary.com

Cherry Hill, NJ

Android Developer Mar 2010 to Jan 2013

Store Link:

https://play.google.com/store/apps/details?id=com.fourtechnologies.mynetdiary.ad

Worked with cross-functional team with 2 weeks sprints.

Scanned food package for easy calorie and nutrients entry and timely notifications to log meals.

Configured to log daily meals and exercise.

Programmed visualized calorie counter and macro statistics tech implementation.

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

Resolved camera and external storage dangerous level permissions introduced in Marshmallow version.

Measured usage trends, uncovered issues, and analysed behaviours using Crittercism SDK.

Refactored Twitter's login to ensure compatibility with the application's base architecture.

Used ORMLite for persisting Java objects to SQL databases for offline mode features.

Optimized app to use Sensors API to provide access to raw sensor data streams from sensors available on the Android device.

Used History API to provide access to the fitness history and perform bulk operations, like inserting, deleting, and reading fitness data.

Deployed beta version of the app, which helped to identify bugs, user experience issues, and functionality problems.

Wrote unit tests for mobile code and debugged critical application issues such as crashes, memory leaks, and concurrency problems.

Handled various technical aspects like coding of modules using the given design specifications, debugging, and fixing the defects as well as analysing root cause.

Responsible for developing the user login screens and design the Context menus based on the Android Menu Navigation, Tabbed Navigation control and Action Bar Control.

Trax.Aero

Miami, FL

Java Developer Tech Stack:

Feb 2008 to Feb 2010

Python J2EE Web Application Developer Spring Boot MVC GITHUB Prime Face WildFly MySQL AWS Cassandra

Consulted with supervisor, systems analysts, other programmers, and end users to gather information about program intent, functions, features, data requirements, input requirements, output requirements, internal and external checks and controls, hardware and operating system environment, and interfaces with other systems.

Migrated code from PowerBuilder to Java.

Designed and wrote program specifications based on consultations with supervisor, systems analysts, other programmers, and end users for major airlines, including American Airline, Delta Air Lines, United Airlines, JetBlue, British Airways, Virgin Atlantic, Avianca, and Latam.

Converted design patterns and algorithms into computer code.

Compiled codes into programs and pushed the codes to subversion (SVN).

Created test transactions and ran tests to find errors and confirm programs met specifications.

Analyzed and debugged with the use of Eclipse to find causes of errors and revise programs.

Wrote and maintained documentation of changes to computer code, programs, and specifications.

Education / Certifications

B.S. Math and Computer Science, Federal University of Technology Minna.

Certifications: Oracle Certified Administration, TOFEL Certificate, AWS Cloud Practitioner, Agile Scrum Master in view, PMP in view, Six sigma green belt in views.



Contact this candidate