Инженер по нагрузочному тестированию
Требования
Местоположение и тип занятости
Компания
Описание вакансии
Условия работы
Команда X5 Digital создает и развивает сервисы для экспресс-доставки.
Мы разработали собственную экосистему цифровых продуктов, запустили проект объединенных дарксторов для ТС "Пятерочка" и "Перекресток", а также наращиваем собственную доставку путём сотрудничества с самозанятыми курьерами.
X5 Digital сегодня — это более 20 миллионов доставленных заказов, более 1500 самозанятых курьеров и сервис, который представлен уже в 60 городах России.
Наша цель — занять лидирующую позицию на рынке e-grocery, став безусловной ассоциацией с онлайн-доставкой продуктов.
Основной стек технологий:
- Базы данных: MongoDB, ElasticSerch, Reddis
- Инструменты нагрузочного тестирования: Jmeter, ЯндексТанк.
- Языки программирования для задач НТ: Java(Groovy), Python
- Версионирование: Git
- Мониторинг: grafana+infuxdb, jtlReporter
- Другие технологии: Rabbit, Kafka, Kibana
Чем предстоит заниматься:
- Разработка стратегии тестирования производительности;
- Формирование подходов к нагрузочному тестированию различных систем, частей систем и отдельных микросервисов;
- Анализ работы в Highload продукта, формирование профилей нагрузки с учетом текущего и планируемого траффика, сравнительное тестирование, определение ограничений тестирования;
- Разработка окружения для нагрузочного тестирования (генераторы нагрузки, шаблоны скриптов, шаблоны профилей нагрузки, эмуляторы смежных систем, скрипты генерации лент тестовых данных и так далее);
- Проведение нагрузочного тестирования для ключевых узлов продукта;
- Подготовка рекомендаций по результатам нагрузочного тестирования;
- Проведение Workshop-ов для разработчиков по основам нагрузочного тестирования для самостоятельной работы с простыми сценариями.
Что ждем от соискателя:
- Опыт программирования на любом ООП языке (предпочтительно Python, Java, Go, JS);
- Знание основ реляционных баз данных, языка SQL;
- Навыки использования систем мониторинга (grafana+infuxdb, grafana+graphite или grafana+prometheus и т.п.);
- Навыки работы ОС Linux;
- Знания в области performance инженерии и, в частности, performance тестирования;
- Знание общих подходов проведения нагрузочного тестирования;
- Навыки работы с инструментами нагрузочного тестирования (jmeter, tsung, yandex-tank, locust, phantom, gatling и т.д.), работа с Git;
- Опыт диагностики и разбора проблем производительности по результатам нагрузочного тестирования на уровне баз данных и уровня приложений.
Будет плюсом:
- Опыт проведения полного цикла тестирования (от разработки подхода и ограничений, скриптов, эмуляторов, генерация тестовых данных, подготовка тестовых стендов, проведение тестирования до формирования рекомендаций).
Какие для Вас будут вызовы:
- Формирование и разработка окружения нагрузочного тестирования для продуктовых команд;
- Развитие Performance тестирования Front-end-ов нашего продукта;
- Реализация сложных проектов по интегральному нагрузочному тестированию продукта;
- Обучение и распространение экспертизы по нагрузочному тестированию в компании среди всех желающих (разработчики и тестировщики преимущественно);
- Развитие инструментов и практик benchmarking на стадии разработки продуктов;
- Выявление необходимости проведение Volume, Stress, Longevity и других подвидов тестирования производительности.
Почему с нами классно:
- Прокачиваем: в нашей команде крутые профессионалы из крупнейших компаний;
- Оснащаем: предоставляем лучшую технику;
- Обучаем: мы уверены — у нас есть чему научиться, но готовы при необходимости подключить нужные курсы и конференции. Менторство и наставничество включены;
- Заботимся о здоровье: ДМС + стоматология после испытательного срока;
- Удобный график, возможность удаленной работы;
- Свободное творческое пространство, минимум бюрократии;
- Если ты не из Москвы, поможем с переездом — оплатим дорогу и первый месяц аренды квартиры.