Senior Software Developer in Test - Roles and Responsibilities
As a Senior Software Developer in Test, your role will be crucial in driving automation and quality initiatives across various products. You will be responsible for the following:
1. Enhance Advanced Automation Test Framework: Build and improve an advanced automation test framework capable of handling UI, API, Mobile, Load, Database, and Accessibility testing. Ensure the framework is scalable and flexible to meet the evolving testing needs of the organization.
2. Active Participation in the Architecture Review Board for Quality Engineering: Collaborate with cross-functional teams to provide insights on architecture from a quality perspective. Help shape the testing strategy for various products by reviewing technical designs and implementation plans.
3. Develop Quality Engineering Tools: Create and deploy various quality engineering tools aimed at reducing manual testing efforts. Conduct regular training sessions to empower quality engineers across the organization to utilize these tools effectively.
4. Own and Maintain Cloud-Based Test Infrastructure: Manage and maintain cloud-based test environments to ensure smooth and scalable test execution. Ensure the infrastructure supports automated testing processes and integrates seamlessly with CI/CD pipelines.
5. Continuous Quality Monitoring and Best Practices: Implement continuous quality monitoring across all products and contribute to setting best practices for quality engineering. Ensure that testing is deeply integrated into every stage of the software development lifecycle.
7. Performance Testing Enablement: Lead efforts to integrate performance testing into the automation framework, enabling comprehensive load and stress testing across various applications.
8. Support for Complex or Critical Projects
9. Metrics, Reporting, and Quality Visibility: Continuously Improve and track key quality metrics to provide visibility into the quality of the different products.
Qualifications and Experience
• A four-year Bachelor’s degree in Software Engineering, Computer Science, IT, or a related technical field, with 5+ years of professional experience, or an equivalent combination of education and relevant work experience.
• Automation Framework Expertise: Extensive experience in working with and designing advanced automation frameworks. A proven track record of implementing at least one automation framework is essential.
• API Testing and Automation: Strong expertise in testing web services (SOAP and RESTful APIs), with a focus on API automation.
• Web and Mobile UI Automation: Solid experience in testing web-based applications, with hands-on expertise in UI automation scripting using Appium, Selenium (Python/Java) and Selenium Grid.
• Database Testing: Competence in working with various databases such as Postgres, MySQL, Oracle, or NoSQL systems.
• Performance Testing: Experience with load testing frameworks and the ability to integrate performance testing into automation frameworks is highly desirable.
• Container Orchestration: Familiarity with container orchestration platforms such as Nomad or Kubernetes is a strong plus.
• Test Case Management: Strong skills in test case management, including test creation, execution, reporting, and iterative revision.
• Debugging Skills: Proficiency in debugging complex web application issues through code reviews and log analysis.
• Object-Oriented Programming (OOP): In-depth knowledge of OOP principles, design patterns, data structures, and unit testing methodologies.
• Leadership in Automation Initiatives: Proven experience in leading automation initiatives and driving continuous improvement in testing processes.
• CI/CD Tools: Experience with CI/CD tools such as Jenkins and GitLab pipelines, along with proficiency in version control systems like GitLab or Bitbucket.
• Flexibility and Commitment: Willingness to work flexible hours to meet deadlines and adhere to security, availability, confidentiality, and privacy policies.