Post Job Free

Resume

Sign in

android

Location:
Canton, MA
Posted:
January 09, 2023

Contact this candidate

Resume:

Sheckardo Daley

SENIOR ANDROID MOBILE APPLICATION DEVELOPER

Phone: 781-***-****; Email: adna5l@r.postjobfree.com

SUMMARY

-12 years of software/IT experience

-7+ years developing Android mobile applications

-5 apps published on Google Play Store.

-Demonstrated experience coding in Kotlin

-Possess Java programming experience

-Strong experience with full SDLC projects in Waterfall and Agile/Scrum methodologies

-Experience with Android software development, published Android applications and unit and integration testing Android code

-Exposure to tools such as Retrofit, Kotlin, Coroutines, RxJava, Jetpack, Firebase, etc.

-Familiar with clean architecture, Live Data, MVVM, MVP, unidirectional data flow, etc.

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

-Expertise in UI development with programmatic layouts per design specifications

-Experience in coaching and mentoring developers through peer reviews of code

-Designed various applications using optimal architectural design patterns (Model View Controller, Model View Presenter, Model View ViewModel).

-Experience in component designs and documents to ensure quality component delivery

-An understanding of web service protocols (REST, SOAP, API, HTTP-based, XML, JSON)

-Experience of debugging their own code and writing clean code

-Strong experience of detecting and correcting memory usage issues and optimizing code for application performance

-Experience in Bluetooth, NFC, Location and other peripheral device communications

-Sound Computer Science foundations in algorithms, data structures, concurrency, threading, and programming languages

-Experience with continuous integration tools like Jenkins or Travis CI and automated testing frame

-Proficient in using best UI/UX best practices implementing fragments, diverse layouts, animations, Material Design, Compound Views, and Custom Views.

-Experience in working with Android SMS Manager, Location Manager, Google Maps, APIs, and Ajax.

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

-Experience using 3rd party libraries for image loading, notifications, and web services.

-Experience with embedded local storage solutions such as SQLite, Room DB, Shared Preferences, Encrypted Shared Preferences, internal storage, external storage, and cloud storage with Firebase.

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

-Contribution Android teams with mentoring, development, and extensive code reviews.

SKILLS & TECHNOLOGIES

-Android Operating Systems: Android Pie, Android Oreo, Android Nougat, Android Marshmallow, Android Lollipop, KitKat.

-Programming Languages: Kotlin, Java.

-Databases/Languages: Room, MySQL, SQLite.

-Architecture and Design Patterns: Singleton, MVP, REST, MVVP (Model, View, ViewModel), Dependency Injection (DI), Model-View-Controller (MVC).

-User Interface (UI)/User Experience (UX) Design: Figma.

-Integrated Development Environments (IDE)/Frameworks: Dagger, Bluetooth, Android Studio, Eclipse, Android Annotations, Jenkins, JUnit unit testing, Visual Studio App Center.

-Android Software Development Tools and Libraries: RXJava, Sketch design, Mockito, Firebase Crashlytics crash reporter, Parceler code generation, GitLab lifecycle tool, RESTful application programming interface (API), Android DozeView, Mixpanel business analytics, LeakCanary memory leak detection, Bluetooth Low Energy (BLE) low-power wireless communication technology, JetPack, MPAndroidC charting framework, ChromeCast streaming media, HART communicator protocol, Otto event bus, Caligraphy custom font, EventBus, Volley HTTP, OkHTTP, GSON, Retrofit data serialization conversion, Apollo Android, SonarQube bug detection, UrbanAirship push notifications, Gradle build automation.

-Multimedia: ExoPlayer, Videoplayer, Android VideoView, Anvato Android SDK

-Continuous Integration Platforms: CircleCI, Travis.

-Project Development Methodologies: Agile, Scrum, Waterfall.

-Version Control: Jira, Git, GitHub.

PROFESSIONAL EXPERIENCE

SENIOR ANDROID DEVELOPER

Dunkin Donuts, Canton, MA – Jul 2021 – Present

Name of the App: Dunkin

Link: https://play.google.com/store/apps/details?id=com.dunkinbrands.otgo&hl=en_US&gl=US

Description: The app allows users to order products without having to go in store. User can choose to collect order at the drive-thru, curbside or by walking into the store. Users pay orders via the app, so they only must collect their order once they arrive at the store. Registered users generate points with each order which they can also apply to future orders for discounts.

Technology Used: Kotlin 1.4.21, SCRUM, Atlassian Jira, Android Studio 4.1.3, GitHub, retrofit 2.6.2, Dagger 2.24, EventBus 2.4.1, Junit 4.13.1, Espresso 3.2.0, Mockito 2.23.4, RoomDatabase 2.3.0, Kotlin Coroutines 1.3.6, Kotlin Serialization JSON 1.2.1, Shimmer 0.5.0, Dokka 0.10.1, WorkManager 2.5.0, Okhttp3, mParticle, Abstract, Mixpanel, Figma, Dexguard, Firebase Crashlytics 2.3.0, Lottie 3.5.0 and Charles Proxy 4.6.2

Project Summary: Add new features to and re-design existing app. Manage team to ensure deliverables are met in a timely manner

Responsibilities:

-Configured Android studio on machine and linked it to Github account.

-Modified JVM on machine to make compatible with Dunkin code so gradle could build successfully.

-Created branches on GitHub, fetched them on my machine so I could work on them locally.

-Changed build variant in Android Studio depending on what mode I wanted app to be built. (E.g., DEV or UAT)

-Pushed and pulled code changes so remote and local branches are always in sync and can be merged without conflicts.

-Participated in meetings surrounding app release and confirmed stability for production version of app.

-Resolved conflicts with Pull Requests so that branches can merge successfully.

oManipulated branches from Android Studio and GitHub which included:

oMerging local branches and pushing to a remote branch

oChanging which remote branch my local branch happens to be tracked

oChanging original base branch from which a Pull Request was made

oMerging remote changes with my local branch so my local branch is up-to-date.

-Wrote Unit Tests for functions using Junit4.

-Worked on stories to implement new features, some of which included

oScheduled ordering

oMenu Search functionality

oRe-design guest sign up screen

oRe-design and improve user experience with reloading balance on Dunkin Donuts card.

-Led weekly presentations where app features were demoed to upper management.

-Modified codebase so that existing API could send additional attribute when request was being made.

-Connected Charles Proxy to my Android device so that I could monitor network data when API calls were made in app.

-Mocked API responses using Charles Proxy so I could simulate scenarios and monitor app behaviour.

-Implemented a network call of an existing API at different sections in codebase.

-Implemented Mutable Live Data and Observables so that UI changes could be tracked. Some other Android components used included Fragments, View Models and Event Bus

-Used Atlassian JIRA to manage storyboard as well as to track/manage stories and bugs. Operated in a SCRUM environment.

-Debug app using breakpoint to determine sources of issues.

-Reviewed code submitted by team members in Pull Requests and merged with base branch.

-Tested features and changes made by team members before submitting to QA

-Interviewed applicants who would potentially join team.

-Led a team of 4 individuals and acted as a liaison between team members and management team to ensure members had necessary accounts logins to work effectively.

-Used Crashlytics to monitor crashes in production environment as well as view logs of crashes when testing in the DEV environment.

-Modified app gradle and codebase to ensure project builds successfully and is compatible with Android 12.

-Fixed bugs captured by Crashlytics

-Implemented animation using Lottie Animation

-Helped team members with Android Studio and gradle syncing issues.

SENIOR ANDROID DEVELOPER

BOK Financial, Tulsa, Oklahoma – March 2020 – Jun 2021

https://play.google.com/store/apps/details?id=bokf.ib.android.market.csbt&hl=en_CA&gl=US

The BOK Mobile Banking app allows you to access your BOK Financial account(s) anytime conveniently and securely, which means you can literally do your banking wherever you are.

-Worked as a Senior Developer on an Agile team on an upgrade/optimization project.

-Utilized Android SDK and supporting development devices.

-Applied strong understanding of the Android application development lifecycle.

-Android Studio used as IDE in Android application development with use of the Android tools set for development and testing.

-Implemented OOP throughout the entire development of the project and enforced SOLID design principles.

-Converted from Rx1 to Rx2 including support for both Java and Kotlin.

-Converted old responses into using Rx2 error handling methods.

-Programmed functions in Java and Kotlin.

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

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

-Wrote Functional, Unit, and Instrument tests using JUnit, MockK, and Espresso.

-Used RxJava as network protocol for passing reactive streams over various transport media and applied Map, Flatmap, Merge, and Concat operators.Used Retrofit and RxJava to consume RESTful web services and handle multithreading on background for smooth performance.

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

-Developed new features in Kotlin to reduce codebase with data classes and extension functions.

-Participated on the RESTFul API definition following best practices.

-Worked with back-end team to improve the RESTful API to include new features for the Android app.

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

-Implemented various user interface components such as WebView, ListView, ImageView, TextView to display the data for the application.

-Used Room DB to store information locally on Android device.

-Added biometric sign-in function to the app.

-Added Push Notifications through Backend support with Push Notifications and GCM.

-Applied Git for code versioning control.

-Maintained high unit test coverage and continuous integration principles.

-Attended SCRUM meetings and met deadlines.

FULL STACK DEVELOPER

FedEX, Brookfield, Wisconsin – January 2019 – March 2020

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

Create a domestic and international shipping label, track shipment status and manage your packages wherever you are with the FedEx Mobile app. Use the app to get quick rates, find a pickup or drop off location, scan bar codes, and view rewards. Enroll in FedEx Delivery Manager® to customize when and where you wish to receive your packages.

-Assigned to a large cross-functional distributed team that employed an Agile project methodology, with regular Scrums and 2-week Sprints.

-Implemented OOP throughout the entire development of the project, enforcing SOLID design principles.

-Refactored code from MVP to MVVM to streamline codebase and reusability of logic.

Implemented back-end retrieval using RxJava and Retrofit.

-Utilized Android Studio IDE to develop and code updates to the application.

-Solid background in Android UI, Android SDK, Android design patterns.

-Implemented the Kotlin with Android studio for smooth functioning of the location based services GPS, Bluetooth on Android.

-Used RxKotlin in conjunction with RxAndroid, RxBinding libraries to make app multithreaded and perform asynchronous operations.

-Created automated UI integration tests for application features using Espresso and UIAutomator.

-Performed code reviews of former developers to ensure and maintain good quality of code.

-Used support libraries for backward compatibility with much older Android versions.

-Developed batch processing jobs using Java.

-Applied SQL, database and persistence frameworks, including Hibernate, Object / Relational Mapping, Query performance tuning, etc,

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

-Applied Agile and DevOps Toolchain methodologies to develop and implement internal systems, processes, and best practices designed to increase productivity.

-Worked with cloud infrastructure environments and containerization technologies.

-Created multiple scripts in the Gradle file for test automation, reporting, signing and deployment.

-Added QR and barcode scanning functionality by using QR Droid.

-Used Git and Subversion for version control amongst a team of developers

-Redesigned mobile UI and implemented dynamic image sizing and support for multiple devices.

-Experience developing web services using XML-RPC, SOAP, or REST approaches.

-Included Google Cloud Messaging for instant alerts for the customers.

-Integrated Mockito for unit and integration tests

-Set up containers using Docker.

ANDROID DEVELOPER

GE Appliances, Louisville, Kentucky October 2016 - January 2019

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

SmartHQ lets you manage and control a variety of smart Appliances from GE Appliances, GE Profile, Café, Monogram, and Haier to give you total control of your headquarters, your home.

-Followed AGILE methodology with Test Driven Development for implementing the Application

-Work in 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.

-Implemented rich user interface per UI/UX and Google's Material Design specifications.

-Developed highly efficient Java code and view layouts and the ability to diagnose performance bottleneck.

-Extensive experience with Java and full command of Android APIs on all OS versions.

-Find Bugs tools on a tight deadline in Agile/TDD environment

-Maintained control of versions using GIT and set-up a GitHub repository.

-Sped up the build process with continuous integration tools: CircleCi and Travis.

-Applied Flutter for cross-app development.

-Used Espresso & Mockito for testing the UI & App functionalities.

-Refactored and redesigned multiple Android modules for reusability purposes.

-Retrofit with RxJava for improved performance and multithreading capabilities.

-Used the View Pager Indicator to provide feedback to the user about the background processing status.

-Implemented layouts using the latest RecyclerView and CardView combinations to improve the User Interface.

-Found and fixed bugs using Crashlytics.

ANDROID DEVELOPER

Lenovo, Chicago, Illinois - September 2013 – October 2016

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

Find support for your Lenovo PC, tablet, smartphone, data center, and other Lenovo and Motorola devices. Quickly find solutions, view your warranty status and device information, optimize your phone, find your nearest service provider, check your repair status, and more.

-Followed Agile methodology with daily standups, monthly team meetings, sprint grooming meetings and sprint planning meetings.

-Expertise in using SQLite, Java, XML, JSON, Google Play Services API, and RESTful APIs.

-Composed the program using Java with Eclipse and the Android Development Tool.

-Wrote maintainable and reusable Java code with a focus on security and privacy.

-Independently worked on "Pull Down To Refresh" functionality to manually refresh the data and cache locally in SQLite database.

-Worked in Android Studio and implemented updates to the Android app to improve responsiveness and better manage the large app size and various modules and functional areas.

-Worked closely with network and backend teams to consolidate API calls, create proper documentation for parameters, and retrieve format objects.

-Android Camera2 API development experience.

-Used the JIRA bug tracking tool for quality control and project management.

-Provided continuous improvement through creative solutions to glitches in synchronization, asynchronous APIs, and leveraging offline features.

-Implemented Urban Airship for makes the push notification easy.

-Integrated Dependency Inversion principles with Dagger libraries.

Software Developer

MedStar Southern Maryland Hospital Center Clinton, MD Software Developer - Dec 2009 – Sep 2013

-Participated in Software Development Life Cycles covering analysis, development, testing, and deployment of multiple customized software programs.

-Configured a variety of off-the-shelf software programs (e.g., Enterprise Resource Planning, Material/Inventory, etc.).

-Adhered to Agile Scrum methodology.

-Worked cross functionally with other specialized technologists such as backend engineers, database designers/developers, UI/UX designers, QA engineers, etc.

EDUCATION

Bachelor’s degree in Computer Science from University of Technology, Jamaica



Contact this candidate