Напиши текст вакансии для должности "Инженер-программист С/С++". Название компании: "Специальный Технологический Центр (ООО СТЦ)". Расположение: Санкт-Петербург. График работы: Гибкий график. Опыт работы: От 1 года до 3 лет. Ключевые навыки: 'C/C++', 'архитектура ПО, UML, SDL', 'многопоточность', 'Шаблоны проектирования', 'Git', 'Linux', 'Bash', 'boot', 'U-Boot', 'BusyBox', 'make, cmake', 'docker', 'gdb', 'SOLID', 'ООП', 'integration-test', 'gtest', 'unit-test'

Мы ищем квалифицированного специалиста в отдел, который разрабатывает ПО для высокоскоростных систем радиосвязи. Разработка ведется на базе расширяемой процессорной платформы Zynq SoC. Ищем инженера со знанием С/С++, который способен не только писать код, но и разрабатывать архитектуру приложения, а также реализовывать вспомогательное окружение. Отсутствие знаний (или опыта) в радио или Linux не является критичным. Главное - уметь изучать новое. Требования:  Знание C/C++. Например:  ○ понимание ключевых слов (static, const, volatile и др.) и особенностей их применения;○ понимание механизма приведения типов, последствий некорректного его использования и отличие реализации в C и C++;○ понимание последствий некорректного использования макросов;○ наследование;○ опыт использования стандартных библиотек С и C++;  Опыт разработки архитектуры ПО. Понимание:  ○ различий между связыванием на стадии компиляции и на стадии выполнения;○ различий между асинхронной и синхронной обработкой событий;○ особенностей использования разделяемых ресурсов;○ шаблонов проектирования;  Опыт разработки многопоточных приложений; Умение изучать новое и вести аргументированное обсуждение в устной и письменной формах.  Будет плюсом:  Использование при разработке средств визуализации (бумага+ручка, доска+маркер, UML, SDL и др.); Использование систем контроля версии и непрерывной интеграции; Применение i ntegration-тестов и unit-тестов; Опыт отладки в gdb; Опыт разработки драйверов или приложений под Linux; Опыт сборки загрузчика Linux или самого ядра Linux; Опыт разработки для микроконтроллеров; Знание основ аналоговой и цифровой схемотехники; Умение пользоваться паяльным оборудованием и измерительной техникой.  Обязанности:  Разработка встраиваемого ПО на C/C++17 для систем радиосвязи на ОС Linux; Разработка новых алгоритмов для систем радиосвязи (ППРЧ, самоорганизация, адаптивность), их моделирование и реализация их на целевой платформе; Автоматизация процессов разработки: тестирование, оценка покрытия кода, выпуск продукции, непрерывная интеграция, Docker; Модернизация текущей кодовой базы (в частности поддержка кросс-компиляции); Сборка для новой продукции загрузчика (U-Boot), ядра (Linux) и файловой системы; Код-ревью, обсуждение и планирование.  Предлагаем:  Оформление по ТК РФ, оплачиваемый отпуск 28 календарных дней; 13-ая зарплата, премии по итогам завершения работ, индексация заработной платы; Гибкий график, возможна периодическая удаленная работа; Современное оборудование рабочего места, работа с передовыми устройствами и технологиями; ДМС после испытательного срока.