SUMMARY
The Test Engineer will be responsible for creating, executing & continuously enhancing automated test scripts within a highly robust, maintainable, and efficient testing framework.
You will be able to analyze the application and testing assets to create robust and effective automated tests for in-sprint functional, non-functional, regression and deployment testing.
The Test Engineer will primarily employ automated test strategies, but some manual testing will be required.
Responsibilities:
Test Planning:
- Plan, design and enhance automation frameworks and tools using Selenium, Gherkin, RestAssured, SeeTest, Squish or other open-source tools
- Develop End to End, System/Integration, and User-focused test plans and strategies using product requirements and design documents
- Analyzing and disintegrating software systems and coordinating with other teams to enhance the overall test design
- Build and drive comprehensive test strategies (manual/automated) that covers all systems. Collaborate with Product and Engineering to develop a comprehensive Test Plan that validates product functionality
Test Execution and Reporting:
- Setting up, maintaining and performing test automation on multiple application platforms, such as Mobile, Desktop, and Web, and building test scenarios and acceptance tests
- Build and execute test-cases in the following areas: functional, integration, security, stability, performance, stress. Develop and execute a variety of tests to ensure compliance & quality (integration tests, performance tests, end to end tests, security tests. etc.)
- Write, execute and refactor automated test cases with “Automation First” mindset. Build and maintain automated testing, test environments (Kubernetes) & test data
- Develop automation tests to deploy and maintain systems and applications in multiple CI pipelines
- Influence and refactor the development codebase for testability, performance, security, usability, and accessibility
- Interact with the product delivery team; actively participates in product requirement/design reviews to provide input on completeness of functional requirements, product designs, and schedules
- Maintain access to traceability artifacts for regulatory compliance
Contributions to the Engineering Practices:
- Participate in any and potentially all roles of the systems development life cycle. Roles may vary by project and assignment. This may include, but not limited to: Develop, plan and/or maintain software applications and/or subsystems; debug, design, code, test, write specifications, roll-out software, and production support
- Responsible for the development of less experienced AutoZoners; mentor and teach
- Determine order of work and develop the framework for a subsystem
- Delegate work to other Systems Engineers and Associate Systems Engineers
- Find scalable ways to automate functional, usability, compatibility, performance, API, database, security, and accessibility testing
- Contribute to the design of automation frameworks, automation infrastructure, and various tools.
- Provide and practice automation development efficiency, maintainability, and reusability
- Provide domain expertise to drive implementation and sustainment of an automation program that encompasses unit, integration, and end-to-end testing as appropriate. Prepare and maintain domain documentation
Requirements:
- Bachelor’s degree in Computer Science or related field
- A minimum of 7 years of relevant Quality Engineering (QE) experience
- Exposure & experience is various Retail processes (Merchandising, Pricing, Product Management, POS, Inventory Management, Warehousing, etc.) is a plus
- Proven, hands-on experience in programming languages such as Java, React, Angular & Unix. Prior experience in C++ would be helpful
- Solid experience in Selenium and experience in test engineering in Restful API, Message Queues, RDBMS ecosystems, Unix systems
- Proven, hands-on experience using Java in creating automation test scripts/framework and deep technical knowledge of object-oriented concepts, and basic SQL knowledge
- Solid problem solving, domain technical and analytical skills
- Subject matter expertise in a functional area
- Advanced task estimation and planning skills
- Typically able to perform tasks with little or no technical supervision