Senior Python developer / Инженер-программист (Release engineering)

Дата размещения вакансии: 12.11.2024
Работодатель: YADRO
Уровень зарплаты:
з/п не указана
Город:
Санкт-Петербург
Требуемый опыт работы:
От 1 года до 3 лет

Главная цель нашего департамента – создание системы выпуска продуктов, повторного использования кода и компонент, всего процесса разработки и поставки ПО в целом. Эта система решает широкий спектр задач, связанных с compute provisioning и прототипированием программно-аппаратных комплексов (в т.ч. хранения данных) и нацеленных на получение постоянно стабильного кода и его непрерывную интеграцию в программные продукты компании.

Наша команда разрабатывает программные модули и библиотеки на языке Python для обеспечения интеграции системы предоставления вычислительных ресурсов с пользовательскими средствами автоматизации разработки. Эти модули включают собственный форк OpenStack’а, Ansible Collection, Molecule Driver и др.

Чем предстоит заниматься:

  • участвовать в разработке, разворачивании и поддержке программного слоя системы выпуска продуктов и её компонент;
  • сотрудничать с другими командами департамента и вне него с целью улучшения работы системы (стабильность, производительность), доработки и реализации требований и т.п.

Наши ожидания от будущего члена команды:

  • отличное знание Python, 3-4 года активного девелопмента;
  • знание принципов разработки ООП;
  • опыт разработки приложений и библиотек;
  • привычка написания юнит-тестов;
  • опыт использования тестовых фреймворков на языке Python;
  • навыки командной работы и документирования - git, Jira, Confluence;
  • знание процессов разработки ПО;
  • знание CI/CD систем сборки и выпуска программного обеспечения – Jenkins’а или аналогичных, и опыта работы с ними (написания пайплайнов).

Будет плюсом:

  • опыт разработки асинхронных приложений на Python, приложений на Go/
  • опыт разработки клиентских и серверных приложений на базе REST API;
  • практический опыт работы с fio/vdbench для тестирования производительности;

Желательно знать, уметь и понимать:

  • архитектуру OpenStack;
  • идеологию микросервисов;
  • идеологию монорепозитория;
  • форматы передачи и протоколов обмена данными в интернет-сервисах;
  • средства виртуализации и контейнеризации для решения практических задач (docker);

​​​​​​​​​​​​​​Знание этих платформ поможет вам при работе у нас: Linux, OpenStack, QEMU/KVM, K8s, Ansible, Molecule, Bazel.