Мы создаём крупнейший в России IPTV/OTT сервис Wink, с общим числом пользователей, превышающим 10 миллионов. Это мультимедийная платформа, которая позволяет смотреть более 300 ТВ-каналов, тысячи фильмов и сериалы от ведущих мировых студий, на любых устройствах одновременно: в приложениях на мобильных, на Smart TV и на сайте wink.ru. Reindexer - один из самых интересных, нужных и технически сложных продуктов нашей компании, который является сердцем интерактивного телевидения Wink. Reindexer это документарная in-memory база данных с полнотекстовым, векторным и гибридным поиском, транзакциями, гибкими update и join-запросами, поддержкой репликации и шардирования, встроенным UI-интерфейсом и многими другими фичами. Ядро СУБД реализовано на C++ и имеет байндинги для C++, Go, Java и Python, а также GRPC и REST-интерфейсы. Однако, при всей многогранности продукта, сплоченный коллектив и налаженные процессы позволяют легко погрузиться в проект. А ещё Reindexer это решение с открытым исходным кодом (наш Github-репозиторий), которое используют не только внутри компании, но и на внешних ресурсах. Перед командой стоят задачи: Разработка новых типов индексов: векторные индексы для sparse-векторов, квантированные варианты индексов для dense-векторов и т.д. Доработка и улучшение существующих индексов: полнотекстовых и гео-индексов Развитие механизмов горизонтального масштабирования: шардирования и cross-DC конфигураций репликации Постоянное развитие, оптимизация и улучшение поискового движка (система саджестов, dynamic routing, векторизация и т.д.) Обязанности: Разработка базы данных Reindexer Разработка нового и доработка существующего функционала Участие в разработке технических решений и архитектуры ПО Техническая поддержка кода программного продукта, исправление дефектов Участие в код-ревью Написание модульных и интеграционных тестов Требования: Опыт коммерческой разработки ПО на С++ от 3 лет Отличное знание и применение на практике C++11/C++14/С++17, знание STL, понимание принципов ООП Опыт разработки на C/C++ асинхронных и многопоточных сетевых приложений Знание стандартных контейнеров и алгоритмов на уровне понимания деталей типовых реализаций Опыт отладки и глубокой оптимизации приложений с использованием valgrind/google perftools Желание писать оптимальный и надежный код Опыт работы с системой контроля версий Git, системами code review Технический английский на уровне чтения технической документации Опыт работы с базами данных (SQL, noSQL). Желательно: Знание высокоуровневых языков программирования, таких как, Golang или Python Опыт разработки highload-приложений Опыт использования cmake Применение на практике фреймворков gtest и gbenchmark Знакомство с GitLab CI, Docker, Linux Опыт разработки баз данных. Условия: Возможность работать в офисе, дистанционно или гибридно Прозрачный и стабильный доход: размер заработной платы обсуждается по итогам собеседования + квартальная премия Гибкое начало рабочего дня, подстраивай его под свою жизнь и работу с командой «Кафетерий льгот» с возможностью выбора категорий (ДМС или компенсация медицинских услуг по чекам, компенсация затрат на спорт, на изучение иностранного языка, дополнительные выплаты к отпуску и дню рождения, онлайн-обучение и др.),компенсация мобильной связи Дружеская атмосфера и профессиональная команда, готовая делиться опытом Возможность раскрытия своего собственного потенциала (ты можешь проходить оплачиваемые компанией тренинги, обучения и посещать конференции)