Разработчик бэкенда на Kotlin
«Мой день» — это новый внутренний сервис Яндекса, который призван помогать сотрудникам управлять рабочим временем. «Мой день» недавно был запущен и прямо сейчас позволяет управлять встречами: собирает информацию, суммаризирует обсуждения и даёт возможность работать со встречами с помощью виртуального агента на базе LLM.
Мы продолжаем активно развивать сервис, у нас в ближайших планах:
- Собирать аналитику по проведённым встречам и помогать их приоритизировать
- Покрыть другие активности, из которых состоит рабочий день сотрудника
Наш стек технологий:
- Kotlin
- Spring Boot
- PostgreSQL, Redis, S3
- Temporal
Задачи и обязанности
Разработка и проектирование
Процесс разработки включает проектирование, реализацию, покрытие тестами и ревью кода. Особое внимание уделяем проектированию. Для крупных фич мы проходим процесс архитектурного дизайн-ревью, для небольших — обсуждаем решение на командных встречах. У каждой фичи есть ответственный разработчик из команды, который является основным драйвером процесса проектирования.
Рефакторинг и новые технические решения
В команде поощряется инициатива. Мы всегда готовы рассмотреть обоснованные предложения по рефакторингу кода или по внедрению новых технологий, которые повысят качество нашего сервиса или облегчат его разработку.
Развёртывание и поддержка
Целевые пользователи нашего сервиса — сотрудники компании, но это не означает, что мы можем жертвовать качеством продукта. Нам важно на выходе получать технические решения, которые будут держать нагрузку и отвечать самым высоким запросам пользователей. При этом за поддержку сервиса в первую очередь отвечает его команда, поэтому вы также будете включены в эту работу. У нас уже есть мониторинги, метрики и алерты, реализовано нагрузочное тестирование. Всё это нужно будет применять и улучшать, чтобы оперативно реагировать на проблемы и исправлять их.
Больше о бэкенде в Яндексе — в канале Yandex for Backend
Требования
- Занимались разработкой REST API с использованием Spring Boot
- Работали с инструментами для управления микросервисами и их оркестрации, например с Kubernetes, Docker
- Понимаете экосистему JVM и тесную интеграцию Kotlin с Java
- Умеете использовать Kotlin для разработки производительных и поддерживаемых приложений
- Можете проектировать структуру баз данных
- Способны оценивать эффективность алгоритмов и оптимизировать производительность системы в целом
Дополнительные требования
- Обеспечивали стабильность веб-сервисов
- Проактивны и хотите улучшать кодовую базу продукта
- Интересуетесь AI/LLM-продуктами и тем, как их встраивать в реальные пользовательские сценарии
- Используете агентов при разработке