свободные технологии

Embedded-разработчик | Разработчик ПО для STM32 (Python)

FreeTech – производственная компания, которая разрабатывает и внедряет решения для автоматизации и мониторинга инженерных систем. Мы создаем собственные программно-аппаратные устройства для объектов разного масштаба: от инженерного оборудо…

свободные технологии · На сервисе с: 17.06.26 13:18

↑ Вакансия с автоподнятием
от 150k ₽РоссияМоскваГибрид

FreeTech – производственная компания, которая разрабатывает и внедряет решения для автоматизации и мониторинга инженерных систем. Мы создаем собственные программно-аппаратные устройства для объектов разного масштаба: от инженерного оборудования зданий и коммерческого холода до промышленных технологических процессов.

Наши устройства уже работают на реальных объектах: собирают данные с полевых датчиков, взаимодействуют с исполнительными механизмами, обмениваются данными по промышленным интерфейсам и помогают обеспечивать надежную работу инженерной инфраструктуры.

Сейчас мы ищем Embedded-разработчика для развития встроенного ПО устройств на базе микроконтроллеров STM32.

В этой роли вы будете заниматься низкоуровневой разработкой, интеграцией с периферией микроконтроллеров, реализацией протоколов обмена, настройкой интерфейсов связи, работой с датчиками и отладкой устройств на стендах и реальных объектах.

Система находится в промышленной эксплуатации, поэтому задачи будут связаны не только с разработкой нового функционала, но и с поддержкой, доработкой и повышением надежности уже работающих устройств.

Задачи

  • Разработка встроенного ПО для устройств на базе микроконтроллеров STM32.
  • Настройка и использование периферии микроконтроллеров: GPIO, ADC, DAC, UART, SPI, I2C, timers, watchdog, DMA, PWM, CAN.
  • Реализация логики сбора, обработки и фильтрации данных с датчиков.
  • Работа с промышленными интерфейсами связи: CAN и RS-485.
  • Реализация и поддержка протоколов обмена с оборудованием и верхним уровнем.
  • Разработка ПО для устройств автоматизации, мониторинга и управления инженерными системами.
  • Интеграция устройств с датчиками, исполнительными механизмами, контроллерами и внешними модулями.
  • Отладка встроенного ПО на аппаратных стендах, макетах и опытных образцах.
  • Поиск и устранение проблем, связанных с обменом данными, электромагнитными помехами, нестабильной связью, сбоями питания и некорректной работой периферии.
  • Разработка тестового ПО для проверки аппаратной части новых устройств: периферии микроконтроллера, интерфейсов CAN/RS-485, входов/выходов и взаимодействия с датчиками.
  • Взаимодействие с инженерами-схемотехниками, разработчиками верхнего уровня и специалистами по внедрению.
  • Поддержка существующей кодовой базы, рефакторинг, оптимизация и повышение надежности ПО.
  • Подготовка технической документации по реализованным функциям, протоколам и настройкам устройств.

Требования

  • Опыт разработки встроенного ПО от 3 лет.
  • Уверенное знание C для микроконтроллеров.
  • Опыт разработки под микроконтроллеры семейства STM32 с использованием CMSIS и HAL.
  • Понимание архитектуры микроконтроллеров ARM Cortex-M.
  • Опыт работы с периферией STM32: UART, SPI, I2C, ADC, PWM, timers, DMA, GPIO, watchdog, interrupts.
  • Практический опыт работы с промышленными интерфейсами CAN и RS-485.
  • Опыт работы с Modbus RTU поверх RS-485.
  • Понимание особенностей обмена данными с полевыми датчиками и исполнительными устройствами.
  • Опыт работы с Keil uVision, STM32CubeMX / MX Code, VS Code + GCC / arm-none-eabi-gcc.
  • Навыки чтения электрических схем и понимание взаимодействия ПО с аппаратной частью устройства.
  • Опыт поиска аппаратно-программных ошибок: инициализация периферии, тайминги, прерывания, обмен по шинам, ошибки связи, зависания устройства.
  • Понимание принципов надежного embedded-ПО: обработка ошибок, watchdog, контроль состояний, восстановление после сбоев.
  • Опыт работы с Git.

Будет плюсом

  • Опыт работы с FreeRTOS или другими RTOS.
  • Опыт реализации или поддержки протоколов Modbus RTU, CANopen, собственных бинарных протоколов и протоколов обмена со сторонним оборудованием.
  • Опыт интеграции стороннего оборудования по документации производителя: карты регистров, команды обмена, нестандартное поведение устройств, диагностика ошибок связи.
  • Опыт разработки bootloader, механизмов обновления прошивки и хранения настроек во Flash.
  • Опыт работы с энергонезависимой памятью: internal Flash, EEPROM, external Flash.
  • Опыт работы с модульными или расширяемыми системами.
  • Опыт разработки ПО для серийных устройств, находящихся в эксплуатации.
  • Опыт разработки устройств для автоматизации, диспетчеризации, мониторинга или промышленного оборудования.
  • Опыт диагностики проблем на реальных объектах автоматизации.
  • Понимание основ промышленной автоматики: датчики, исполнительные механизмы, шкафы управления, контроллеры, телеметрия, аварии, дискретные и аналоговые сигналы.
  • Опыт разработки тестового ПО, стендов или утилит для проверки устройств.
  • Базовое понимание схемотехники, питания, развязок интерфейсов, согласования линий RS-485/CAN.
  • Опыт работы с CI/CD для embedded-проектов, автоматической сборкой прошивок и статическим анализом кода.
  • Опыт работы с Python для вспомогательных скриптов, тестирования или автоматизации сборки.

Технологический стек

Микроконтроллеры

  • STM32
  • ARM Cortex-M

Языки

  • C
  • базово C++

Интерфейсы и периферия

  • CAN
  • RS-485
  • UART
  • SPI
  • I2C
  • ADC
  • GPIO
  • timers
  • PWM
  • DMA
  • watchdog

Среды и инструменты разработки

  • Keil uVision
  • STM32CubeMX / MX Code
  • VS Code
  • GCC / arm-none-eabi-gcc
  • STM32CubeProgrammer
  • ST-Link
  • DAP-Link
  • OpenOCD

Отладка и диагностика

  • JTAG/SWD
  • ST-Link
  • DAP-Link
  • логический анализатор
  • CAN/RS-485 анализаторы
  • терминальные утилиты

Системы контроля версий

  • Git
  • GitLab

Что мы предлагаем

  • Работу над собственными устройствами для автоматизации и мониторинга инженерных систем.
  • Участие в полном цикле разработки: от запуска платы и написания прошивки до испытаний и эксплуатации на объектах.
  • Возможность влиять на технические решения по устройствам.
  • Официальное трудоустройство по ТК РФ.
  • Стабильную своевременную заработную плату, выплаты 2 раза в месяц.
  • Уровень заработной платы обсуждается по результатам собеседования и зависит от опыта и технического уровня кандидата.
  • Профессиональный рост внутри embedded-направления.
  • Команду, в которой embedded-разработка напрямую связана с реальными промышленными задачами, оборудованием и эксплуатацией.
  • Гибридный формат работы: офис / работа из дома, с учетом необходимости периодической работы с оборудованием и стендами.

Похожие вакансии Embedded & IoT

hh.ru
Л

Инженер-программист

лодм-технологииНа сервисе с: 24.09.26 14:04
от 200k ₽РоссияМоскваОфис
Обязанности:​​​​​​​
  • Опыт работы с системами автоматизации, диспетчеризации, мониторинга и промышленного интернета вещей.
  • Знание основ ИБ
  • Опыт разработки на одном или нескольких языках: 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 рублей на руки, премия по результатам запуска проекта

hh.ru
пензенское конструкторско-технологическое бюро арматуростроения (пктба)

Инженер-программист встраиваемых систем (Embedded / STM32)

пензенское конструкторско-технологическое бюро арматуростроения (пктба)На сервисе с: 24.09.26 17:04
Зарплата не указанаРоссияПензаОфис

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

  • Разработка, отладка и сопровождение встроенного ПО (Firmware) на языке C для микроконтроллеров STM32.
  • Реализация алгоритмов обработки измерительной информации, управления исполнительными блоками и обмена данными.
  • Интеграция и настройка цифровых интерфейсов CAN, RS-485, UART, SPI, I²C, USB, Ethernet.
  • Отладка программно-аппаратных комплексов, поиск и устранение неисправностей на уровне ПО, микроконтроллера и периферии.
  • Составление документации: технических заданий, описаний алгоритмов и протоколов обмена, руководств по эксплуатации.
  • Участие в испытаниях разрабатываемой аппаратуры на всех этапах жизненного цикла изделия.

    Требования к кандидату:

  • Высшее техническое образование (электроника, радиотехника, автоматизация и управление, ИВТ, программная инженерия, приборостроение).
  • Уверенное знание языка C и архитектуры микроконтроллеров ARM Cortex-M.
  • Практический опыт работы с STM32 и периферийными модулями (GPIO, ADC, Timer, PWM, UART, SPI, I²C, CAN, DMA, Watchdog, Flash).
  • Навыки аппаратной отладки с использованием ST-LINK / JTAG / SWD.
  • Чтение схем и технической документации: умение читать электрические принципиальные схемы и даташиты на компоненты.
  • Инженерная самостоятельность в поиске и анализе причин неисправностей в программно-аппаратных комплексах.
  • Технический английский язык на уровне, достаточном для чтения технической документации.

Будет преимуществом:

  • Опыт работы с IDE и инструментами: STM32CubeMX / STM32CubeIDE, IAR Embedded Workbench, Keil MDK, ARM GCC.
  • Знание систем контроля версий: практический опыт работы с Git.
  • Опыт работы с RTOS: FreeRTOS или другими операционными системами реального времени.
  • Знание сетевых и промышленных протоколов: CANopen, Modbus RTU/ASCII/TCP.
  • Навыки работы с измерительным оборудованием: осциллограф, логический анализатор, анализаторы CAN/RS-485.
  • Понимание полного цикла разработки ПО: от анализа ТЗ до отладки на реальном образце и сдачи в эксплуатацию.

Личностные качества:

  • Системное и логическое мышление, инженерная самостоятельность в решении задач.
  • Умение разбираться в чужом коде и готовность к конструктивному взаимодействию в команде разработчиков.
  • Высокая ответственность за качество и сроки выполнения поставленных задач.

Условия работы:

  • Конкурентная заработная плата по результатам собеседования.
  • Прозрачная система премирования (по итогам выполнения проектов, за квартал и за год).
  • Современное рабочее место, оборудованное ПК, средствами отладки, лабораторным и измерительным оборудованием.
  • Интересные задачи в команде профессиональных инженеров-разработчиков электронных устройств.
  • Возможности для роста и профессионального развития в области Embedded-разработки и промышленной автоматики.
  • Возможны краткосрочные командировки в соответствии с производственной необходимостью.
hh.ru
группа компаний мечел

Ведущий программист

группа компаний мечелНа сервисе с: 26.06.26 17:08↑ Вакансия с автоподнятием
119k–119k ₽РоссияЧелябинскОфис
ПАО "Челябинский металлургический комбинат" приглашает для трудоустройства сoиcкaтeлeй на вакансию "Ведущий программист"

Обязанности
  • Программирование контроллеров Simatic,
  • поддержка работоспособности существующих серверов 2-го уровня
  • Программирование импортозамещенных контроллеров.
Требования
  • Знание языков программирования,
  • Навыки работы с базами данных,
  • Знание английского языка
  • Образование высшее или средне-специальное

Условия

  • График работы 5/2 (с 08:00 до 17:00)
  • Социальный пакет.
  • Возможность профессионального роста и развития.
  • Работа в стабильной и успешной компании.
  • Большая профсоюзная организация: скидки, льготы для сотрудников комбината.

HireSeeker собирает вакансии со всех площадок и присылает только релевантные. Бесплатно.