Test Automation Engineer
Job description
About the role
At Appian, we uphold values of intensity and excellence, driving us to meet high standards in all our endeavors. We face challenges with determination and work collaboratively to achieve exceptional outcomes. Joining our team means being part of a group committed to tackling complex tasks together. As a Test Automation Engineer, you will play a crucial role in ensuring the quality and reliability of our software products through automation. Your work will involve designing, developing, and maintaining automated testing frameworks that support continuous integration and delivery processes. You will collaborate closely with developers, QA teams, and product managers to identify testing needs, develop solutions, and improve overall testing efficiency. This position offers an exciting opportunity to contribute to a fast-paced environment where innovation and quality are prioritized.
Key facts
What you'll do
- Develop, enhance, and maintain comprehensive test automation frameworks and infrastructure to support various testing needs, including system-level regression, smoke tests, and functional tests.
- Design and implement automated testing strategies, selecting appropriate testing tools and frameworks to ensure thorough coverage of application features.
- Build custom testing applications and scripts using programming languages such as Java or Python, leveraging automation tools like WebDriver, Appium, Selenium Grid, and Postman.
- Develop automation solutions that are resilient and less fragile by employing architectural patterns that minimize dependencies on the System Under Test (SUT).
- Automate testing for mobile platforms and offline scenarios to ensure robust coverage across different environments and use cases.
- Conduct code reviews and evaluate the impact of code changes on existing automation scripts, ensuring adherence to best practices and standards.
- Clearly articulate the features being tested, including their purpose, expected behavior, and impact on the overall system. Familiarity with at least one Appian subsystem is preferred to better understand the context of testing.
- Use Integrated Development Environments (IDEs), build tools, and version control systems such as Git to develop and manage automation scripts efficiently.
- Collaborate with product owners and developers to decompose features into user stories, identify edge cases, and assess technical risks associated with new features or changes.
- Troubleshoot and isolate defects, distinguishing between test failures caused by automation issues and actual application bugs.
- Contribute to technical documentation, including architecture diagrams, test plans, and technical artifacts, to ensure clarity and maintainability of automation solutions.
- Participate in team discussions and code reviews to uphold quality standards and share best practices.
- Maintain a focus on priorities, address obstacles promptly, and deliver tasks on schedule with minimal supervision.
- Support continuous improvement initiatives by suggesting enhancements to testing processes and automation frameworks.
- Engage with cross-functional teams to understand new features and ensure automation coverage aligns with project goals.
- Stay updated on industry trends and emerging tools in test automation to bring innovative solutions to the team.
Requirements
- Bachelor's degree in Computer Science, Engineering, or a related field.
- At least 3 years of experience in test automation, with a proven track record of developing and maintaining automation frameworks.
- Strong programming skills in Java and/or Python, with the ability to write clean, efficient, and maintainable code.
- Hands-on experience with automation tools such as Selenium, Appium, WebDriver, or similar frameworks.
- Familiarity with performance testing tools and methodologies is a plus.
- Knowledge of CI/CD practices and experience with related tools to integrate automation into build pipelines.
- Ability to analyze requirements, decompose features into test cases, and identify edge cases and potential risks.
- Excellent troubleshooting skills to isolate defects and determine root causes.
- Strong communication skills to articulate testing strategies, feature details, and defect reports clearly.
- Ability to work collaboratively within a team environment, sharing knowledge and supporting team goals.
- Experience with version control systems such as Git and project management tools like Jira.
- Understanding of mobile testing and offline testing scenarios is desirable.
- Knowledge of architectural patterns that improve automation stability and reduce fragility.
Nice to have
- Familiarity with Appian products and subsystems, which can enhance understanding of the application architecture and testing needs.
- Experience with performance testing tools such as Locust or similar.
- Knowledge of cloud technologies and how they impact testing strategies.
- Prior exposure to test automation in regulated environments or with compliance requirements.
- Experience working in Agile or Scrum development methodologies.
Skills & tools
- Programming languages: Java, Python
- Automation tools: WebDriver, Selenium Grid, Appium, Postman, Locust, BrowserStack
- Version control: Git
- Issue tracking and project management: Jira
- Build and CI/CD tools: Jenkins, or similar platforms
- Testing frameworks: TestNG, JUnit, or equivalent
- Mobile testing: Appium
- Performance testing: Locust (preferred)
- Cloud platforms: Knowledge of cloud environments is a plus
Practical notes
Visa sponsorship is available for qualified candidates. Appian offers a comprehensive benefits package that includes health insurance, an Employee Assistance Program (EAP), life and disability insurance, an Employee Stock Purchase Program (ESPP), retirement plans, wellness incentives, and tuition reimbursement. The specific benefits may vary depending on the location and other factors; candidates are encouraged to inquire with the Talent Acquisition team for detailed information. This role involves on-site work at our Chennai office, and candidates should be prepared to work in an on-site environment. The company values continuous learning and encourages employees to stay updated with the latest testing tools and methodologies. Candidates should be proactive, detail-oriented, and capable of managing multiple priorities effectively. The position offers an excellent opportunity to grow within a dynamic organization committed to quality and innovation.