QA Automation Engineer (Nexus Team)

Semrush
Municipality of Madrid, Spain
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate

Job location

Municipality of Madrid, Spain

Tech stack

Java
API
Artificial Intelligence
Automation of Tests
Unix
Client Server Models
Code Generation
Code Review
Customer Data Management
Data Governance
Relational Databases
Software Debugging
Gradle
JUnit
Load Testing
Maven
MongoDB
MySQL
Cisco Nexus Switches
NoSQL
Redis
Prometheus
Test Data
Test Management
Testng
TypeScript
Data Processing
Google Cloud Platform
React
Large Language Models
Grafana
Kotlin
Containerization
Gitlab-ci
Kubernetes
Semrush
Playwright
Vertica
REST
Terraform
Docker
Pagerduty
User Administration

Job description

  • QA Ownership: Drive and own quality assurance processes in the team, including code review, automations of workflows, and adapting new testing best practices.

  • Automated Tests: Setting up and maintaining existing automated tests and their frameworks, supporting and covering new features with automated tests.

  • Manual Testing: Perform manual testing, primarily focusing on back-end systems.

  • Documentation and Collaboration: Create and maintain necessary documentation. Work closely with Product Manager and Tech Lead Manager to refine project requirements. Assist in gathering analytics and collaborate effectively with external teams.

  • Technical Assistance: Help internal users with our team's product issues through thorough investigations, discussions, and clarifications., The Nexus Team is responsible for customer data management at Semrush, including authorization and user profiles, user data handling, asset storage, and service-to-service access to data. The team oversees all implementations related to data protection and privacy regulations, as well as the personal dashboard for Semrush users. As the team responsible for user data governance, we focus on ensuring that data is secure, private, accurate, available, and usable. This includes the actions people must take, the processes they must follow, and the technology that supports them throughout the user data lifecycle. To help you better understand the team's scope, impact, and ways of working, here's a quick overview:

  • Critical Service Provision: Our team is responsible for some of the most critical services within the company, supporting Semrush's backbone and collaborating with over 50 teams.

  • New Architecture Development: We're engaged in designing a new architecture, developing a scalable and centralized user management system that serves all product development teams, as well as our end users.

  • External Clients Focus: One of our goals is to simplify and secure the processes of registration, authorization, and profile management for our clients, ensuring their personal data is protected.

  • In-House Support: For our internal users (teams), we develop and maintain high-performance infrastructure services that manage and provide access to user data.

  • Continuous Improvement: We're always experimenting with team processes to enhance our efficiency and effectiveness.

  • Open Feedback Culture: We actively share constructive feedback and are open to receiving it, believing in the power of transparent communication. Technologies we use

  • Java / Kotlin for test automation; services are developed in Go.

  • Selenide, Playwright, OkHttp, grpc-java, TestNG, JUnit 5, Maven, Gradle.

  • Allure TestOps as a test management system.

  • K6 for load testing.

  • Front End: React, TypeScript.

  • Spanner, Redis, ClickHouse, MySQL, PubSub.

  • Kubernetes (Google Cloud), Docker, Terraform and Gitlab CI.

  • Prometheus, Grafana, Opsgenie.

About the perks

  • Unlimited PTO
  • Hobby & team building budget allowance
  • Employee Support Program
  • Loss of family member financial aid
  • Employee Resource Groups

Requirements

Move together. Raise the bar. Learn fast-grow faster. That's the default. And here's what else is needed to succeed in this role:

  • 5+ years of QA experience with 3+ years of QA automation experience

  • Experience in API and UI Test Automation using Java and/or Kotlin

  • Understanding of main programming concepts, guidelines, and patterns

  • Understanding of web stack and client-server applications, including knowledge of HTTP, RESTful APIs, and browser debugging tools

  • Experience with relational databases

  • Basic UNIX skills (comfortable with CLI tools)

  • Practical experience setting up and maintaining testing infrastructure (CI/CD pipelines, Docker/containerized environments)

  • Strong English proficiency for documentation and team collaboration Not required, but a plus

  • Basic knowledge of load testing techniques and tools, security best practices, and PII processing

  • Understanding of and experience with gRPC.

  • Familiarity with Kubernetes, Helm, IaC, etc.

  • Knowledge of setting up Quality Gates and processes around them.

  • NoSQL experience (Redis, MongoDB, etc)

  • Experience working in an agile, cross-functional team and a fast-paced environment.

  • Exposure to leveraging AI/LLM tools to optimize QA processes (e.g., code reviews, test data generation, code generation, and analytics).

Apply for this position