Software Test Engineer
Job Type: Full Time / Permanent
The Senior Test Engineer is responsible for coordinating, overseeing and potentially executing all exploratory and end-to-end testing efforts based on product team deliverables. In addition, the Senior Test Engineer is expected to build a solid relationship with the product team(s) members that he or she supports and pair (programming) with the Software Engineers periodically in order to gain an understanding of the inner workings of the software code that is being delivered. He or she will be expected to be an expert at designing effective test charters, test scenarios, automation scripts and gray box or white box tests as necessary to efficiently test the functionality and integration across multiple(3+) products while identifying and logging system application defects and their causes. He or she is capable of reviewing the product design, data design and checking the code for testability and reliability and expected to work with the Dev and Ops teams to plan, develop and execute automated tests continuously. He or she is capable of providing oversight and ensuring that all defects, risks and progress are reported to the appropriate managers according to the company SDLC expectations. He or she will be comfortable with representing the Test Engineering Department and providing test related services. The Senior Test Engineer may also be asked to mentor other test engineers and is expected to quickly become a Subject Matter Expert and voice of reason when decisions need to be made.
Responsibilities: Develop the Test Strategy, high quality test charters, automated tests and other test artifacts such as test data and data validation. Execute or coordinate the execution of exploratory, automated and end-to-end tests Work closely with software engineers on the product teams to gain an in-depth understanding of the software code being delivered as well as contribute to the coding of software within the product teams. Track and report progress of test efforts, risks and defect status to the product team as required by management as well as recommendations for risk mitigation. Continuously improve the organization by establishing and implementing departmental policies and procedures and championing the science of software testing within the IT department, including continuous integration and continuous development (CI/CD) strategies. Artifact review, mentoring and work load management for junior members. Lead a small team of junior/senior Test Engineers.
Requirements: BS in Computer Science or MIS, and/or related industry experience 5-7 years of relevant experience. Extensive Test Engineering experience is required. Retail application experience is preferred. Strong automation experience as well as experience in WMiS highly preferred. CSQA/CSQTE, ISTQB or equivalent certification a plus. Experience with SQL and relational databases Extensive knowledge of Microsoft Test Manager, Enterprise Tester or equivalent technology Extensive experience with test automation tools and application monitoring tools such as AppDynamics or Elk Extensive experience with TFS, JIRA or equivalent technology as well as Confluence, Wiki or similar Technologies. Experience working with test frameworks such as Junit, Nunit, Jasmine, Mocha as well as tools such as Postman, SoapUI, API testing tools, Gherkin and/or Cucumber. Linux experience is a plus. Experience Developing software in any modern Object Oriented programming language and comfortable with Test Driven Development (TDD) and Behavioral Driven Development (BDD) practices. Ability to facilitate the testing of multiple fast moving projects simultaneously. Ability to jump into a new application and quickly learn how it functions and train others on the topic Ability to maintain and appropriately manage changing priorities for yourself and junior test engineers, Responsible for coordinating with multiple teams (3+) and testing across multiple systems to support a testing effort. Must have superior analytical skills to proactively mitigate risks before they materialize into problems. Confident with directing/coaching junior testers or another team’s resources in a coordinated testing effort and willing to take direction from Leads and/or Managers as well Comfortable with reviewing system designs, assessing code impacts, planning testing, and making minor coding changes/enhancements if necessary. Confident in identifying tests that are good candidates for automation and converting them into automated tests Remain calm under stress, provide support/direction to the team and show a “can do” spirit at all times Contribute suggestions and best practices to benefit the larger testing organization, including the incorporation of VALET metrics to ensure the quality and performance of the supported system(s). Ability to assist with removing obstacles and keeping multiple testing efforts moving in parallel. Established subject matter expert in a variety of areas; able to clearly communicate knowledge to others. Comfortable with pairing with software engineers to gain a high-level understanding of the software that is being developed. Able to build strong exploratory testing foundations and be a strong advocate for end user experience and customer empathy by participating in stakeholder, teammates and customer interviews.