Post Job Free

Resume

Sign in

Senior Android Developer

Location:
Washington, VA, 22747
Posted:
April 26, 2024

Contact this candidate

Resume:

James Henry Haisten

Senior Android Application Developer

Phone: 941-***-**** / Email: ad4qz7@r.postjobfree.com

Profile Overview/

•14+ years developing Android applications.

•9 Android apps published on Play Store.

•Skilled in requirement gathering and analyzing technical documentation.

•Solid background in Android User Interface (UI), Android SDK, Google Material Design, and architectural and design patterns in Android development such as MVC, MVP, MVVM, dependency injection, and more.

•Work well with stakeholders and my team.

•Knowledge of the latest Material Design guidelines, including animations and User Experience optimization.

•Experience troubleshooting back-end communications, in-app functionalities, and 3rd-party frameworks.

•Proven ability in prototyping and profiling Android applications.

•Experience with Android performance profiling, memory, and power management, including optimizations.

•Ability to manage competing priorities in an Android development environment while maintaining high productivity.

•Considerable experience debugging and profiling Android applications, writing unit tests using JUnit, and tracking in JIRA.

•Experienced in code merges, builds, deployments, and ensuring Android mobile app stability.

•Able to architect, design, develop, and test Android mobile applications from scratch.

•Able to maintain high unit test coverage and continuous integration principles in Android mobile development.

Technologies

Programming Languages: Kotlin, Java, C#, C++, Functional Programming, Object Oriented

Programming (OOP)

Version Control: Git, SVN, GitHub, GitLab

Databases: SQL, MySQL, Room DB, SQLite

IDE: Eclipse, Android Studio, Arduino, IntelliJ, PyCharm, WebStorm

Cloud Platforms: Firebase Console

Design Patterns: MVC, Singleton, MVP, MVVM, Builder, Factory, Façade, Publishers/Subscribers, Observer Pattern

RESTful API: REST, JSON

Testing: Unit Testing, TDD, TestFlight, CXTest, Instrumentation testing, Functional testing, Stress testing.

Android Development: Handlers, RecyclerView Animator, Material Design, EventBus, Content Resolvers, Bluetooth Low Energy, RxJava, GPS, GreenDAO, Volley, Multi-Window, Cipher, Services, Mixpanel, Jackson, REST, Glide, GSON, animations, Fragments, Firebase, Jetpack, Firebase Cloud Messaging, MVP, Espresso, Eclipse, Location Services, JIRA, Android Studio, Loaders, WorkManager, Git, Retrolambda, Urban Airship, Retrofit, ProgressBar, Push Notifications, NFC, LeakCanary, AsyncTask, Dagger, Samsung SDK, Certificate Pinning, Jenkins, PushBots, Dependency Injection

Professional Experience

Lead Android Developer

Costco, Issaquah, WA

September 2023 – Present

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

Project Summary: Create a native Android Home Screen feature to substitute the current WebView-based Home Screen for Costco. Direct a team of three developers in building this feature, collaborating closely with Costco's Android Lead and their team. Integrate this feature into the existing Costco app framework. Utilize the Content stack SDK, Realm DB, Kotlin Coroutines, and the Costco Network Client, which is built on Retrofit, for backend integration. Construct the user interface with Jetpack Compose, adhering to the design specifications provided in Figma as the definitive guide.

•Responsible for adopting and promoting the use of Jetpack Compose within the team for building modern, performant UIs on Android, ensuring code is maintainable and efficiently organized.

•Mastery of Kotlin is essential, guiding best practices in Kotlin programming among the team, and leveraging Kotlin's features to improve productivity and application performance.

•Implement and mentor the team on efficient asynchronous programming models using Kotlin Coroutines, emphasizing best practices for managing complex operations and concurrency.

•Champion the development and maintenance of a robust suite of unit tests, ensuring high-quality, reliable code. Promote test-driven development (TDD) practices.

•Oversee the creation of comprehensive UI tests to ensure application interfaces meet design specifications and function correctly across devices.

•Facilitate collaboration and knowledge sharing between iOS and Android teams to ensure consistent application behavior and feature parity when feasible.

•Ensure the application is accessible, working with TalkBack for Android, to provide a seamless experience for visually impaired users.

•Manage integration with Contentstack or similar CMS platforms for dynamic content management within the app, ensuring content updates are seamless and do not require app updates for changes.

•Utilize Azure DevOps for source control, CI/CD pipelines, and project management, ensuring efficient workflow and collaboration within and across teams.

•Leverage SauceLabs for testing applications on various devices and platforms in the cloud, ensuring the app works as expected across a wide range of devices.

•Coordinate using Microsoft Teams, Office, OneNote, OneDrive, Azure DevOps (ADO), and App Center for communication, documentation, cloud storage, project tracking, and beta distribution/testing.

•Expertise in Realm DB for local data storage solutions, guiding best practices for database design, querying, and performance optimization.

•Ensure the development environment is properly set up for Android development on macOS, including necessary tooling and configurations for efficient development workflows.

•Use GitHub for version control, code review, and collaboration. Promote GitHub best practices among the team, including branching strategies and pull requests.

•Mastery of Android Studio, guiding the team in efficient use of the IDE, including shortcuts, plugins, and advanced features to improve development efficiency.

•Utilize the Layout Inspector in Android Studio for debugging and ensuring layouts match design specifications accurately.

•Use Vysor or similar tools for mirroring Android devices to the computer for easier debugging and presentation purposes.

•Promote the Model-View-ViewModel (MVVM) architecture within the team for a scalable, maintainable, and testable codebase.

•Implement Domain-Driven Design principles to align the software design closely with the business domain, facilitating better communication and more relevant software solutions.

•Oversee the architecture of multi-module projects to improve build times, enforce modularity, and maintain a clean separation of concerns.

•Manage and optimize Gradle builds for the project, including dependency management, custom tasks, and improving build times.

•Ensure the use of JUnit for writing reliable unit tests, promoting test coverage and integration with CI/CD pipelines for automated testing.

•Utilize Mockk for mocking dependencies in Kotlin unit tests, ensuring tests are focused, fast, and reliable.

•Use Postman for API testing and collaboration with backend teams, ensuring APIs are correctly designed and implemented before integration.

•Leverage Firebase for various backend services like authentication, analytics, database, crash reporting, etc., ensuring the app is robust, scalable, and user-friendly.

•Facilitate team collaboration using Google's suite of tools (Chat, Gmail, Calendar, Meet, Docs, Drive) for communication, scheduling, documentation, and file sharing.

•Collaborate closely with UI/UX designers using Figma, ensuring the app's interface matches the design specifications with high fidelity, and facilitating design handoff.

Senior Mobile Application Architect

Expedia, Punta Gorda, FL

Apr 2022 – Aug 2023

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

•Develop a Kotlin library to handle communication with a chatbot.

•Create a UI for the chatbot using Server Driven UI principles and in-house libraries of Jetpack Compose components.

•Queried GraphQL endpoints using Apollo Studio.

•Converted (Transcribed) code from JavaScript and Swift to Kotlin.

•Designed and implemented efficient algorithms and data structures.

•Worked with Java Collections Framework and its various implementations, such as ArrayList, LinkedList, HashSet, and HashMap.

•Developing solutions and writing code using Android Studio to resolve the issues in the project.

•Implemented a speech-to-text activity using Google's Speech Recognizer.

•Implemented Credit Card Number masking using Luhn's algorithm and Regex.

•Implemented a manager class for connecting with and interacting with the Ably Realtime messaging platform.

•Collaborating with UX/UI designers to design and create user interfaces that are functional, visually appealing, and easy to use.

•Implementing best practices in user interface design, including accessibility, usability, and user experience.

•Writing efficient, scalable, and maintainable code.

•Investigating solutions to problems and documenting findings, including the pros and cons of each solution by researching potential solutions.

•Analyzing logs to identify issues and errors in the project and fixing issues & errors in the code.

•Implementing shared components of JetpackCompose that are proprietary to the company, creating and maintaining reusable components that are specific to the company's product or service.

•Ran Lint checks and Kover on code before committing.

•Documenting code changes, project progress, and any other relevant information in Confluence.

•Sharing knowledge and experience with team members to improve their understanding of Kotlin, Android Studio, and best practices.

•Creating and maintaining a Logger object that logs project events to Splunk.

•Ensuring that the Logger object is efficient, scalable, and easy to use.

•Refactoring sections of code to improve the performance and maintainability of the project.

•Ensuring that the code is easy to understand, modify, and extend.

•Conducting manual testing of code by creating runnable main programs in IDEs and observing console output.

•Developed manual tests using the IDE and observed the console output to ensure that the code is functioning as expected.

•Conducting manual testing of code using Android test apps running on emulators, physical devices, and via Browser Stack.

•Writing automated tests using frameworks like Espresso or Robolectric to ensure that the code works across different devices and configurations and using Browser Stack, a cloud-based testing platform, to test the code on a variety of devices and browsers.

•Collaborating with other teams to ensure that project requirements are met and providing regular updates on project progress, challenges, and solutions.

•Creating and maintaining Jira Stories and subtasks to manage project tasks.

•Ensuring that the tasks are clearly defined, prioritized, and assigned to the appropriate team members

Senior Android Architect

Beachbody, Santa Monica, CA (performed work remotely)

Mar 2021 – Mar 2022

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

•Member of cross-functional/cross-platform team which included Android, iOS, Web, and API) that combined technical development on a health and fitness app that allows users to watch workout and nutrition videos.

•Worked on Android technical development with a focus on re-designing and adding new features to the BODi section of the FireTV app (BODi is a section of the app with scheduled live and prerecorded classes. A core element of this feature is BODCast which allows users to turn on their cameras and be seen on the live screen. Users can track the progress of their fitness goals and interact with other users in group messaging).

•Programmed in Kotlin with MVVM architecture.

•Utilized advanced data structures like priority queues, heaps, graphs, and trie structures to solve complex problems efficiently.

•Employed Android Studio IDE.

•Used Slack and Zoom as team communications tools.

•Implemented several libraries for Kotlin efforts such as RxKotlin, Kotlin-kapt, and Android KTX.

•UsedRxKotlin in conjunction with RxAndroid, and RxBinding libraries to make the app multithreaded and perform asynchronous operations.

•ReplacedRxJava implementation with Kotlin coroutines and dispatchers to make asynchronous Network requests, JSON parsing, reading or writing from a database

•Worked closely with Product and Design.

•Attended daily SCRUM DSU and Dev Sync meetings.

•Implemented analytics for new features using an existing Tealium framework.

•Optimized algorithmic performance and memory management to ensure smooth and responsive user experiences.

•Worked with GraphQL queries using Altair and Apollo.

•Worked with Algolia search implementations.

•Received tasks through JIRA tickets utilizing the Fibonacci pointing system.

•Communicated with multiple teams using Slack.

•Worked with testers and provided assistance writing Functional, Unit, and Instrument tests using Mockito and Espresso.

•Created Pull Requests and performed code reviews on GitHub.

•Used Curl and Postman to check API responses and create test users.

•Worked with Feed.fm API implementation.

•Attended scheduled and impromptu meetings via Zoom.

•Worked with teammates around the world.

•Utilized Charles proxy to analyze network communications for FireTv and Android devices.

•Implemented Bluetooth Kit and Bluetooth Low Energy (BLW) to manage the connection with the device.

•Implemented and debugged dynamic and complex views.

•Layered and arranged images and icons in dynamic and complex views.

•Worked with RecyclerViews to display list data effectively and with custom adapters.

•Worked with overlays and dialogs stacked on the video player requiring changes on the screen of focus to update the other views in real-time.

Senior Android Developer

Aetna Health, Denver, CO

Aug 2020 – Mar 2021

https://play.google.com/store/apps/details?id=com.aetna.aetnahealt HYPERLINK "https://play.google.com/store/apps/details?id=com.aetna.aetnahealth" HYPERLINK "https://play.google.com/store/apps/details?id=com.aetna.aetnahealth" HYPERLINK "https://play.google.com/store/apps/details?id=com.aetna.aetnahealth"h

•Worked in Android Studio and coded the Android app using Java and Kotlin.

•Extensively used Dagger 2 for dependency injection and RxJava for high performance with multithreading.

•Architected the app with MVVM architectural patterns, and various design patterns such as Abstract Factory, Builder, façade, and other behavioral patterns as well.

•Implemented LiveData using the observer pattern to provide data to the UI.

•Implemented inline input validations and custom error messages natively in Android.

•Implemented the new fingerprint login library, which was provided by our vendor Acceptto.

•Attended design meetings to review UI/UX flows for the new TouchID (fingerprint login) library

•Redesigned the splash screen flow; signup/ login items are now separate from the splash screen logic.

•Assisted web with automatic/ manual QA, and helped QA write Cucumber/ Ruby tests for web as well as for Android.

•Designed the UI enabling fingerprint registration to the user account and displaying the confirmation "enrollment success" screen.

•Trained a new Android dev concerning the TouchID stories I worked on.

•Collected defect information for future sprints and concerning the library from Acceptto.

•Used Timber for error handling and logging. Used Leak Canary and AppBoy, but all the logs were added to tech debit which was never touched.

•Filtered Bluetooth devices by device name.

•Filtered Bluetooth devices by a software set manufacturer data to filter our own devices only.

•Appium and SauceLabs are used for UI/UX tests.

•Use of Regex for Java and Cucumber/ Ruby.

•The project team used Rally for storyboards.

•Rubymines are used to aid in the development of making/ debugging tests.

Senior Android Developer

Norton, Culver City, CA

Oct 2019 – Jul 2020

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

•Search and implementation of possible areas of improvement to deliver better production in Android app development.

•Translated features from Java to Kotlin.

•Implemented new features in MVVM and refactored older features from MVP to MVVM.

•Mentored three junior programmers familiarizing them with our Android App structure and codebase.

•Implemented LiveData in the application as well as MediatorLiveData.

•Followed development/design standards and best practices in Android app development.

•Applied creative and critical thinking capabilities to Android app development.

•Programmed the locale to support different languages in the Android app.

•Used Code management using Git and Bitbucket for various parts of this Android project.

•Contributed to a team of engineers in cross-functional teams (including QA, Product Management, etc.).

•Identified issues during the Android test cycles.

•Developed custom components for graphic interface to improve the user experience.

•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., and RxJava.

•Assisted the Android team meetings for designing the graphic User Interface & implementation of the app, according to Android Design Guidelines.

•Used restful calls in the app to gather information.

•Built and delivered a highly scalable and maintainable Android application.

•Experience using Source Control (Git,).

Senior Android Developer

Fidelity Investments

Smithfield, RI

Apr 2018 –Sep 2019

https://play.google.com/store/apps/details?id=com.fidelity.wi.activity

•Worked in Android Studio IDE for application development with Java and Kotlin coding and added new features in Kotlin as well as transitioned Java arrays to Kotlin.

•Used ConstraintLayout for to support multiple form factors.

•Refactored code to change a previous MVP implementation to an MVVM design pattern.

•Implemented asynchronous communication with back-end services using RxJava and Retrofit to call RESTful web services and to manage threading working with the backend team on connectivity.

•Used SharedPreferences to store custom key-value pairs.

•Utilized JUnit and Mockito to write test cases, and tested with Robolectric, as well as automated testing with Espresso.

•Applied design patternsFactory, Builder, Publisher/Subscriber, andObserver.

•Implemented Firebase Analytics, Firebase Crash Reporting, and FirebaseRealtime Database to extend the functionality of the app.

•Used Git code repository and version control for Android code base.

•Created branches and merged code with Gradle.

•Implemented JetPack Download Manager services for downloading large files such as multimedia (images, video, audio), and resources.

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

•Used Parcelable to serialize Java objects from Activity to Activity in android.

•Implemented Google Messaging services for Push Notifications.

•Self-motivated, productive, and works well even with/without a formal structure.

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

•Designed/developed an app using API/SDK and business-embedded logic to achieve the mobile app's desired functionality.

Android Developer

JCPenney, Plano, TX

Oct 2016 –Mar 2018

https://play.google.com/store/apps/details?id=com.jcp HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US" HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"hl=en_US" HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US" HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"hl=en_US" HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"hl=en_U HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US" HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"& HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"hl=en_US" HYPERLINK "https://play.google.com/store/apps/details?id=com.jcp&hl=en_US"S

•Performed test builds using Jenkins continuous integration server.

•Managed the Android code repository based on Git/Stash.

•Implemented returns for Adobe Analytics.

•Notification Center Redesign.

•Used Urban Airship to receive notifications with bundles.

•Used Picasso to load images from URL sources found within a JSON string.

•Used a Swipe Layout within a Recycler View.

•Customized the Action Bar and Menu using different modes.

•Designed a tooltip message popup that displays after a defined amount of time if conditions are met.

•Created AB testing utility for Apptimize.

•Created a custom TextView for collapsing/expanding text.

•Created a message filer that suppresses old-format messages.

•Designed icon layout with dynamic elements.

•Synchrony Financial Integration into Payment methods views for Client Cards.

•Retrieved callback objects to define layouts and populate information.

•Used EventBus to pass information between several elements within the project.

•Initialized Runtime Permission request based on end-user responses.

•Dynamically controlled ViewPager based on end-user responses and process progression.

•Implemented multi-layered drawable vectors.

•Created switch using Google Tag Manager.

•Implemented dynamic landing fragment based on the network connection.

•Implemented a custom Arc Progress bar with animations.

•Used Async http request/responses to retrieve information needed to populate views.

•Wrote custom utility classes for data presentation and formatting.

•Implemented ViewPager for multi-fragment layout.

•Implemented views based on information provided by responses.

•Change views based on real-time responses from the user.

•SQLite Database was used for local storage of user info.

•Shared Preferences are created and implemented to store default values.

•Animations are implemented based on changes in activities and fragments.

Android App Developer

3D Robotics, Berkeley, CA

Jan 2015 –Sep 2016

App no longer supported.

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

•Used native and third-party technologies to optimize the app functionality including Android Studio, Java, Android Wear, Crashlytics, TestFairy, Espresso, Picasso, Custom Views, Facebook API, Twitter API, Google Maps API, SQLite, Dronekit-Android, Dagger, ButterKnife.

•Created new general views for different Fragments used on the application.

•Shrank and secured the code of the application with ProGuard.

•Solid background in Android UI, Android SDK, and Android design patterns.

•Refactored and redesigned multiple modules for reusability purposes.

•Used Google GSON to parse JSON files.

•Maintained technical documentation of each project.

•Handled fragment data retention to ensure data integrity during on-screen rotation with the set Retain Instance method.

•Consulted on the technologies being used.

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

•Used Fabric Crashlytics for real-time bug and crash reporting.

•Developed enhancements and improvements to the current Application.

•Worked in a team of 10 members with 4 Android developers on-site and 2 offshore, in an Agile/Scrum environment.

•Established the use of instance handlers for Java threading separated from the user's interface thread.

•Simplified the usage of threading by implementing RxJava for most of our asynchronous processes.

•Familiarity with agile/iterative development methodologies (XP, SCRUM, etc.).

•Experience with network programming and consuming third-party APIs.

•Used GitHub private repositories with standard workflows as a version control software.

•Implemented an internal library to manage the process of logging responses from the Web Service.

•Utilized Native Development Kit (NDK) libraries.

Android Developer

DTE Energy, Detroit Michigan

Feb 2013 – Nov 2014

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

•Local persistence of data using SQLite and shared preferences.

•Applied Crashlytics to bugs and app crash reporting.

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

•Utilized SVN as a source control management system.

•Contributed to the technical documentation for multiple corporate applications.

•Guide the Product and QA team on the nuances of Android devices.

•Implemented an Android service to synchronize the latest news from RESTful web services.

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

•Reskinned the entire app implementing the Material Design specification.

•Used APIs from different API levels to support backward compatibility.

•Acted as project coordinator by meeting with stakeholders, external teams, and product managers. Good at asking the right questions and providing feedback to stakeholders. I also helped break down tasks and create workflow plans.

•Experience in architectural pattern design & implementation.

•Created report on possibilities created by the introduction of Android Jellybean: Improved Wi-Fi, Nested Fragments, Open GL.

•Worked on migrating the existing Nine Old Androids library to modern Android SDK with property animations.

•Conducted frequent code review activities with the members of the development team.

•Ensure effectiveness of SCRUM-related meetings (planning, retrospective) and discussions, assisted with project planning, and ensured deadlines were met.

•Designed the architecture for the app following proven design patterns such as MVC and SOA.

•Used Git as the source control tool to manage the application development.

•Implemented Otto library for decoupling different parts of the application.

•Designed the application with an MVP approach, setting up all the interfaces and decoupling the classes.

•Used Crashlytics to track user behavior and obtain mobile analytics.

•Participated in the full lifecycle development process from product definition.

•Researched, tested, and implemented new techniques, frameworks, and utilities.

•Automated payment integration using Google Wallet and PayPal API.

•Created small testing instances with Android Wear and Android Auto.

•Added Android wear compatibility for actions and notifications.

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

Android Developer

Loren Cook Company, Springfield, MO

Engineering Cookbook

Oct 2010 – Jan 2013

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

•Wrote Javadoc to document the different modules, hardware & software features.

•Managed code review sessions to always have high-quality (reusable, simple, documented) code.

•Implemented Google Analytics for app analytics proposes.

•Great understanding of when to let the team work through a problem and when to help them.

•Added value encryption in SharedPreferences using AES 128 with the Secure-preferences Library.

•Implemented the RESTful data consumption using Retrofit with an OkHTTP client, a GSON converter, and a custom interceptor.

•Interfaced with multiple web services SOAP and RESTFul from data providers.

•Implemented RadaeePDF SDK Android for reading, viewing, and modifying PDF files.

•Planned and conducted the requirement gathering sessions

•Implemented Push Notifications to notify the users when there is a new price update.

•Used ButterKnife for view dependency injection.

•Introduced Fragments for the first time to this app based on the new navigation specification.

•Proposed a front-end architecture using the Model View View Model design pattern.

•Mentored Junior Android Developers during the development cycle and process.

•Implemented a Content Provider with an SQLite database as a cache with Schematic.

•Implemented Flurry analytics for mobile app stats.

•Tested the application on various devices and emulators to determine compatibility.

•Implemented the User Interface with a TabLayout and a ViewPager, using multiple Fragments.

•Added Localytics for in-app behavior tracking and usage, including location, gender, preferences, and interests.

•Developed the back-end services with Java technology including Servlets, Tomcat, etc.

Academic Credentials

Bachelor's degree, Technology Management, State College of Florida

Associate, Computer Programming and Analysis, State College of Florida

Associate, Fine/Studio Arts, General, State College of Florida



Contact this candidate