Обязанности: Условия:
- Разработка и развитие (доработкой) системы, автоматизирующей комплексное функциональное и нагрузочное тестирование нашей сетевой ОС (представляет собой оркестратор и сотни сценариев для него);
- Развитие имеющихся и созданием новых автотестов для упомянутой системы;
- Описание сетевых топологий, воспроизводящих типичные сетевые конфигурации наших заказчиков, в виде программного кода
- Принимать участие в проектировании и написании последовательностей (pipelines) CI/CD;
- Взаимодействовать с разработчиками с целью реализации сценариев тестирования добавляемых функций и с целью формирования задач по устранению выявленных неисправностей.
- Знание методик тестирования ПО и сетевых решений (smoke тесты, юнит-тесты и пр.);
- Уверенная работа в операционных системах Linux;
- Понимание устройства сетей связи на базе Ethernet и IP;
- Умение автоматизировать задачи с помощью скриптов на Python и Bash: знакомы с синтаксисом этих языков, способны с нуля написать нужный скрипт, способны разобраться в имеющемся сложном коде от 10 000 строк;
- Виртуализация в Linux (QEMU-KVM) и изоляция (Docker): можете подготовить конфигурацию VM KVM с нуля, запустить ее и диагностировать;
- Опыт эксплуатации и поиска неисправностей в сетевых инфраструктурах на базе Ethernet и IP: если у вас сеть из нескольких элементов и не проходят пакеты, вы понимаете, как проводить диагностику.
Будет плюсом:
- Опыт эксплуатации Ethernet и IP-сетей;
- Опыт написания автотестов;
- Опыт работы тестировочными фреймворками;
- Опыт работы с веб-фреймворками Django, Flask (или эквиваленты);
- Опыт работы с базами данных (любая БД, которая позволит создать микросервис для обработки служебной информации сложного приложения);
- Опыт работы c CI/CD средами, желательно Jenkins;
- Опыт эксплуатации виртуализированных облачных инфраструктур в Linux;
- Опыт работы с контейнеризированными сервисами;
- Опыт работы с Jenkins Pipeline (pipeline as code) и Apache Groovy DSL;
- Понимание современного устройства процесса разработки ПО:
- работа с кодом в системе SCM (Git, GitLab);
- применение подходов DevOps и CI/CD;
- работа с задачами в трекере (Jira и пр.), проектная работа Agile Scrum.
- Английский язык на уровне, позволяющий свободно читать техническую документацию.
- 5/2, удаленный формат работы;
- Официальное трудоустройство (белая заработная плата, оплачиваемые отпуска, больничные);
- После прохождения испытательного срока ДМС.