Олег С. C++ разработчик, Senior

ID 26364
ОС
Олег С.
Мужчина, 46 лет
Россия, Санкт-Петербург, UTC+3
Ставка
2 142,86 Р/час
НДС не облагается
Специалист доступен с 6 июня 2025 г.

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

Подробнее
О специалисте
Специализация
C++ разработчик
Грейд
Senior
Навыки
C++
UML
tcpdump
Subversion
GitLab
TCP
Clean Architecture
Perl
rs232
rs485
can
JSON
XML
Bash
Git
VMware
Bitbucket
GitHub
Wireshark
QT
Make
GDB
gtest
STL
Boost
SNMP
Windows Api
CMake
WinDBG
ZCM
Stm32
Doxygen
MPLAB Harmony
QEMU
CppUnit
Confluence
SQL
Docker
Agile
Python
C
Markdown
YAML
UDP
Qt QML
VirtualBox
Jira
Ethernet
PostgreSQL
ARINC
Microsoft Driver Kit
Bamboo
can-utils
stm32cubemx
CI/CD
Microservice Architecture
posix
I2C
spi
Real-Time Linux Development
TDD
UART/USART
CUnit
RMII
RS422
1-Wire
USB
WDM/WDF
Windows Performance Toolkit
Digital Signal Processing
Finite-State Machines
GUI Development
Linux System Development
Embedded Software Development
Windows Driver Development
Windows API Hooking
freertos
SOLID
GoF
OOP
MVC
MVP
MVVM
Client-Server Architecture
Oscilloscope
Digital Logic Analyzer
zcm-tools
Visual Studio Code
Qt Creator
Qt Designer
Eclipse IDE
Microsoft Visual Studio IDE
Clion
Draw.io
STM32CubeIDE
Microchip MPLAB X
DevOps-практики
Microchip PIC32
Отрасли
Hardware
Logistics & Transport
RnD
Знание языков
Английский — B2
Главное о специалисте
Опытный инженер-программист на C и C++ с более чем 15-летним опытом разработки систем реального времени, встроенных решений и кроссплатформенных графических приложений. Профессионально занимаюсь разработкой программного обеспечения для высокоскоростных пассажирских поездов, аэрокосмической отрасли и морских судов. Обладаю глубокими знаниями в области системного программирования для Linux, FreeRTOS и Windows, сетевых протоколов, работы с микроконтроллерами и встраиваемыми системами, разработке GUI приложений на основе Qt. Ориентирован на результат, внимателен к деталям и всегда стремлюсь к написанию качественного, надёжного и эффективного кода.
Проекты   (16 лет 9 месяцев)
Бортовой модуль комплексирования межмодульной информации и связи с удалённым сервером по радиоканалу для высокоскоростных пассажирских поездов.
Роль
Разработчик на С++
Обязанности
Модуль отвечает за обмен данными между бортовыми системами по протоколам Ethernet и CAN, сбор и передачу телеметрии и диагностических данных на серверы в диспетчерской. Задачи - Проектирование, реализация и тестирование микросервисов для бортового модуля с использованием C++ и микросервисной архитектуры. - Написание функциональных тестов. - Исполнение DevOps функций, связанных с развертыванием микросервисов на целевой Linux-платформе. - Сопровождение при эксплуатации. - Реализация взаимодействия между микросервисами через протокол ZCM. - Создание сервисов-шлюзов для обмена данными по протоколам Ethernet и CAN. - Разработка логики обработки телеметрии и диагностических данных. - Использование автоматного подхода к описанию поведения компонентов: описание логики через вложенные конечные автоматы. - Генерация кода автоматов с помощью Python-скриптов на основе графических схем. - Реализация командного интерфейса для дистанционного управления модулем и передачи данных на серверы в диспетчерской. - Оптимизация производительности системы для работы в условиях реального времени. - Разработка и тестирование компонентов для обработки ошибок и отказов в процессе передачи данных. - Интеграция с другими системами по протоколам ZCM, CAN и Ethernet. Команда Руководитель проекта, Архитектор, Группа Разработчиков на С++, Тестировщик, Группа Инженеров-Схемотехников, DevOps-Инженер
Достижения
- Разработан и внедрён масштабируемый набор микросервисов для бортового модуля, обеспечивающий устойчивое взаимодействие с другими системами по различным протоколам. - Реализовано межсервисное взаимодействие на основе протокола ZCM для обеспечения эффективного обмена данными. - Оптимизированы алгоритмы обработки телеметрии и передачи данных, что позволило повысить производительность системы в условиях ограниченной пропускной способности канала. - Разработана система мониторинга состояния модуля с возможностью удалённого управления и передачи диагностических данных в режиме реального времени. - Обеспечен обмен данными с другими встроенными модулями и удалёнными серверами по протоколам Ethernet и CAN. - Система успешно интегрирована с серверной инфраструктурой, обеспечив бесперебойный обмен данными с диспетчерскими системами.
Стек специалиста на проекте
C++, UML, tcpdump, Bamboo, GitLab, TCP, Clean Architecture, Perl, SOLID, can, JSON, XML, Bash, Git, Bitbucket, Wireshark, GDB, gtest, STL, GoF, CMake, Clion, Doxygen, Confluence, Docker, Agile, Python, Markdown, YAML, UDP, Draw.io, OOP, VirtualBox, Jira, Ethernet, TDD, DevOps-практики, CI/CD, ZCM, Microservice Architecture, posix, Real-Time Linux Development, Finite-State Machines, Linux System Development, Client-Server Architecture, zcm-tools, Visual Studio Code, can-utils, Embedded Software Development
Отрасль проекта
Logistics & Transport
Период работы
Апрель 2022 - Апрель 2025  (3 года 1 месяц)
Бортовой вычислительный модуль для высокоскоростных пассажирских поездов, предназначенный для связи с удалённым сервером по радиоканалу.
Роль
Разработчик на C++
Обязанности
Модуль занимается регистрацией поезда на сервере, передачей диагностики объекта, получением и обновлением данных о движении поезда. В процессе работы модуль может потерять связь с сервером, поэтому реализованы механизмы восстановления связи и обновления данных. Задачи - Разработка программного обеспечения для вычислительного модуля для взаимодействия с сервером по радиоканалу. - Реализация взаимодействия с сервером и иным бортовым оборудованием с использованием протоколов Ethernet, CAN и RS-232 для обмена телеметрией и диагностическими данными. - Использование автоматного подхода к описанию поведения компонентов: описание логики через вложенные конечные автоматы. - Генерация кода автоматов с помощью Python-скриптов на основе графических схем. - Разработка механизма регистрации поезда на сервере и передачи информации о планируемом движении. - Интеграция с системой контроля движения поезда. - Реализация системы восстановления связи с сервером и обновления данных при потере связи. - Создание механизма обработки ошибок и восстановления работы при сбоях в системе. - Оптимизация работы системы для обработки данных в реальном времени, минимизация задержек в передаче данных. Команда Руководитель проекта, Архитектор, Группа Разработчиков на С++, Тестировщик, Группа Инженеров-Схемотехников, DevOps-Инженер
Достижения
- Реализована система регистрации поезда на сервере с передачей диагностической информации, что позволило повысить точность и надёжность мониторинга. - Разработан устойчивый механизм восстановления связи с сервером, что значительно улучшило надёжность системы в случае потери связи. - Оптимизирована обработка телеметрии, что повысило скорость передачи данных и снизило нагрузку на канал связи. - Модуль успешно интегрирован с серверной частью, обеспечена синхронизация данных с другими бортовыми системами.
Стек специалиста на проекте
C++, UML, tcpdump, Bamboo, GitLab, TCP, Clean Architecture, Perl, SOLID, can, JSON, XML, Bash, Git, Bitbucket, Wireshark, GDB, gtest, STL, GoF, CMake, Clion, Doxygen, Confluence, Docker, Agile, Python, Markdown, YAML, UDP, Draw.io, OOP, VirtualBox, Jira, Ethernet, TDD, DevOps-практики, CI/CD, ZCM, Microservice Architecture, posix, Real-Time Linux Development, Finite-State Machines, Linux System Development, Client-Server Architecture, zcm-tools, Visual Studio Code, can-utils, Embedded Software Development
Отрасль проекта
Logistics & Transport
Период работы
Март 2023 - Ноябрь 2024  (1 год 9 месяцев)
Бортовой модуль дистанционного управления электропитанием для высокоскоростных пассажирских поездов.
Роль
Программист встроенных систем на языке C и разработчик системного уровня на C++
Обязанности
Устройство обеспечивает дистанционное включение и выключение электропитания поезда, связь с удалённым оператором по радиоканалу, взаимодействие с бортовой аппаратурой по Ethernet и CAN, а также сбор и передачу диагностических данных, включая сигналы от системы пожарной сигнализации при выключенном основном питании. Задачи - Разработка прошивок микроконтроллеров STM32 с использованием STM32CubeMX, FreeRTOS и HAL- библиотек. - Реализация обмена по интерфейсам UART, SPI, I2C, RMII, 1-Wire и протоколу Ethernet. - Управление питанием модуля, зарядкой ИБП, контролем состояния реле и линий электропитания. - Сбор диагностических данных, включая температуру и уровень заряда, их фильтрация и передача по радиоканалу. - Использование автоматного подхода к описанию поведения компонентов: описание логики через вложенные конечные автоматы. - Генерация кода автоматов с помощью Python-скриптов на основе графических схем. - Модульное тестирование прошивок с использованием Google C++ Testing Framework и отладка с помощью UART-логирования. - Отладка на аппаратных стендах с использованием осциллографа, логического анализатора и UDP снифферов. Команда Руководитель проекта, Архитектор, Разработчик (встроенных систем на языке C и системного уровня на C++), Группа Инженеров-Схемотехников, DevOps-Инженер
Достижения
- Реализован стабильный двунаправленный обмен между двумя микроконтроллерами STM32, обеспечивающий слаженную работу подсистем в условиях непредсказуемой среды. - Обеспечена надёжная передача критически важных данных по радиоканалу даже при отсутствии основного электропитания поезда. - Встроен механизм контроля состояния источника бесперебойного питания (температура, уровень заряда, напряжение). - Внедрены алгоритмы автоматической зарядки ИБП на основе анализа условий окружающей среды и нагрузки. - Повышена безопасность эксплуатации за счёт устойчивого взаимодействия с системой пожарной сигнализации. - Успешно протестирован и внедрен в составе серийной бортовой аппаратуры для поездов.
Стек специалиста на проекте
C++, UML, tcpdump, Bamboo, Perl, freertos, SOLID, XML, Bash, Git, Bitbucket, Wireshark, GDB, gtest, STL, GoF, CMake, Stm32, Doxygen, Confluence, Docker, Agile, Python, C, Markdown, YAML, UDP, Draw.io, Jira, Ethernet, TDD, DevOps-практики, CI/CD, ZCM, Microservice Architecture, I2C, spi, 1-Wire, Digital Signal Processing, Finite-State Machines, Linux System Development, Client-Server Architecture, Oscilloscope, Digital Logic Analyzer, zcm-tools, Visual Studio Code, STM32CubeIDE, stm32cubemx, UART/USART, RMII, Embedded Software Development
Отрасль проекта
Logistics & Transport
Период работы
Апрель 2022 - Сентябрь 2023  (1 год 6 месяцев)
Формат работы
Тип занятости
Фулл-тайм, Парт-тайм (4 ч/день)
Формат работы
Удаленно
Командировки
Не готов
Релокация
За границу
Готов работать на зарубежных проектах
Да
Дипломы и сертификаты
Курс «Системное программирование для LINUX», Санкт-Петербургский Государственный Электротехнический Университет («ЛЭТИ») Институт Непрерывного Образования (ИНО) 2019 г.
Курс «Прикладное программирование на С++ с использованием Qt», Санкт-Петербургский Государственный Политехнический Университет («Политех») Институт Дополнительного Образования (ИДО) 2020 г.
Образование
Высшее
Учебное заведение
Санкт-Петербургский Государственный Электротехнический Университет («ЛЭТИ»), Факультет компьютерных технологий и информатики
Специальность
230104 Системы автоматизированного проектирования
Завершение учебы
2014 г.

Похожие специалисты

Blockchain • FinTech & Banking • Information Security • IoT • Telecom • VR/AR
АА
Алексей А.
Батуми
C++ разработчик
Senior
4 155,84 Р/час
AI
AWS
Azure
Bash
Boost
C
C++
Clion
CMake
CppUnit
+53

Технические навыки: C++, C, STL, BOOST, POSIX, Multithreading, Bash, GCC, GDB, Valgrind, Perf, Cppcheck, Doxygen, Gtest, CppUnit, Python, CMake, Make, Git, QT, JSON, REST, CLion, macOS, Linux, gRPC, RabbitMQ, Kafka, Docker, Azure, AI, HFT, AWS, Kubernetes, network programming. Профессиональные навыки и умения: Опытный инженер с более чем 10-летним опытом в разработке программного обеспечения. Опытен в создании высоконагруженных бэкендов с нуля, соблюдая лучшие практики с использованием таких технологий, как C++, C, Python, многопоточность и других. Быстро адаптируюсь к новым инструментам и технологиям. Обладаю навыками работы с различными продуктами и платформами, демонстрирую аналитическое мышление и оперативный подход к решению проблем. Внимателен к деталям, проактивен, самомотивирован и отлично коммуницирую.

Подробнее
AI & Robotics • E-commerce & Retail • LifeStyle • Logistics & Transport
МЛ
Марина Л.
Минск
C++ разработчик
Senior
4 545,45 Р/час
C/C++
Azure
Boost
CMake
CSV
Enterprise Architect
GCC
GDB
Google Test
iCAP
+58

Инженер-программист с 15+ годами общего опыта. У меня есть обширный опыт разработки программного обеспечения для различных реальных симуляторов на различных операционных системах с использованием языка программирования C/C++. Также у меня обширный опыт разработки соответствующей документации в области и технической документации.. Мой опыт включает работу с математическими алгоритмами, такими как решение систем квадратных уравнений, преобразование координат из одной системы в другую, работа с матрицами, векторами, геометрическими и логическими задачами. Языки программирования C/C++ Технологии MSVС GCC MinGW g++ VCL GDB WinDBG Std STL Boost Qt CMake VMWare Enterprise Architect Rational Rose UDP, TCP/IP, XML ICAO, ISO ASTERIX MathCAD Google Test PostgreSQL pgAdmin SAMBA CSV, JSON Azure Интегрированные среды разработки Microsoft Visual Studio, STM32Cube IDE, Visual Studio Code, Embarcadero RAD Studio, Qt Creator, KDevelop Системы контроля версий Git, Perforce, SVN, MS Visual Source Safe Операционные системы MS Windows, Linux Методологии Agile, Scrum, Waterfall Инструменты управления проектами Jira, Confluence, Trello, Clockify, Outlook

Подробнее

Недавно просмотренные специалисты