На рынке ИТ мы работаем вот уже 16 лет. В штат компании входит более 300 сотрудников. Центральный офис компании расположен в Москве, собственное производство и дополнительный офис - в городе Орел.
Мы расширяем команду направения RUBETEK-TELECOM.
Senior C++ & DSP Engineer (PHY/MAC, Спутниковая и наземная связь)
Чем предстоит заниматься
Вы будете разрабатывать алгоритмы цифровой связи и программные компоненты PHY/MAC для современных спутниковых и широкополосных радиосистем — от математической модели и прототипа до интеграции с аппаратной платформой и серийного изделия.
Позиция предполагает высокий уровень самостоятельности и непосредственное участие в создании архитектуры и ключевых алгоритмов современных спутниковых и наземных цифровых модемов.
Мы ищем инженера, который умеет не только реализовывать отдельные алгоритмы, но и понимать работу цифрового модема как единой системы.
Основные задачи
- разработка DSP-алгоритмов физического уровня цифровых систем связи;
- разработка математических моделей и моделирование алгоритмов в MATLAB / Simulink;
- реализация и оптимизация алгоритмов на современном C++;
- разработка передающего и приёмного трактов цифрового модема;
- разработка алгоритмов временной и частотной синхронизации;
- разработка алгоритмов оценки канала;
- разработка алгоритмов модуляции и демодуляции;
- разработка и интеграция алгоритмов канального кодирования и декодирования;
- разработка PHY/MAC-подсистем спутниковых и наземных модемов;
- разработка алгоритмов распределения временных и частотных радиоресурсов;
- разработка механизмов TDMA / MF-TDMA и управления радиоканалом;
- интеграция программных компонентов с FPGA, ARM/SoC, RF-трактом и EmbeddedLinux;
- участие в разработке архитектуры модема и отдельных алгоритмических подсистем;
- проведение лабораторных испытаний, анализ сигналов и результатов измерений;
- поиск и устранение проблем на стыке Software, FPGA и RF;
- сопровождение разработки от моделирования и прототипирования до опытного и серийного изделия;
- проведение code review;
- техническое наставничество и участие в развитии инженерной команды.
Мы ожидаем
Обязательные требования
- высшее техническое образование: радиотехника, телекоммуникации, вычислительная техника, прикладная математика или смежное направление;
- опыт промышленной разработки на C++ от 5 лет;
- уверенное владение C++17 / C++20;
- практический опыт разработки DSP-алгоритмов;
- уверенная работа с MATLAB;
- хорошее понимание теории цифровой обработки сигналов и цифровой связи;
- понимание принципов построения передающего и приёмного трактов цифрового модема;
- понимание принципов синхронизации, модуляции, демодуляции и канального кодирования;
- опыт разработки под Linux;
- опыт многопоточного и высокопроизводительного программирования;
- понимание архитектуры современных цифровых радиосистем и взаимодействия PHY/MAC;
- опыт профилирования, поиска bottleneck'ов и оптимизации производительности;
- опыт работы с Git и современным процессом командной разработки.
Будет большим плюсом
Практический опыт в одном или нескольких направлениях:
- спутниковые системы связи;
- VSAT;
- DVB-S2 / DVB-S2X;
- DVB-RCS2;
- SDR;
- GNU Radio;
- FPGA и FPGA-based DSP;
- PHY / MAC;
- TDMA / MF-TDMA;
- OFDM / SC-FDMA;
- QPSK / QAM / APSK;
- LDPC и другие схемы FEC;
- FFT / IFFT;
- временная и частотная синхронизация;
- carrier recovery;
- symbol timing recovery;
- channel estimation;
- equalization;
- AGC;
- формирование и обработка цифровых сигналов;
- SIMD-оптимизация: ARM NEON / x86 AVX;
- Embedded Linux;
- ARM / SoC-платформы;
- высокоскоростная потоковая обработка данных;
- RF-тракты;
- RFIC и компоненты Analog Devices;
- DSP-процессоры;
- интеграция C++ software с FPGA через DMA, shared memory, high-speed interfaces.
Технологический стек
Языки и технологии
- C++17 / C++20
- MATLAB / Simulink
- Linux
- Git
- CMake
Инструменты
- GCC / Clang
- GDB
- Google Test
- GitLab CI
- Docker
- Python
- Bash
Важно уметь:
- самостоятельно анализировать технические и системные требования;
- переводить математические модели DSP в эффективную программную реализацию;
- проектировать архитектуру сложных алгоритмических подсистем;
- принимать и аргументировать инженерные решения;
- учитывать ограничения вычислительной платформы и аппаратной части;
- работать с real-time и near-real-time обработкой потоковых данных;
- анализировать поведение системы на уровне сигналов и алгоритмов;
- локализовывать проблемы на границах DSP, Software, FPGA и RF;
- доводить разработку от математической модели до работающего аппаратно-программного изделия;
- работать на стыке математики, цифровой обработки сигналов, системного программирования и аппаратуры;
- проводить качественный code review;
- делиться инженерными знаниями и участвовать в развитии команды.
Мы предлагаем:
- Оформление по ТК РФ;
- График работы 5/2 с 10.00 до 19.00 с возможностью небольших корректировок в пределах часа, что обеспечивает гибкость и удобство;
- Стабильную, конкурентную заработную плату;
- Вы будете заниматься интересной работой в инновационной компании, где создают передовые решения и технологии;
- Вас ожидает позитивная и амбициозная команда профессионалов, с которыми вы будете сотрудничать и расти;
- У нас развитая корпоративная культура, которая создает благоприятную рабочую атмосферу.