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 objectoriented 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: Indepth knowledge of Espresso framework which is Googles 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.
- ProblemSolving 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 highquality 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 fastpaced development environment.
- Requirement: Bachelors degree in Computer Science or related field or equivalent combination of industryrelated professional experience and education