Вакансия: Python-разработчик системы автоматизации QA.
Формат работы: удаленный или гибрид.
Официальное оформление по ТК РФ (аккредитованная ИТ-компания с соответствующими привилегиями для сотрудников).
Наша команда разрабатывает операционную систему, которая используется на маршрутизаторах и коммутаторах, производимых нашей компанией.
Обязанности:
- Разработка и развитие (доработка) системы, автоматизирующей комплексное функциональное и нагрузочное тестирование нашей сетевой ОС (представляет собой оркестратор и сотни сценариев для него);
- Развитие имеющихся и создание новых автотестов для упомянутой системы;
- Описание сетевых топологий, воспроизводящих типичные сетевые конфигурации наших заказчиков, в виде программного кода;
- Участие в проектировании и написании последовательностей (pipelines) CI CD;
- Взаимодействие с разработчиками с целью реализации сценариев тестирования добавляемых функций и формирования задач по устранению выявленных неисправностей.
Требования:
- Знание методик тестирования ПО и сетевых решений (smoke тесты, юнит-тесты и пр.);
- Знание протоколов динамической маршрутизации (BGP, OSPF);
- Уверенная работа в операционных системах 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;
- Английский язык на уровне, позволяющем свободно читать техническую документацию.
