Android Automation Engineer

Overview

On Site
Full Time
Contract - W2
Contract - 6+ month(s)

Skills

JIRA
Jenkins
CI/CD
Kotlin
Espresso framework
Android Studio IDE

Job Details

Android Automation Engineer

Location Bentonville, AR

C2H


An Android automation engineer proficient with the Espresso framework using Kotlin language to develop and maintain the automated tests for an eComm initiative customer facing android application:
Required Skills:

  • Kotlin Programming Language: Proficiency in Kotlin is essential as Espresso tests can be written in Kotlin. Understanding Kotlin syntax, coroutines, null safety, and object-oriented programming principles is crucial.
  • Android Development: Familiarity with Android app development concepts, such as Activities, Fragments, Views, Layouts, and Android lifecycle, is important for understanding the structure of Android applications.
  • Espresso Framework: In-depth knowledge of Espresso framework, which is Google's native UI testing framework for Android, is fundamental. This includes understanding its APIs for interacting with UI elements, performing actions, assertions, and managing test execution flow.
  • Automated Testing Principles: Understanding of automated testing concepts such as test case design, test data management, test execution, and reporting is necessary for writing effective and maintainable tests.
  • Android Studio IDE: Proficiency in using Android Studio IDE for Android app development and test automation is necessary. This includes understanding project setup, code navigation, debugging, and version control integration.
  • UI Testing Best Practices: Awareness of best practices for UI test automation, such as creating reliable and maintainable tests, avoiding flakiness, and optimizing test execution speed.
  • Continuous Integration/Continuous Deployment (CI/CD): Knowledge of CI/CD pipelines and integration of UI tests into the CI/CD process using tools like Jenkins, Travis CI, JIRA XRAY Integration or GitLab CI is a mst.
  • Version Control Systems: Familiarity with version control systems like Git for managing test code repositories, branching, merging, and collaboration with other team members.
  • Problem-Solving Skills: Ability to analyze and debug issues encountered during test automation, including identifying root causes and proposing solutions.
  • Communication Skills: Effective communication skills are important for collaborating with developers, QA engineers, and other stakeholders to understand requirements, report bugs, and discuss test results.
  • Agile Methodologies: Understanding of Agile software development methodologies, such as Scrum or Kanban, and ability to work within Agile teams to deliver high-quality software incrementally.
  • Attention to Detail: Thoroughness in test case design, execution, and reporting to ensure comprehensive test coverage and accurate bug identification.
  • Adaptability: Ability to adapt to changing project requirements, technology stacks, and team dynamics in a fast-paced development environment.
  • Requirement: Bachelor's degree in Computer Science or related field or equivalent combination of industry-related professional experience and education