Description
Summary:
A Test Automation Engineer designs, develops, and maintains automated test suites and frameworks to ensure software quality, accelerate releases, and reduce manual testing effort.
Highlights:
1. Designs, develops, and maintains automated test suites and frameworks
2. Drives quality early in the lifecycle through collaboration
3. Promotes automation best practices and CI pipeline improvements
**Test Automation Engineer — Job Description**
Overview A Test Automation Engineer designs, develops, and maintains automated test suites and frameworks to ensure software quality, accelerate releases, and reduce manual testing effort.
**Key Responsibilities**
* Test automation strategy: define automation scope, select frameworks/tools, and plan test coverage (unit, integration, API, E2E, UI).
* Framework \& tool development: design and maintain robust, reusable test frameworks, libraries, and helpers.
* Test implementation: write automated tests (unit, integration, API, UI) and maintain test data, mocks, and fixtures.
* CI/CD integration: integrate tests into pipelines to run on pull requests, builds, and scheduled jobs; manage test environments.
* Test maintenance \& reliability: triage flaky tests, stabilize suites, and improve test execution speed and determinism.
* Test design \& quality: define test cases from requirements/acceptance criteria, create test plans, and ensure traceability.
* Performance \& non\-functional testing: implement load, stress, security, and reliability tests where applicable.
* Collaboration: work closely with developers, QA, SREs, and product managers to drive quality early in the lifecycle.
* Metrics \& reporting: track test coverage, pass rates, flakiness, and test runtime; report quality KPIs.
* Test data \& environment management: provision test fixtures, sandbox data, and manage test infrastructure (containers, VMs).
* Automation best practices: promote TDD/BDD patterns, code review of test code, and CI pipeline improvements.
* Documentation: maintain test plans, framework docs, runbooks, and onboarding materials.
**Required Qualifications**
* Education: Bachelor’s degree in Computer Science, Engineering, or equivalent experience.
* Experience: 3\+ years in test automation, QA engineering, or software development with automation focus.
* Technical skills:
* Proficient in at least one programming language used for tests (Python, Java, JavaScript/TypeScript, C\#, Ruby, Go).
* Experience with test frameworks (pytest, JUnit/TestNG, Mocha/Jest, NUnit) and UI automation tools (Selenium, Playwright, Cypress).
* API testing tools and frameworks (Postman, REST\-assured, HTTP client libraries).
* CI/CD integration experience (GitHub Actions, GitLab CI, Jenkins).
* Familiarity with mocking, stubbing, contract testing, and test doubles.
* Knowledge of containerization and orchestration for test environments (Docker, Kubernetes) is helpful.
* Experience with test reporting and observability tools (Allure, TestRail, JUnit XML, Grafana).
* Familiarity with performance/security testing tools (JMeter, k6, OWASP ZAP) is a plus.
* Soft skills: attention to detail, communication, ability to prioritize, and collaborative mindset.
**Nice\-to\-Have**
* Experience implementing shift\-left testing, TDD/BDD, and pair\-programming with developers.
* Familiarity with cloud testing platforms and device farms for cross\-browser/mobile testing.
* Scripting for test data generation and SQL/NoSQL knowledge for data validation.
* Experience with test case management tools and quality metrics dashboards.
Pay: QAR12,753\.30 \- QAR18,743\.94 per month
Work Location: In person