Киреев Илья

Программист встраиваемых систем

10+ лет опыта разработки в embedded на языке C

Обо мне

Разрабатываю ПО встраиваемых систем с 2013 года. В настоящее время разрабатываю ПО для электронных устройств с микроконтроллерами (STM32, ESP32, в прошлом AVR) на языке С (в некоторых проектах С++), с применением современных библиотек и RTOS (например FreeRTOS, ChibiOS). Имею навыки работы со всей периферией микроконтроллеров, такой как: UART, CAN, SPI, I2C, USB, DMA, ADC, DAC и т.д., различными интерфейсами (например RS-232, RS-485, CAN) и протоколами (например Modbus, MQTT, и различными отраслевыми протоколами). В работе использую системы сборки (make, cmake), компиляторы (GCC), отладочные средства (gdb, openOCD), системы контроля версий (Git, SVN), контейнеры Docker, CI/CD (Drone). Обладаю умением читать электрические схемы, PCB (Altium Designer, P-CAD), работаю с приборами и инструментами (осциллограф, мультиметр, блоки питания, паяльник и т.п.). В целом увлекаюсь темами Embedded, IoT, Advanced C. Имею навыки развёртывания и администрирования удалённых серверов (ssh, nginx, docker). Использую Python для решения задач автоматизации и разработки утилит. В данный момент руковожу небольшой группой разработчиков: определение и выдача заданий, контроль выполнения, code review, merge RP. Есть опыт разработки для Android (Java).
  • C (advanced)
  • Микроконтроллеры
  • STM32
  • ESP32
  • Git / SVN
  • Python
  • FreeRTOS
  • ChibiOS
  • Linux
  • Docker

Опыт работы

Ведущий программист - Кит Инвест
Март 2021 - по настоящее время
  • Разработка программного обеспечения электронных устройств (архитектура ARM, язык C, STM32, ESP32)
  • Поддержка, сопровождение и модернизация существующего ПО
  • Руководство группой программистов (выдача задания, code review)
  • Разработка ПО (Python, C++, Django)

Технологии: FreeRTOS, ChibiOS, STM32, ESP32, make, GCC, CI, git, docker.

Инженер-программист - Электронные системы
Август 2013 - Февраль 2021
  • Разработка программного обеспечения электронных устройств (архитектура ARM, AVR, язык C/C++, AVR, STM32);
  • Поддержка, сопровождение и модернизация существующего ПО;
  • Разработка утилит и вспомогательного ПО для ПК (Python, C++);
  • Разработка электрических схем устройств
  • Написание технической документации по выпускаемым продуктам
Инженер-конструктор - Калужский турбинный завод
Май 2013 - Август 2013
  • Техническое руководство по электрической части в период монтажа, наладки и испытаний изделий;
  • Участие в испытаниях и отработке опытных и серийных изделий, а также узлов и элементов паротурбинных установок;
  • Разработка и корректировка рабочих схем электрооборудования стендов, разработка обезличенных нарядов, инструкций, отчётов и другой конструкторской документации;
  • Участие в сопровождении производства при изготовлении узлов и испытательных стендов;
  • Участие в работах по совершенствованию и модернизации изделий, их элементов и испытательных стендов;
  • Обеспечение контроля за эффективной эксплуатацией, техническим обслуживанием и своевременным ремонтом электрооборудования.
Инженер-конструктор - Брянское специальное конструкторское бюро
June 2017 - Nov 2019
  • Разработка, корректировка КД радиоэлектронной продукции;
  • Регулировка и ремонт изделий;
  • Макетирование опытных образцов;
  • Проведение механических и климатических испытаний (приемо-сдаточные, периодические испытания и др.);
  • Сопровождение производства изделий;
  • Ведущий инженер по выполнению ОКР (2 изделия)

Образование

2006 - 2011
Высшее образование
Брянский государственный технический университет

Диплом с отличием по специальности “Автоматизированный электропривод и автоматика промышленных установок и технологических комплексов”

Участие в научной жизни университета, публикация научных работ и учатие в олимпиадах

2016
Курсы повышения квалификации
Образовательная платформа stepik.org
Курс “Программирование на Python”
2016
Курсы повышения квалификации
Образовательная платформа stepik.org
Курс “Python: основы и применение”
2017
Курсы повышения квалификации
Образовательная платформа stepik.org
Курс “Алгоритмы: теория и практика. Методы”
2020
Курсы повышения квалификации
Образовательная платформа stepik.org
Курс “Django с нуля на практике”

Реализованные проекты

Эквайринговый терминал KitPosLite
ESP32 C FreeRTOS
Эквайринговый терминал KitPosLite
Эквайринговый терминал для сферы вендинга. Предназначен для считывания банковских карт или мобильных телефонов. После обработки данных карты запрос на проведение транзакции отправляется в зашифрованном виде в процессинговый центр, где и принимается решение о проведении операции по карте. Работа со считывателями карт st25, GSM-модем, LCD-экран, приём и обработка данных по протоколам. Серийное произодство - в работе более 5000 устройств.
Телеметрический контроллер KitBoxMaster
STM32 C ChibiOS
Телеметрический контроллер KitBoxMaster
Телеметрический контроллер для вендинговых аппаратов. Предназначен для считывания состояния торгового автомата, управления наличными и безналичными средствами оплаты. В процессе работы происходит сбор, обработка и отправка телеметрической информации на сервер мониторинга. Работа с MDB-шиной (UART), GSM-модем, LCD-экран, обработка данных по протоколам, работа с энергонезависимой памятью. Серийное произодство - в работе более 25000 устройств.
Отсчётное устройство ТРК Гранит-500
STM32 C++ FreeRTOS CAN RS-485
Отсчётное устройство ТРК Гранит-500
Блок управления топливораздаточной колонкой. Предназначен для управление процессом налива топлива на АЗС по команде управляющей системы. Модульная система, состоящая из одного или нескольких блоков, связанных по шине CAN. Работа с датчиками, LCD-экраном, связь с управляющей системой по RS-485, управление исполнительными устройствами. Выпущено около 1000 изделий.
Система управления ГТД
STM32 C FreeRTOS CAN
Система управления ГТД
Система управление газотурбинными двигателем. Предназначена для управления запуском газотурбинного двигателя, поддержания заданного качества управления параметрами работы двигателя. Система состоит из нескольких блоков связанных по шине CAN. Работа с большим числом различных датчиков, управление большим числом исполнительных механизмов, формирование телеметрии и отправка её на систему верхнего уровня. Изготовлена и введена в работу опытная партия.
Сервис для организаторов соревнований
Python Django PostgreSQL Docker
Сервис для организаторов соревнований
Сервис для автоматизации проведения спортивных соревнований (Django, Postgres). Развернуто на виртуальном сервере, интеграция с системой приёма платажей yoomoney.

Связаться со мной