Обязанности:
- Опыт работы с системами автоматизации, диспетчеризации, мониторинга и промышленного интернета вещей.
- Знание основ ИБ
- Опыт разработки на одном или нескольких языках: Python, JavaScript/TypeScript.
- Хорошее понимание Linux и навыки работы с командной строкой.
- Понимание принципов работы сетей TCP/IP.
- Опыт интеграции оборудования и программных систем.
- Понимание принципов работы API и сетевых протоколов.
- Навыки анализа логов и диагностики программных проблем.
- Умение самостоятельно разбираться в технической документации и протоколах взаимодействия оборудования.
- Готовность работать с аппаратной частью: контроллерами, датчиками, интерфейсами RS-485/Ethernet и периферийным оборудованием.
Будет преимуществом:
- Опыт работы с Wiren Board или аналогичными IoT/промышленными контроллерами.
- Опыт работы с Modbus RTU/TCP, SNMP
- Опыт работы с MQTT.
- Опыт разработки под embedded Linux.
- Знание SQL и опыт работы с базами данных.
- Опыт работы с системами мониторинга Zabbix.
- Опыт интеграции с телекоммуникационным оборудованием.
- Понимание принципов построения инженерной инфраструктуры ЦОД/телекоммуникационных площадок.
- Опыт разработки отказоустойчивых систем и сервисов, работающих 24/7.
Технологический стек
В зависимости от конкретной задачи могут использоваться:
Hardware:
- Wiren Board и периферия;
- Счетчики электроэнергии, датчики температуры, влажности, протечки и других параметров;
- исполнительные устройства;
- RS-485 / Ethernet;
- промышленное и телекоммуникационное оборудование.
Software:
- Linux;
- Python / C / C++ / JavaScript;
- MQTT;
- Modbus RTU/TCP;
- HTTP/HTTPS;
- SNMP;
- Git;
- Docker;
- SQL;
- системы мониторинга и визуализации.
Задача для выполнения:
- сбор показаний датчиков;
- RS-485 / Modbus;
- дискретные входы;
- аналоговые входы;
- MQTT;
- контроль доступности оборудования;
- локальная буферизация данных при потере связи с сервером;
- передача событий и аварий на центральный сервер;
- watchdog и автоматическое восстановление;
- OTA/удалённое обновление конфигурации, если это потребуется.
На центральном сервере:
- список всех core-площадок;
- состояние каждого Wiren Board;
- состояние оборудования;
- текущие значения параметров;
- история измерений;
- аварии и события;
- подтверждение/закрытие аварий;
- уведомления;
- права пользователей;
- журнал действий;
- dashboard и графики;
- API.
Каким мы видим кандидата
Нам нужен специалист, которому интересно работать на стыке программной разработки системы мониторинга и реального оборудования.
Важно не только уметь писать код, но и понимать, как этот код будет работать на реальном объекте: как контроллер получает данные от датчика, что происходит при потере связи, как диагностировать проблему по логам, как обеспечить корректное восстановление после перезагрузки и как безопасно обновить ПО на уже установленном оборудовании.
Будет большим плюсом инженерный подход: умение самостоятельно локализовать проблему, разобраться в неизвестном протоколе или оборудовании и довести решение до промышленной эксплуатации.
Что предлагаем
- Работа над системой мониторинга реальной телекоммуникационной инфраструктуры.
- Участие в разработке собственного программно-аппаратного решения.
- Возможность влиять на архитектуру и технологические решения системы.
- Сочетание разработки, автоматизации и инженерных задач.
- Работа с современными IoT/embedded-технологиями и телекоммуникационной инфраструктурой.
- Профессиональное развитие в направлениях Software Development / IoT / Embedded / Network Engineering / DevOps.
Команда специалистов, с которыми можно решать сложные технические задачи
Условия: заработная плата: от 200 000 рублей на руки, премия по результатам запуска проекта