Разработчик C/C++ (middle/senior/lead)
Требуемый опыт работы: более 6 лет
Полная занятость, полный день
ГлавСофт — российская компания, разрабатывающая продукты для удаленной работы. Наш продукт с открытым исходным кодом TightVNC известен всему миру, наши технологии используют множество всем известных глобальных мировых брендов.
Ищем C/C++ разработчиков уровней Middle, Senior, Lead Developer.
Разрабатывать нужно будет новое поколение системы, которая предоставляет сетевым клиентам доступ к удаленному рабочему столу. Базовые компоненты системы уже в наличии, нужно развивать их функциональность, дорабатывать архитектуру, проектировать новую версию сетевого протокола.
Базовые компоненты системы являются кросc-платформенными (Windows, Linux, macOS). Приоритетной для разработки является версия под Windows, на очереди версия для Linux, поэтому требуется понимание особенностей обеих операционных систем.
Задачи
- Разбиение системы на модули. Проектирование API отдельных модулей. Выделение отдельных модулей в самостоятельные продукты как SDK.
- Проектирование и реализация расширений протокола (RFB) для расширения функциональности системы.
- Участие в проектировании и реализации функциональности безопасного (шифрованного) сетевого соединения серверного и клиентского компонентов.
Базовые требования
- Знание и понимание языков C и С++.
- Понимание многопоточного и сетевого программирования, особенностей синхронного и асинхронного ввода-вывода.
- Опыт работы с Windows API.
- Очень важна самостоятельность, умение находить нужную информацию, умение итерационно улучшать чужой код (метод «тут нужно все выкинуть и переписать с нуля» в большинстве случаев неприемлем).
- Понимание ООП, знание базовых структур и алгоритмов.
- Понимание основ криптографии и безопасности сетевых приложений.
- Знание английского языка и умение выражать свои мысли на письменном английском (на русском, кстати, тоже).
Дополнительные знания и навыки, которые будут плюсом (в т. ч. к зарплате :)
- Знание C# и .NET.
- Опыт кросплатформенной разработки, понимание *nix-систем с точки зрения разработчика.
- Понимание важности работы над архитектурой, способность проектировать и описывать сложные системы до начала кодинга.
- «Продуктовое мышление», то есть возможность выйти за рамки программирования и думать о потребностях пользователей и других программистов.
- Умение работать в команде, открыто общаться и стремиться находить лучшие решения.
Что мы можем предложить
Работа в офисе, 40 часов продуктивной работы в неделю, об остальном сможем договориться!
- Официальное трудоустройство и белая зарплата (+ индексация).
- У нас минимум бюрократии, минимум авралов, мы разрабатываем собственные продукты и не работаем для внешних заказчиков (т.е. не возникает проблем со сроками и постоянно меняющимися требованиями).
- Вам будет предоставлена вся необходимая техника, софт и актуальная техническая литература за счет компании. Вообще, во всем, что будет способствовать улучшению условий труда, повышению производительности и уровня квалификации, будем стараться идти навстречу.
- Офис в центре города с хорошей транспортной доступностью.
- Максимум возможностей для профессионального и карьерного роста.
- И, наконец, у нас много интересных и сложных задач! Так что, надеемся, работать будет интересно. :)
Ключевые навыки
Вакансия опубликована 28 июня 2022 в Томске