Обязанности:
- Проведение функционального, интеграционного и регрессионного тестирования распределенной системы, состоящей из множества микросервисов.
- Тестирование взаимодействия между сервисами, проверка корректности маршрутизации запросов и обработки данных в асинхронных сценариях.
- Анализ влияния изменений в одном сервисе на смежные компоненты системы.
- Полноценное тестирование RESTful/gRPC API на всех уровнях (позитивные, негативные, граничные сценарии) с использованием Postman (сборки коллекций, работа с переменными окружений).
- Контроль качества обмена данными через форматы JSON/XML: валидация структуры, схем (XSD) и корректности сериализации/десериализации.
- Тестирование CLI-инструментов (утилит командной строки): проверка флагов, аргументов, кодов возврата (exit codes), потоков stdout/stderr и обработки сигналов ОС.
- Глубокое тестирование сценариев обмена сообщениями через NATS, Rabbit MQ и Kafka: Проверка публикации и потребления сообщений в топиках/очередях.
- Тестирование гарантий доставки (At-least-once, Exactly-once), порядка сообщений (ordering) и механизмов Dead Letter Queue (DLQ).
- Симуляция сбоев (отказ брокера, недоступность consumer, перегрузка) для проверки механизмов ретраев и автоматического восстановления.
- Написание сложных SQL-запросов (SELECT, JOIN, подзапросы, оконные функции) для валидации данных на уровне БД (PostgreSQL/MySQL).
- Проверка миграций схем данных, контроль целостности внешних ключей и индексов.
- Работа в командной строке Linux (Ubuntu/Astra) для развертывания тестовых стендов, чтения логов (journalctl, tail, grep), мониторинга ресурсов (htop, netstat).
- Настройка сетевых интерфейсов, файловых прав и переменных окружения для запуска тестируемых сервисов.
- Написание простых bash-скриптов для автоматизации рутинных действий (перезапуск сервисов, бэкап логов, массовая генерация данных).
- Глубокий анализ логов приложения и системных журналов для изоляции дефектов (поиск стектрейсов, ошибок подключения к брокерам, таймаутов).
- Воспроизведение сложных сценариев в распределенной среде с использованием инструментов трассировки.
- Участие в планировании тестовых стратегий для новых фич с учетом специфики микросервисов и асинхронного обмена.
- Будет плюсом - Написание и поддержка автотестов на уровне API и интеграции (например, на Python/Pytest или Playwright).
- Интеграция тестов в CI/CD пайплайны (GitLab CI / Jenkins)
- Ведение тестовой документации (чек-листы, тест-кейсы в TestRail/Allure).
- Формирование понятных баг-репортов в Jira с указанием шагов воспроизведения, логов и срезов данных из БД и очередей.
- Тесное взаимодействие с разработчиками и системными аналитиками для уточнения требований к асинхронным интеграциям.
Требования:
- Опыт работы с rest-api (больше 2 лет), в идеале знание и понимание openapi.
- Опыт работы с Postman или подобным софтом.
- Опыт работы с брокерами очередей в идеале - NATS, но подойдёт и RabbitMQ, Kafka.
- Опыт работы микросервисной архитектурой (понимание что это и принципы работы и тестирования)
- Умение работать с cli (продвинутый пользователь)
- Опыт тестирование web(от 1 года), понимание что происходит под капотом, а не только тестирование дизайна, умение отличить ошибку бэка от фронта.
- Тестирование DB (знает, что и как проверять, умение применить необходимые sql запросы)
- RPC (понимание, принципы)
- Уверенный пользователь linux(консольный) в идеале опыт работы debian12\astra18, но подойдут и другие, важен опыт работы в cli на linux.
- Обязательный опыт работы с xml, понимание что это такое, как тестируется.
- Опыт проведения ревью технической документации, на этапе её разработки (документации).
- Умение автоматизировать рутинные задачи на уровне скриптов (можно с помощью ИИ)
- Умение пользоваться ИИ для решения рабочих задач (понимает, что нужно перепроверять за ИИ постоянно)
Будет плюсом если есть знания или был опыт работы:
С оркестрацией данных, rest-conf, net-conf, yang model, clixon, clixon controller, selenium \ playwright + python (особенно это), опыт работы с сетевым оборудованием (в идеале тестирование сетевого оборудования или софта относящегося к работе сети), NACM, опыт работы с виртуальными машинами или контейнерами (понимает , что такое виртуализация, зачем она нужна), D-Bus, RBAC \ ABAC.
Условия:
- Оформление в соответствии с ТК РФ, бессрочный договор, гибкое начало рабочего дня;
- Конкурентный уровень заработной платы (готовы по достоинству оценить ваши знания и опыт) + премирование по результатам работы + надбавка за выслугу лет;
- Комфортный офис в БЦ «Дмитровский» с собственной кухней;
- ДМС со стоматологией после испытательного срока;
- Профессионализм команды. В ней собраны высококлассные программисты и инженеры с большим опытом в разработке программно-аппаратных решений. Работа над масштабным проектом, написанным «с нуля» в команде, где каждый новый сотрудник получает помощь и поддержку, имеется система наставничества, а также возможность получить опыт работы в распределённых командах со специалистами высокого уровня;
- Оборудованное рабочее место с обеспечением всего необходимого, предоставляем рабочую технику (ноутбук и девайсы), соответствующую профессиональным потребностям.