YADRO
Senior C++ Developer L1
1 мес. назад
RussiaSeniorB2
cc++c++11c++14c++17c++20tcp/ipgitlab
Разработка программного обеспечения для базовой станции 4G LTE и 5G NR, включая полный стек протоколов 3GPP; участие в исследовании, прототипировании и оптимизации кода.
Обязанности
- Совместно с командой предстоит разработка решений от этапа исследования и прототипирования до вывода в коммерческое использование
- Разработка программного обеспечения для базовой станции 4G LTE и 5G NR, включая полный стек протоколов согласно стандартам 3GPP
- Изучение деталей и обновлений спецификаций 3GPP
- Оптимизация кода под целевую платформу, доработка требований к платформе
- Оценка и улучшение производительности реализованных алгоритмов
- Написание и обновление внутренней документации разрабатываемого продукта
- Анализ и исправление дефектов продукта
- Тестовое покрытие функционала продукта на различных уровнях
- Разработка дополнительного инструментария для анализа и тестирования продукта (симуляторы, генераторы, визуалайзеры и пр.)
- Анализ кода / участие в обсуждении кода (как своего, так и коллег)
Требования
- Знание С и C++11 / 14 / 17 / 20
- Необходимо быть знакомым с классическими алгоритмами и структурами данных
- Самостоятельно решение сложных комплексных задач в новой предметной области
- Умение работать с документацией (в первую очередь читать и понимать)
- Умение отлаживать собственный (и не только) код, а также тестировать его
- Опыт написания многопоточных и / или асинхронных программ
- Знание сетей, базирующихся на TCP / IP
- Опыт работы со встраиваемым программным обеспечением и системами реального времени
- Опыт работы с системами версионного контроля (Gitlab, BitBucket) и баг-трекинга (JIRA)
- Важно знать английский на уровне чтения и написания технической документации
Будет плюсом
- Oпыт оптимизации кода (как платформонезависимой, так и ориентированной на конкретное «железо»)
- Опыт написания и оптимизации DSP алгоритмов
- Oпыт в разработке высоконагруженных систем
- Oпыт в разработке систем с балансировкой нагрузки
- Oпыт в профилировании кода
- Опыт в применении различных методов / инструментов отладки / диагностирования ошибок
- Знание архитектуры процессора (любого)
- Знание скриптовых языков (Python, Shell, Lua, etc.)
- Знание цифровой обработки сигналов
- Опыт системного программирования
- Общие знания мобильных телекоммуникационных систем GSM / LTE / 5G
- Опыт работы / понимание Agile & Scrum
О компании
- YADRO