Балансер (балансирующий нагрузку обратный прокси-сервер) терминирует протоколы прикладного уровня и перенаправляет запросы пользователей в сервисы. Подавляющее большинство сервисов Яндекса используют балансер для распределения трафика по дата-центрам и для защиты от DDoS-атак.
Балансер является точкой отказа сервиса, открытой для внешних угроз, поэтому к его надёжности, отказоустойчивости и скорости работы предъявляются исключительно высокие требования. Например, инсталляция балансера yandex.tld должна быть готова обработать миллионы запросов в секунду.
Технологии/инструменты
C++TCP/IPHTTPLinuxCI/CDgRPC
Задачи на проекте
Примеры конкретных задач, которые мы решаем:
Разработка алгоритма динамической балансировки (так, чтобы если бэкенду "плохо", то нагрузка на него снижалась автоматически).
Налаживание фаззинг-тестирования балансера.
Уменьшение потребления памяти неактивными HTTP/2-соединениями.
Поддержание протокола 0-RTT Handshake с клиентом.
Динамический подбор размера TLS-записи.
Обязанности
Поддержка новых протоколов (gRPC, HTTP/3).
Поддержка последних фичей TLS 1.3 (Certificate Compression — rfc8879).
Уменьшение задержек обработки запросов в балансере (внедрение многопоточного планировщика корутин, Stackless Coroutines).
Оптимизация потребления CPU и памяти.
Улучшение точности и информативности нагрузочного тестирования.
Оптимизация алгоритмов динамической балансировки и улучшение методик их тестирования.
Доработка мониторингов в проекте балансера.
Доработка процессов CI/CD в проекте балансера.
Ожидания
Хорошо знаете C++.
Хорошо знаете TCP/IP и HTTP/1.x.
Понимаете, как устроена сетевая подсистема ядра Linux или другой операционной системы.
Будет плюсом:
Имеете опыт разработки многопоточных и асинхронных приложений.
Имеете опыт разработки приложений, активно работающих с сетью.
Понимаете работу TLS, HTTP/2, gRPC, HTTP/3.
Имеете опыт разработки на Python.
Что предлагаем
Сильная команда, с которой можно расти.
Сложные задачи для сервисов с миллионами пользователей.
Возможность влиять на процесс и результат.
Зарплата на уровне рынка и выше.
Премии каждые полгода для всех, кто работает эффективно.
Расширенная программа ДМС: оплата 80% стоимости ДМС для супругов и детей.
Гибкий график работы.
Дарина Гренивецкая Recruiter
О компании Яндекс
Сфера
Продуктовая компания
Инвестиции
$100M+
Размер
1001+
Яндекс — одна из крупнейших IT-компаний в России. Компания развивает самую популярную в стране поисковую систему и создаёт сервисы, которые делают жизнь людей более комфортной и яркой. Сервисы Яндекс помогают в повседневных делах в офлайне и онлайне. С их помощью можно искать информацию в интернете, слушать музыку, выбирать товары и места, заказывать еду, перемещаться по городу и делать многое другое. Яндекс предлагает также продукты для рекламодателей и владельцев бизнеса.