Разработчик С++
Зарплата
Требования
Местоположение и тип занятости
Компания
Описание вакансии
Условия работы
Сейчас мы ищем опытных C++ разработчиков уровня middle и выше для разработки клиент-серверного приложения Playkey (https://welcome.playkey.net)
Playkey - технология, которая даёт возможность геймерам играть в самые требовательные игры с любого устройства, подключенного к Интернет. Чтобы начать играть, нужно зарегистрироваться на сайте, установить на свой девайс десктоп плеер, выбрать игру в каталоге и начать играть. Игра запускается в «облаке» - сети удаленных дата-центров Playkey.
В текущей команде проекта Playkey нас около 30 человек: технические специалисты (тимлиды, бэкенд, фронтенд, тестирование), и продуктовая команда (аналитики, продакт- и проджект- менеджеры, маркетинг).
Над бекендом сейчас работают 2 команды, всего 7 человек: клиентская часть (3 чел) и серверная часть (4 чел). На данный момент мы ищем усиление в обе команды.
Обязанности:
Основная задача по клиентской части, с которой почти всегда придётся работать - это оптимизация операций с видео-данными в реальном времени - захват, кодирование, передача, декодирование, отрисовка.
Задача серверной части: создание и развитие ПО для стриминга, управления виртуальными машинами, автоматизированного развёртывания сервиса на серверах партнёров.
На этих задачах основывается все остальное:
- Создание ПО для многопоточных проектов
- Поддержка и развитие текущих высоконагруженных систем, а также участие в разработке и построении архитектуры для новых
- Оптимизация скорости обращения к данным
- Отладка и тестирование разработанной функциональности
- Прототипирование и анализ алгоритмов
- Проведение внутрикомандного code-review, исправление ошибок
- Документирование разработанной функциональности
Наш стек (клиентская часть):
- C++ 14 (STL, Boost) под Windows (WinAPI, DirectX), macOS (Objective-C, OpenGL), Android (NDK, Java, OpenGL ES)
- Видеокодеки: H.264, H.265
- Библиотеки для работы с аудио и видео: ffmpeg
- Cистема сборки ПО: CMake
Наш стек (серверная часть):
- Языки программирования: C++ (STL, Boost), python, bash
- Операционные системы: Windows 10, CentOS 7
- Системы виртуализации: KVM, qemu, libvirt, virsh
- Cистема сборки ПО: CMake, MSBuild
- Система интеграции: Teamcity
Общее:
- Система управления версиями: Git
- Багтрекер:Jira
- Документация: Confluence
- Коммуникация: Slack
Бонусы
- Официальное трудоустройство (бессрочный трудовой договор) или сотрудничество в другом удобном формате: ИП, ГПХ, самозанятые
- Официальная заработная плата
- Удаленная работа (предпочтительнее) или работа в уютном офисе в г.Пермь (в районе Технопарка)
- График работы с 10:00 до 19:00 (либо гибкий - по согласованию)
- Работа в продуктовой команде
- Прозрачная организационная структура и понятные зоны ответственности: для внедрения нововведений не нужно проходить миллион согласований и 7 кругов ада
Приятные бонусы, помимо зарплаты:
- ДМС после прохождения испытательного срока
- Фитнес-клуб за счет компании круглый год для вас и вашей второй половины
- Командные игры в волейбол, футбол, баскетбол
- Активный сезонный отдых: горные лыжи, снегоходы, сплавы, стрельба из арбалета, вейкбординг - это что уже было. И точно придумаем что-то ещё
- Авто, вело и даже мото-парковка
- Ежемесячные поздравления именинников с подарками от компании
- Кросс-командное подведение итогов каждые две недели в расслабленной обстановке с горячей ароматной пиццей
- Легкие закуски и напитки, чтобы протянуть от завтрака до обеда
Еще один бонус: Вы сможете посещать самые разные Tech конференции за счет компании, пользоваться корпоративной библиотекой, принимать участие во внутренних митапах, позволяющих быть в курсе развития всего проекта, выступать со своими идеями, быть спикером на внутренних воркшопах с профессиональной экспертизой.
Дополнительные инструкции
Требования:
- Уровень Middle и выше
- Опыт коммерческой разработки на C/C++ не менее 3х лет
- Опыт разработки под Linux
- Опыт разработки под Windows
- Опыт разработки кроссплатформенных приложений (Windows, macOS, Android)
- Опыт работы с многопоточностью
- Знание протоколов передачи данных: TCP/IP (UDP и TCP в частности)
- Понимание принципов ООП, знание основных и архитектурных паттернов программирования
- Опыт работы в команде: проведение code-review, обмен опытом и знаниями, обучение новичков, участие в дейли-митингах и планировании
- Приветствуется опыт работы с виртуальными машинами и zfs