Разработка, поддержка, оптимизация и рефакторинг активно изменяющегося ПО для высокопроизводительных и отказоустойчивых телекоммуникационных устройств для x86 64 архитектур (С/С++ код, скрипты под linux, патчи к ядру, драйвера сетевых карт и др.).
Что нужно знать:
C/С++ на уверенном уровне;
Принципы работы ОС Linux;
Знание межпроцессного взаимодействия, синхронизации, многопоточности и др. на многоядерных системах;
Быть знакомым с аппаратной архитектурой x86 64;
Опыт работы в POSIX окружении, с gсс, make, gdb, strace, perf, valgrind, командной строкой;
Знание алгоритмов и структур данных;
Опыт использования командных средств разработки (git, redmine, GitLab CI);
Технический английский, умение читать документацию и RFC;
Умение писать чистый и надежный код, понимание принципов: ООП, DRY, KISS, YAGNI, паттернов.
Будет плюсом, если ты:
Имеешь представление об ethernet-кадрах, mac-адресах, arp, маршрутизации;