Junior/Mid QA Automation Engineer - Hybrid Porto
ABOUT THE OPPORTUNITY
Join a technology company as a QA Automation Engineer and take the lead in defining, implementing, and enhancing the test automation strategy for a development team building modern software solutions.
This role is ideal for junior to mid-level QA automation engineers who are proactive, experienced with automation frameworks, and eager to take ownership of test automation strategy rather than just maintaining existing scripts. You'll work with a Java and/or .NET technology stack, focusing on automation testing tools like Selenium and BDD frameworks like Cucumber, while collaborating closely with developers, Business Analysts, and stakeholders to understand application features and define comprehensive testing requirements.
You'll develop automation strategies aligned with team goals, create and maintain automated test scripts for functional, regression, and integration testing, and facilitate execution of automated tests within CI/CD pipelines using tools like Jenkins and Azure DevOps.Working in an Agile environment, you'll stay current with industry trends and continuously seek opportunities for improvement in testing processes and tooling.
PROJECT & CONTEXT
You'll be working with a development team building software solutions where quality and automated testing are critical to delivery success. The role centers on defining and implementing a comprehensive test automation strategy that goes beyond just writing test scripts - you need to think strategically about which tools and frameworks are most appropriate for different testing needs, how to structure automation for maximum maintainability, and how to integrate testing seamlessly into the development workflow.
Your tool and framework selection responsibilities include evaluating automation options suited for the projects (particularly in Java and/or .NET environments), recommending the best fit considering factors like team skills, project requirements, and long-term maintainability, and implementing chosen solutions with proper architecture and best practices.You'll work with automation tools like Selenium for web UI testing, potentially Cypress or Katalon for alternative approaches, and explore Experitest or similar mobile testing solutions where needed.
Collaboration is central to success - you'll work closely with developers to understand application architecture and identify testability improvements, engage with Business Analysts and stakeholders to comprehend application features and translate them into test scenarios, and coordinate with the broader team to ensure testing requirements are properly defined and coverage is comprehensive.This requires excellent communication skills and ability to explain technical testing concepts to diverse audiences.
The hands-on automation work involves creating and maintaining automated test scripts across multiple testing levels - functional testing to verify features work as specified, regression testing to ensure changes don't break existing functionality, and integration testing to validate system components work together correctly.You'll write test code primarily in Java and/or C#, leverage your knowledge of web technologies (HTML, CSS) to write effective UI tests, and use SQL for database validation and test data management.
CI/CD integration is a key responsibility - you'll facilitate execution of automated tests as part of continuous integration/deployment pipelines using Jenkins and Azure DevOps, ensuring tests run automatically on code changes, provide fast feedback to developers, and integrate smoothly into the team's delivery workflow.Experience with Git version control is essential for managing test code and collaborating with the development team.
Working with BDD methodologies and frameworks (particularly Cucumber or SpecFlow) is preferred, allowing you to write tests in a business-readable format that serves as living documentation of system behavior. You'll also use Jira for test management and Xray for test case execution tracking, maintaining visibility into testing coverage and results.
The role requires someone with strong analytical and problem-solving skills who focuses on detail and quality, can identify testing gaps proactively, and continuously seeks improvement opportunities. You'll stay current with industry trends in test automation, evaluating new tools and techniques that could enhance the team's testing capabilities.
Core Tech Stack: Selenium (UI automation), Cucumber/SpecFlow (BDD), Java and/or C# (test code), SQLCI/CD Tools: Jenkins, Azure DevOps
Web Technologies: HTML, CSS understanding for effective UI testing
Test Management: Jira, Xray
Version Control: Git
Methodology: Agile/Scrum with continuous integration and iterative delivery
WHAT WE'RE LOOKING FOR (Required)- Education: Bachelor's degree in Computer Science, Engineering, or related field, or equivalent practical experience
- QA Automation Experience: Previous experience as a QA Automation Engineer with track record of building and maintaining automated test suites
- Java and/or C# Proficiency: Proficiency in Java and/or C# for writing automated test scripts and understanding application code
- Git Version Control: Proficiency in Git for managing test code, collaborating with developers, and following version control best practices
- SQL Skills: Proficiency in SQL for database validation, test data preparation, and data verification in automated tests
- Web Knowledge: Knowledge of Web technologies (HTML, CSS) to write effective UI automation tests and understand page structures
- Selenium Experience: Hands-on experience with automation testing tools like Selenium for web application testing
- CI/CD Tools: Experience with CI/CD tools like Jenkins (and ideally Azure DevOps) for integrating automated tests into delivery pipelines
- SDLC Understanding: Strong understanding of the software development life cycle and how testing fits into different stages
- Agile Methodologies: Solid grasp of agile methodologies (Scrum, Kanban) and how QA works within iterative development
- Test Script Creation: Ability to create and maintain automated test scripts for functional, regression, and integration testing
- Tool Evaluation: Capability to evaluate, recommend, and implement automation tools and frameworks appropriate for project needs
- Strategy Development: Skill in developing test automation strategies that align with team goals and software delivery objectives
- Requirements Understanding: Ability to collaborate with developers, BAs, and stakeholders to understand features and define testing requirements
- CI/CD Facilitation: Experience facilitating execution of automated tests as part of CI/CD pipelines with proper reporting
- Communication Skills: Excellent communication skills with ability to collaborate effectively within multiple teams and explain testing approaches
- Analytical Thinking: Strong analytical and problem-solving skills with focus on detail and quality
- Continuous Improvement: Proactive mindset to stay current with industry trends in test automation and seek process improvements
- Language: B2+ English level (Upper Intermediate minimum) for team communication, documentation, and collaboration
- Location: Based in or willing to commute to Porto for 3 days on-site per week
- BDD Experience: Familiarity with BDD methodologies and frameworks such as Cucumber or SpecFlow for behavior-driven testing
- Additional Automation Tools: Experience with Cypress, Katalon, and/or Experitest beyond just Selenium
- Azure DevOps Advanced: Deep knowledge of Azure DevOps for test management, CI/CD pipelines, and reporting
- Jira & Xray: Familiarity with Jira and Xray for test case management and execution tracking
- Both Java and C#: Proficiency in both Java and C# rather than just one language
- .NET Framework: Specific experience testing .NET applications and understanding .NET architecture
- Multiple Test Levels: Experience across unit, integration, system, and acceptance testing levels
- API Testing: Experience with API testing tools (Postman, Rest Assured, SoapUI) for backend testing
- Performance Testing: Basic understanding of performance testing concepts and tools (JMeter, Gatling)
- Mobile Testing: Exposure to mobile test automation (Appium, Espresso, XCUITest)
- Test Data Management: Advanced strategies for test data preparation, generation, and maintenance
- Page Object Model: Strong understanding of Page Object Model pattern for maintainable UI tests
- Test Frameworks: Experience with testing frameworks like TestNG, JUnit, NUnit, MSTest
- Scripting Skills: Additional scripting capabilities (Python, JavaScript, PowerShell) for test utilities
- Docker/Containers: Understanding of testing containerized applications
- Cloud Testing: Experience with cloud-based testing platforms or services
- Security Testing: Basic awareness of security testing principles (OWASP)
- Accessibility Testing: Knowledge of accessibility testing standards and tools
- Test Metrics: Experience defining and tracking quality metrics and test coverage
- Code Review: Participation in code reviews with focus on testability
- Mentoring: Experience mentoring junior QA engineers or sharing testing knowledge
- Multiple Domains: Testing experience across various domains (web, mobile, API, database)
- Portuguese Language: Portuguese language skills helpful for local team communication but not required
Location: Porto, Portugal (Hybrid - 3 days on-site/week)