SDET / специалист по тестированию
Summary
SDET on VK's messenger team: builds and maintains the test infrastructure — Kotlin/Spring Boot microservices (stubs, simulators, data generators, scenario orchestrators), APIs/SDKs for autotests, test data and environment management, and CI/CD integration (GitLab CI/Jenkins), working closely with QA teams.
Задачи
- Проектировать и разрабатывать микросервисы на Kotlin/Spring Boot, которые используются в процессе тестирования (сервисы‑заглушки, симуляторы, генераторы данных, оркестраторы сценариев)
- Реализовывать API и внутренние SDK для автотестов и тестовых инструментов, обеспечивать удобные интерфейсы для команд QA/Dev
- Разрабатывать сервисы для управления тестовыми данными и состоянием стендов: создание/очистка сущностей, фикстуры, миграции
- Интегрировать тестовые сервисы в существующую архитектуру: очереди, брокеры сообщений, внешние API, базы данных
- Встраивать автотесты в CI/CD (GitLab CI/Jenkins): smoke, регресс, nightly, запуск по мердж‑реквестам, отчётность
- Обеспечивать наблюдаемость: логирование, метрики, алерты для сервисов, от которых зависят тесты и контуры тестирования
- Взаимодействовать с QA‑командами, собирать требования к инструментам для тестирования, помогать им эффективно использовать созданные сервисы
- Писать покрытие unit/integration‑тестами для своих сервисов, поддерживать высокий уровень качества кода и производительности решений
Требования
- Уверенное владение Kotlin и опыт разработки backend‑приложений на Spring Boot
- Понимание архитектуры микросервисов: REST, взаимодействие через очереди, идемпотентность, устойчивость к сбоям
- Опыт проектирования и разработки внутренних инструментов/сервисов (tools, test services, сервисы‑заглушки, генераторы данных или аналогичные системы)
- Опыт работы с SQL‑БД (PostgreSQL/MySQL), умение писать запросы, понимать транзакции и миграции
- Базовое понимание процессов тестирования и потребностей QA‑команд: виды тестов, требования к стабильности стендов, работа с заглушками
- Опыт работы с Git и CI/CD (GitLab CI/Jenkins/TeamCity): сборка, деплой и проверка своих сервисов на разных окружениях
Будет плюсом
- Опыт разработки или поддержки платформы тестирования (test platform, test environment management, self‑service tools для QA)
- Опыт работы с брокерами сообщений (Kafka, RabbitMQ и тому подобное), написания сервисов‑консьюмеров/продюсеров
- Опыт container‑first разработки: Docker, базовая работа с Kubernetes
- Опыт интеграции с системами логирования и мониторинга (Prometheus/Grafana/ELK и аналоги)