📍 Москва (м. Парк культуры)Санкт-Петербург (м. Площадь Ленина)Нижний НовгородЕкатеринбургНовосибирскСимферопольОфис или гибрид
Специализация
Java / Scala
Yandex.Cloud — облачная платформа, которая позволяет быстро и просто получать доступ к технологиям обработки и хранения данных.
Технологии/инструменты
JavagRPCNetty
- Бекенды мы пишем на Java (gRPC, Netty, Multithreading, Nio), прикладные задачи решаем на Go (агенты для рабочих мест, e2e-tests, command line, Terraform plugins).
- Помимо этого у нас хорошо развита автоматизация настройки инфраструктуры. У сервисов настроен мониторинг, тесты на разных уровнях и другая автоматика, которая позволяет переживать отключения и другие проблемы в датацентрах без человеческого вмешательства. Релизы мы катаем в автоматическом режиме — раз в неделю или даже каждый день.
О проектах
Первый проект это новый сервис для создания удаленных рабочих мест — Yandex Cloud Desktops.
Что делаем: Запускаем рабочие места на Linux / Windows окружении и перекладываем байты по RDP протоколу. К сервису есть огромный интерес наших пользователей (много заявок на preview). Интересные задачи, которые вам предстоят:
- Развить поддержку RDP-протокола и в том числе сделать систему, обрабатывающую большой поток данных от/до пользователя.
- Реализация управляющей логики по управлению рабочими местами.
- Система сборки пользовательских образов для рабочих мест.
- Поддержка работы с данными и сессиями пользователя на рабочем месте (опенсорс агент).
- E2e и perfomance тестирование сервиса.
- Автоматизация быстрого развертывания сервиса через код (Java, IaC, Terraform).
Второй проект это нагруженный сервис для работы с docker images — Yandex Cloud Container Registry.
Что делаем: Это важный инфраструктурный компонент для наших коллег и других пользователей Яндекс.Облака. Интересные задачи, с которыми надо будет встретиться лицом к лицу:
- Подготовка сервиса к увеличению нагрузки (для начала, x10 RPS).
- Автоматизация быстрого развертывания сервиса через код (Java, IaC, Terraform).
- Синхронизация Docker images между пользовательскими репозиториями.
- Развитие сканера уязвимостей для Docker images.
- И другие фичи, важные для наших пользователей (например, иммутабельные теги, аудитные логи).
Команда и подходы к разработке
- Мы, в первую очередь, команда разработчиков и поэтому активно автоматизируем наши процессы. Наша цель сделать так, чтобы разработчик в первую очередь писал код, а не отвлекался на рутину.
- Каждый член команды работает в своем потоке задач, но при этом экспертиза шарится между двумя-тремя людьми, которые пересекаются по задачам. За счет этого ревью кода — это не просто проверка на форматирование (которую можно и автоматизировать), а вдумчивый анализ логики и поиск проблемных мест.
- У нас распределенная команда, но мы периодически собираемся в офисе (1-2 раза в квартал) увидеть друг друга вживую. Иногда едем всей командой на оффлайн конференцию. При этом часть людей работает из офисов, часть — из дома. Раз в день мы собираемся на синк, а раз в неделю обсуждаем и корректируем наши планы.
Условия
- Гибридный график работы в Симферополе, Москве, Санкт-Петербурге, Нижнем Новгороде, Екатеринбурге, Новосибирске. Также есть возможность работать в гибридном графике в наших офисах в Беларуси (Минск), Казахстане (Алматы), Армении (Ереван), Сербии (Белград).
Полезные ссылки
- Посмотреть доклад о сервисе можно тут: ссылка.
Дарья Фролова Talent Associate