Previous Job
Quality Engineer - AEM
Ref No.: 17-00014
Location: New York, New York
Position Type:Full Time/Contract
Start Date: 03/20/2017
 Job Description 
Quality Engineering Lead 
Employee Status

Must have a strong background with Adobe Experience Manager (AEM) / Cucumber / Selenium 

The Quality Engineering Lead (QE Lead) will be responsible to design, create and maintain automated test scripts that will be used to validate the quality of software applications. With guidance from Quality leadership, the QE Lead will drive the test strategy for validating new applications, or changes to existing applications.
The QE Lead will:
Collaborate closely with engineers, business analysts and product owners and other team members to determine appropriate acceptance criteria for all changes (new features as well as updates)
Responsible to review unit test coverage implemented by engineers so as to inform QE test strategy
Design and implement automated tests based on the agreed-upon acceptance criteria. The QE Leadmay work with other automated test engineers for this:
Responsible to setup the execution of automated tests as needed, via Continuous Integration (CI) tools
Responsible to review the results of automated tests and take appropriate action (e.g. file defects, update test code/data/configuration etc.)
Responsible to ensure that any areas not covered by automated tests are validated via alternate mechanisms
Responsible for generating and communicating test reports and metrics out to stakeholders
Mentor other junior members of the team
  • Analytical competence, which supports Test creation
  • Strong knowledge of general eCommerce as well as the RCO eCommerce platform, supporting processes and test strategy
  • Active Participation in determining acceptance criteria of new features as well as changes
  • Determine appropriate test strategy for changes
  • Determine impact to test suite – need for new tests, maintenance to current tests etc.
  • Determine test data requirements for new tests
  • Technical competence, which supports Test Implementation
  • Experience with Acceptance Driven Development (ATDD) or Behavior Driven Development (BDD) approaches to developing and testing software
  • Experience with Cucumber/Gherkin language to specify scenarios, or alternate tools in the same space such as Behat, Watir etc.
  • High level of expertise with Java programming as applied to implementing automated tests with REST services, Selenium, Databases etc.
  • Familiar with relational databases (e.g. Oracle, MySQL etc.), as well as NoSQL databases (e.g. MongoDB, Cassandra etc.)
  • Familiar with modern version control systems such as Git, BitBucket or similar
  • Familiar with leveraging Continuous Integration tools such as Jenkins to setup tests to execute on schedule, on demand or true CI (e.g. chained to code commits)
  • Familiar with using tools such as SumoLogic, Loggly or other logging tools to correlate defects against other events of interest
  • Familiar with Fiddler, Charles, Postman, REST-Client, SOAP UI or similar tools to independently test REST end points to correlate and isolate defect causes
  • Able to review code changes at a high level, understand unit test coverage and design automated tests that complement developer unit tests
  • Other competence, which supports Quality
  • Strong adherent to Agile principles in letter as well as in spirit. Knows and follows Agile convention, but importantly internalizes the Agile spirit
  • Strong communicator – able to work closely with counterparts in a cross-functional, Agile team setting, to understand product needs and implement the right automated tests
  • Understands the importance of data insofar as to analyze reported issues, inform severity of defects, inform the priority of tests
  • Understands the importance of metrics in the modern software organization and supports the automated generation of such metrics as an outcome of normal work. Observes patterns in the metrics and takes appropriate action
  • Understands the importance of performance of software and is able to interface with performance test teams to highlight and resolve performance problems in applications