О проекте
Наш продукт — радиорелейное оборудование для сетей связи. Его программная часть охватывает работу с аппаратными модулями, настройку станции, диагностику и подключение к системам управления. Основные технологии — Embedded Linux, C/C++ и Python. Мы развиваем продукт с расчётом на многолетнюю непрерывную эксплуатацию, поэтому наряду с новыми функциями решаем задачи безопасности и надежности.
Архитектору предстоит определять структуру программной системы, согласовывать решения нескольких команд и доводить их до реализации с учётом возможностей оборудования и условий эксплуатации.
Обязанности
— Разрабатывать архитектуру встроенного ПО: системный уровень, взаимодействие с оборудованием, сервисы управления и диагностики.
— Определять границы компонентов, интерфейсы и взаимодействие ПО с модемом, коммутатором, ПЛИС и системой управления.
— Формировать и согласовывать измеримые требования к производительности, надёжности, восстановлению после сбоев, сохранности конфигурации и безопасному обновлению ПО. Определять архитектурные решения для их выполнения.
— Определять архитектурные меры защиты интерфейсов управления, разграничение доступа, проверку подлинности ПО и аудит действий.
— Проводить архитектурные ревью, описывать архитектуру ПО по модели C4 и поддерживать её описание в актуальном состоянии.
— Согласовывать решения с командами ПО, ПЛИС, аппаратной разработки и QA. Определять способы проверки архитектурных требований, участвовать в разборе сложных дефектов.
Требования
— Опыт разработки ПО от 10 лет, включая работу архитектором ПО или на сопоставимой позиции с ответственностью за архитектуру продукта.
— Опыт разработки embedded-систем, их вывода в серийную эксплуатацию и сопровождения.
— Уверенное владение C/C++, Python, опыт работы с Bash, многопоточностью и межпроцессным взаимодействием.
— Глубокое знание Embedded Linux на ARM/ARM64: U-Boot, ядро, Device Tree, BSP, драйверы. Опыт кросс-компиляции, Yocto, знакомство с Buildroot.
— Знание Ethernet, TCP/IP, VLAN, QoS, SNMP; опыт взаимодействия с оборудованием через I²C, SPI, UART, GPIO, MDIO.
— Опыт проектирования API и обмена сообщениями: ZeroMQ, MQTT, gRPC или аналогичные технологии. Понимание хранения конфигурации и работы с SQLite.
— Опыт обеспечения надёжности и безопасности ПО: обработка отказов, watchdog, восстановление, обновление с откатом, аутентификация, авторизация, TLS/SSH, работа с уязвимостями.
— Опыт CI/CD и автоматизированного тестирования, включая испытания на целевом оборудовании. В проекте используются GitLab CI/CD и Pytest.
— Практический опыт описания архитектуры ПО по модели C4: контекст системы, контейнеры и компоненты. Умение обосновывать архитектурные решения и согласовывать их между командами. Чтение технической документации на английском языке.
Преимуществом будет: опыт разработки телекоммуникационного оборудования или систем для ответственной инфраструктуры, знание радиорелейной связи, PTP/SyncE и интеграции с ПЛИС.
Условия:
— Развитие: профессиональный рост, команда экспертов, внутреннее и внешнее обучение;
— Забота: ДМС, оплата 10 календарных дней нетрудоспособности в году в размере 100% заработка;
— Комфорт: гибкое начало рабочего дня, гибридный график в любой локации присутствия или удаленный формат работы.
Похожие вакансии
Программист 1С
от 180 000 ₽ до 250 000 ₽
Санкт-Петербург
Специалист по внедрению и миграции на 1С:ERP
Санкт-Петербург
Программист микроконтроллеров
от 150 000 ₽ до 200 000 ₽
Санкт-Петербург
Инженер группы ресурсных испытаний
от 100 000 ₽
Санкт-Петербург
Программист С++ (Qt)
от 150 000 ₽
Санкт-Петербург
Консультант 1С (консультант-аналитик 1С)
от 100 000 ₽ до 120 000 ₽
Санкт-Петербург