Обязанности:
Одним из ключевых направлений YADRO является разработка сетевых устройств промышленного класса. В своих разработках мы используем сетевую операционную систему с открытым кодом SONiC, созданную в рамках Open Compute Project. Мы развиваем ее, дорабатывая для нужд наших заказчиков и адаптируя под наши устройства, и делаем это совместно с другими участниками проекта.Мир современных сетей передачи данных многообразен в своих протоколах, сложен в топологиях, и почти бесконечен в размерах сетей, проект разработки имеет длительную дорожную карту развития и мы будем рады видеть в нашей команде талантливых разработчиков на Python, умеющих построить правильную инфраструктуру для автотестов и процессы вокруг нее. Чем предстоит заниматься: разработкой и поддержкой библиотек/фреймворков для задач автоматизированного тестирования сетевого оборудования (L2+, L3); разработкой подсистемы сервисов для CI/CD инфраструктуры (resource management, reporting, и т.д.); разработкой pytest плагинов; разработкой и поддержкой автотестов на pytest; настройкой и поддержкой физических стендов. Мы ожидаем от будущего члена команды: уверенного владения Python и pytest; знания шаблонов проектирования и умения их применять; опыт работы с asyncio, aiohttp, sqlalchemy, scapy, scrapli, asyncssh; опыта написания доктестов, юнит-тестов, документации (Sphinx); знания теоретических основ тестирования оборудования и ПО; знания сетевых протоколов TCP/IP стека, протоколов динамической маршрутизации; навыков работы с инструментами диагностики сетей (tcpdump, wireshark и т.д.). Дополнительно приветствуем: опыт работы с Docker; уверенное владение bash; хорошее знание и опыт работы с сетевыми протоколами уровня операторов/ЦОДов (например, MC-LAG, VxLAN, BGP, OSFP, STP и т.д.).