Учи.ру — крупнейшая российская образовательная онлайн-платформа с аудиторией более 20 млн пользователей. С нами дети изучают школьные предметы, готовятся к ВПР и ОГЭ, участвуют в олимпиадах и развивают гибкие навыки. Также это одноимённая группа компаний в составе VK.

Ищем опытного бэкенд-инженера в команду, занимающуюся разработкой и развитием сервисов для учеников и учителей. В зоне ответственности — поддержка и масштабирование ключевых компонентов личного кабинета, а также реализация новых продуктовых функциональностей.

Задачи

  • Проектировать, разрабатывать и поддерживать серверную логику продукта
  • Заниматься тестированием, отладкой и оптимизацией кода, написанием автоматизированных тестов
  • Разрабатывать новые продуктовые приложения
  • Проектировать архитектуру приложений
  • Проектировать системы микросервисов и проводить интеграцию межсервисного взаимодействия
  • Устранять ошибки, повышать отказоустойчивость и производительность существующих решений
  • Совместно с командой заниматься декомпозицией продуктовых фич на технические подзадачи, принимать участие в планировании и оценке задач
  • Способствовать тому, чтобы написанный командой код соответствовал практикам безопасной разработки
  • Проводить ревью кода

Требования

  • Опыт работы в высоконагруженных проектах на стеке Ruby, RoR, PostgreSQL, Redis, Docker, понимание плюсов/минусов и практики использования кэширования
  • Знание и применение RSpec
  • Уверенное владение фреймворком Rails 4–8
  • Умение писать оптимизированные запросы к БД для высоконагруженных систем
  • Навык работы со структурами данных, знание базовых алгоритмов и их сложности
  • Понимание специфики микросервисной архитектуры
  • Нацеленность на результат для бизнеса и собственный карьерный рост
  • Инициативность, мотивированность, любознательность — готовность исследовать неизвестные области и понимание целей команды
  • Ответственность, самостоятельность
  • Адекватная оценка собственных сил и сроков
  • Умение работать в команде, делиться, коммуницировать, договариваться внутри команды, а также взаимодействовать с коллегами из других команд
  • Гибкость и неконфликтность
  • Быстрая адаптация (=умение быстро включаться)

Будет плюсом

  • Опыт работы по фреймворку Scrum
  • Опыт в продуктовой разработке с быстро меняющимися контекстами
  • Elasticsearch, Redis, Kafka