Post Job Free

Resume

Sign in

James Calvin - Android Developer

Location:
Cincinnati, OH
Salary:
95
Posted:
August 28, 2020

Contact this candidate

Resume:

adedqj@r.postjobfree.com

. 704-***-****

PROFESSIONAL SUMMARY

Experienced developer with 6 years’ experience

Experienced Business to Consumer mobile developer.

Implementation of RESTful data consumption using Retrofit with an OkHttp client, GSON and Jackson converters.

Experienced in quality code metrics and use of quality guidelines to produce high quality code that is sound, consistent and sustainable.

Experienced quality reviewer, coordinating code walk-throughs.

Experienced troubleshooter accustomed to leading design, development and implementation of complex systems.

Knowledgeable of Google Material Design guidelines in UI implementation including animations, navigation, widgets, icons and style for optimal user experience.

Experienced consuming REST and SOAP services to update application with new data.

Experienced integrating RESTful APIs to provide external services to the application.

Implementation of Android mobile apps using MVC, MVP, MVVM, and various design patterns such as Abstract Factory, Builder, Façade, Command, Observer, Visitor, Proxy, Singleton, etc.

Experience developing networking and secure applications for Android; working with video, static content, and advertising.

Analysis of complicated architectures and layouts and translating that analysis into efficient technical strategies and code

UI implementation following the latest Material Design guidelines, animations and UX optimization, Fragments, Layouts, Animations, Compound Views, Custom Views, ListView and RecyclerView.

Use of Automated Testing and Unit Testing: Robotium, Espresso, JUnit, Mockito and simulated design patterns to test and develop applications.

Experience With Git and Github a for version control along with Jenkins and BitRise for Continuous Integration, applied within Test-Driven Development (TDD) practices.

PROFESSIONAL SKILLS

Methods

Material Design, Agile/Scrum, Test Driven Development (TDD)

Issue Tracking

JIRA, Jenkins, Atlassian Suite

Design Patterns

MVC, MVP, MVVM, Singleton, Dependency Injection, Data Binding, View Holder, Builder, Adapter

Testing

Espresso, Robolectric, Mokito, Junit, Selenium & Appium

Web Services

JSON, REST, SOAP, XML, AJAX

Retrofit, Volley, RxJava, AsyncTask

Software

MS Office (Word, Excel, PowerPoint, Paint),

Build

Maven, Gradle

Dependency Injection

Dagger 1, Dagger 2, Butter Knife, RoboGuice, IcePick

Game Dev

Unity, Lumberyard, Blender, Photoshop, GIMP, Synfig, App GameKit, MIT App Inventor

Version Control

Git, SVN, GitHub, SourceTree, Tower, BitBucket

Programming Languages

Java, Kotlin, C++, C#, C, Java, Bash-shell, Linux, Php, JavaScript, AJAX, MySQLi, CSS, Node JS

IDEs

Android Studio, Eclipse, Visual Studio, Visual Studio Code, Netbeans, Notepad++

Change Management

Git/GitHub, SVN, Jenkins, Travis CI

Operating Systems

Android, Unix/Linux, Mac OS, Windows, IOS

API

Facebook, Twitter, Google Maps, RESTful, Volley, Picasso, Glide, YouTube, Retrofit, ButterKnife

Data Management

SQLite, Firebase, MongoDB

NFC (Near field communication)

JetPack

Room, VIewModels, LifeData, Download Manager

Data Binding

Android Data Binding

UI Creation

Custom android views classes and components, Android adapter views like Listview, Recyclerview, Gridview and Gallery, Customized List views, Gallery widgets

Android Libraries, Frameworks and APIs

Jersey Library, Open Source Libraries, Google Maps API, Google Places, RecyclerView Animator, Location Services, FloatingActionButton, Google Cloud Messaging, Schematic, Bluetooth Low Energy, NineOldAndroids, JobScheduler, Push Notifications, Google Play Services

PROFESSIONAL EXPERIENCE

LOWES March 2020-Present

Senior Android Developer Charlotte, NC

App to be published on September 2020

My greatest accomplishment is after setting up a meeting with the architect of the project I successful was able to introduce both the Navigation UI component and MVVM with a repository pattern focus to this project.

Worked in a pure Kotlin codebase for the duration of the project Followed Agile Scrum Methodology while at Lowes

The project team consisted of one Architect, and 2 android Developers, with me as the only Android Developer.

Scheduled Meetings between multiple parties including, The Architect of the project, our UX contact

Worked closely with Ux to create the desired screens

Worked with multiple screen densities to handle different screen resolutions

Setup Firebase’s Distribution Process

Added apk’s and testers to receive apk’s

Worked with Jenkins team to create build pipeline for Android

Troubleshooted and resolved Jenkins pipeline issues

Wrote test cases for different features Updated the kotlin’s JVM Target to handle more robust code

Presented the Navigation UI to the architect of the project

Presented MVVM with repository layer to architect, then eventually to other architects in the Lowes company as a way to update other apps in the Lowes repository

Presented Single Activity Multiple Fragment approach to architecture

Followed Google material design guidelines.

Worked with the Ux Designer to create a uniform design across all platforms

Automated testing with Espresso. Test with Cucumber and Gherkin

Mentored Teammate on Screen Densities and handling multiple screen resolutions

Mentored Teammate on Navigation UI component and its setup

Mentored Teammate on different programming solutions various programming challenges

Mentored teammate on converting px to dp for various screen resolutions

Worked with Rxjava

Worked with Dynamic feature modulization

Worked with network library implementation

Worked with a ui/components library implementation

Spoke in multiteam meetings about different approaches to Architecture and avoiding Monolithic Architecture designs

Setup branching structure for receiving app

Created a flexible design for the two screen sizes

Taught other new hires about Lowes architecture and on boarding process Taught new hires about how network library worked and how to get a response back

Worked with backend team to create necessary API’s to get proper data back to android app

When working with Lowes’ legacy code, worked with abstraction and open and closed classes

FIFTH AND THIRD BANK – MOBILE BANKING APP September 2019-February 2020

Senior Android Developer Cincinnati, OH

https://play.google.com/store/apps/details?id=com.clairmail.fth

Implemented code functionality to successfully render 4K images higher than the native capability of 1080p.

Used Android Studio 3.4 as the IDE for development of the Android mobile.

Followed the MVVM architectural pattern and used Java and Kotlin throughout the application.

Followed Agile Scrum Methodology while at Fifth Third Bank.

The project team consisted of product manager, agilist, web developer,s ervices Developer, QA, business analyst, UX designer, and iOS Developer, and me as the only Android Developer.

Implemented Vendor LivePerson’s Messaging Sdk for Fifth Third Bank.

Scheduled Meetings between multiple parties including, LivePerson, Fifth Third’s InfoSec team, and Firewall Team.

Worked with InfoSec to diagnose Networking issues.

Used Tools such as Wireshark, SoapUI to help with Network Debugging

Created Custom VM using adb shell.

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

Interacted with the Jenkins build pipeline to create builds for the Perfecto Automation Testing Software.

Updated the Android App’s Version of Java and Kotlin to Version 8.

Implemented Badging for the Android App.

Implemented Push Notifications for LivePerson feature and integrated it into the App’s Alerts Engine.

Collaborated to ensure that Google’s material design guidelines were followed.

Worked with UX Designer to create a uniform design across all platforms.

Implemented Automated testing using the Espresso library.

Implemented a headless version of WebView to handle URL redirects.

Implemented OAuth 2.0 login and authentication functionality for the application’s internal SDK.

Presented to Authentication team main differences between OAuth2 in Android vs Mobile.

Used Retrofit 2 as our primary Web API wrapper

Used OkHTTP library to enable network Interceptors for network calls logging

Fifth Third’s legacy code changes were done in Java, all new features were written on Koltin.

Mentor developers on other teams on effective use of Kotlin coroutines.

GitHub as our distributed VCS and worked following a feature branch strategy.

Responsible for managing the feature branch for Messaging functionality of Android app.

CROWN MEDIA – HALMARK CHANNEL EVERYWHERE March 2018-August 2019

Senior Android Developer Studio City, CA

https://play.google.com/store/apps/details?id=com.hallmarkchannel.awe

Eliminated null point exceptions using Kotlin and worked on transitioning some Java arrays to Kotlin.

Enhanced the UI/UX with expertise of well-designed UX/UI and by adding custom views and compound views. Also collaborated with designers on the Android look and feel.

Programmatic coding in Java using Android Studio transitioning MVP to MVVM architecture.

Worked with Test-Driven Development (TDD) and Continuous Integration using Jenkins server.

Worked with Recycler views to display each card details and for fast transactions with Fragments.

Redesigned layouts using material design guidelines for better user experience.

Followed the design guidelines set by the product team and projected my views at times to better the UI

Implemented Custom Controls with the ExoPlayer library.

Implemented a structure to support different media sources by extending ExoPlayer.

Implemented two-way data binding to communicate user input to ViewModels which updated localized databases.

Extensive use of Fragments to enhance user interface experience, along with new interface features and personalization.

Created multiple Content Providers with a native approach to handling UI asynchronous updates.

Implemented messaging with Android Push Notifications and GCM (Google Cloud Messaging).

Designed screens related to Categories and Detail description for Tablet for both 7 inch and 10Inchdevices by customizing views as per mockup. Created Master-Detail Interface for tablet implementation.

Implemented data persistence using SQLite and ContentProvider.

Implemented JetPack ViewModel to simplify the implementation of the MVVM architectural pattern.

Used Retrofit and GSON to retrieve information from an internally programmed API and make the conversion between the JSON and POJOs.

Used Intents and Intent Filters to initiate activities and pass information between Activities and Fragments.

Implemented Mixpanel and Flurry for audience analytics.

SEAT GURO May 2017-February 2018

Android Developer Needham, MA

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

Worked with the mobile apps development team using Agile Scrum processes, with daily Scrums and two-week Sprints.

Used RESTful web services and replaced old third-party libraries with more modern libraries.

The team used Android Studio as the IDE and we coded in Java and applied myself to front-end and back-end development as well as assisting team mates with code reviews, material design guidelines and best practices.

Proposed a front-end architecture using the Model View View Model (MVVM) design pattern.

Implemented the best practices for Android mobile development with their main components: Activities, Services, Content Providers and Broadcast Receivers.

Used Butter Knife library with Dagger 2 for Android views dependency injection.

Improved the layout rendering by saving and optimizing the view hierarchy in all the resources.

Leveraged beautiful cleaner interface, plus design changes using Android material designs tools like CardView, Toolbar, RecyclerView, animations properties and support libraries for this Android mobile app.

Developed a lot of business logic according to technical assignment.

Also transitioned back-end RESTful services from Volley with AsyncTask to Retrofit with RxJava.

Used Retrofit and GSON to retrieve information from an internally programmed API and make the conversion between the JSON and POJOs.

Implemented Fragments to make the app usable on both Smart phone and tablets.

Used Intents & Intent Filters to initiate activities and pass information between Activities and Fragments.

Developed GridViews, Adapters, and Fragments to get a linear UI and easier to interact with the final layouts.

SEND PULSE April 2016-April 2017

Android Developer New York, NY

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

Configured multiple analytic tools to get valuable information on a post-install state: Crashlytics, Mixpanel, Flurry, Answers.

Made a distinction between development and production versions of the app each with their distinct credentials and settings in the backend using Urban Airship.

Managed competing priorities in a complex environment and maintain high productivity.

Consumed Web Services using a Retrofit instance with a built-in GSON converter for this Android app.

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

Used the Android tool ecosystem for development, testing, debugging, and performance benchmarking.

Used GCM to allow the users to send notification to the users about their favorites subjects

Used Green Robot (event bus) to simplify communication between Activities and Fragments.

Made use of Activities, Fragments Animations, with Retrofit and RxJava for performance of app with back-end integration and threading.

Applied fragments to minimize the activity count and simplify the navigation on the Android app.

Improved the user experience by modifying the app navigation replacing activities for Fragments when possible and adding tabs and navigation drawer.

Used sync adapters to load changed data from server and to send modified data to server from app.

Improved the layout rendering by saving and optimizing the view hierarchy in all the resources.

Involved in development and enhancements of features to restrict the usage based on Authorization and Authentication tokens.

Implemented data persistence using SQLite for caching data in the app device.

Implemented Dagger 2 to work with a Dependency Injection environment to help with the unit testing.

Worked with Glide for image handling and manipulation.

FEDEX Office Print-it January 2015-March 2016

Android Developer Memphis, TN

https://play.google.com/store/apps/details?id=com.fxo.pol

Implemented binding services from activities and the use of communication with services using Java threading for background processes and sync adapters.

Obtained the requirements through the setting of interviews with the customer.

Added several animations and transitions without of the box features and third-party libraries.

Communicated with RESTful web services using Retrofit, OkHTTP and Jackson.

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

Identification of issues during the test cycles.

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

Introduced the Google Maps API integration with the application.

Used Intents & Intent Filters to initiate activities and pass information between Activities and Fragments.

Implemented several Fragments for the UI.

Added Push Notifications through Backend support to get users specials and discounts on the device.

Worked with Robotium automated testing, unit testing with tests written in Junit and Mockito.

The Android development team used Test-Driven Development (TDD) and Continuous Integration (CI), Scrum methods, and followed best practices.

Worked in different phases of the project cycle like design, development and testing.

Worked with Custom Frameworks and Custom Templates for building this application.

Tested the application on multiple devices with different OS versions and screen sizes to ensure compatibility.

Used the Dalvik Debug Monitor Server (DDMS) for debugging and testing.

Assisted with debugging and profiling Android applications.

Contributed in production release deployment by certifying release features, monitoring production logs and fixing production issues on demand.

CAPITAL ONE MOBILE August 2014-December 2015

Junior Android Developer Richmond, VA

https://play.google.com/store/apps/details?id=com.konylabs.capitalone

Implemented IcePick when building references to track them in an easier way and avoid memory leaks.

Used Chart Boost library to help track issues and trends.

Used JustInMind prototyping tool for the first mock for the navigation approval.

Created custom animations and transitions to improve the user experience.

Integrated offline support offers you have on hand when you have no signal.

Managed the code base commits using continuous integration methodology with a private Jenkins server on which we could run emulators for testing.

Eclipse used for Android development IDE, and a private Git server for code base, version control and managing mergers and commits.

Used AsyncTasks hosted in Fragments to handle the network information lookup.

Used ProGuard to shrink, optimize, and obfuscate the code.

Used SharedPreferences to retain user UI preferences with local key-value pairs.

Implemented Push Notification through Google Cloud Messaging API.

Usage of core Android resources like Fragments, Styles, Themes, 9-Patch Images.

Utilized fragments, diverse layouts, animations, material design, Compound Views, and Custom Views to fulfill user interface requirements.

EDUCATION

Bachelor of Science in Computer Science

Quincy University

Quincy, Illinois

James Calvin, III

Android Developer



Contact this candidate