Scala-разработчик

Требования

Бэкенд, Ведущий (Lead)ScalaJavaSQLOracle

Местоположение и тип занятости

МоскваПолный рабочий день

Компания

Крупнейшая цифровая платформа. Технобренд, объединяющий лучшие мировые практики и самый современный стек

Описание вакансии

Условия работы

Мы – Трайб "Управление модельного риска". Мы разрабатываем новую инновационную Платформу Sberbank.DS Ecosystem. Это линейка продуктов, решающая задачи Сбербанка по ускоренной разработке, валидации и мониторингу AI моделей. Стратегически планируется продвижение Платформы (коробочный продукт, облачные сервисы) на российский и международный рынок.


Развитие Платформы соответствует мировым трендам «демократизации AI», когда разработка модели превращается в задачу, доступную любому пользователю через средства визуального проектирования и использование библиотеки готовых компонентов. Мировой рынок систем подобного класса оценивается в 150+ млрд. долларов. Наши конкуренты – Google, Microsoft, Amazon, SAS, IBM, Huawei.

Важной частью экосистемы Sberbank.DS является проект Библиотека моделей (MMS). Целевая аудитория системы - все блоки банка. В будущем - продвижение вместе со всей экосистемой. Продукт управляет жизненным циклом моделей - от заявки на разработку до вывода в пром и сбор метрик в процессе эксплуатации.

В рамках продукта мы решаем задачи (основные, список не исчерпывающий):

  • работа пользователей с моделью в рамках workflow (заказчики, разработчики, валидаторы, девопсы, ...)
  • интеграция с модулями экосистемы
  • интеграция с системами исполнения моделей
  • интеграция с системами контроля версий
  • интеграция с базовыми системами банка.

В связи с ростом продукта, команды и количества задач мы ищем Scala разработчика для участия в развитии Библиотеки моделей. Тебе предстоит разрабатывать новый и поддерживать существующий функционал системы.

О команде:

  • нас 17 человек: две команды, Scala и Java, работающие над одним продуктом
  • аналитика, архитектура, тестирование, UX и фронтэнд - общие
  • у тебя в команде будет 3 Scala-разработчика с возможностью роста команды
  • работаем по Канбан, но со всеми мероприятиями Agile
  • продукт активно развивается и растет, вы можете поучаствовать в становлении продукта и помочь сделать его по-настоящему зрелым
  • вам предстоит влиться в команду и участвовать во внедрении новых фич продукта.

Задачи:

  • разработка нового функционала
  • рефакторинг существующего Scala и Java кода путем выноса в новые микросервисы
  • рефакторинг ранее написанного кода (уже написанные микросервисы)
  • code review
  • взаимодействие с тестировщиками и product-менеджерами: описание и оценка задач, обеспечение взаимодействия членов команды
  • написание Unit и интеграционных (авто) тестов
  • исправление ошибок
  • участие во всех командных мероприятиях (планирование, ретроспектива, stand-up, демо).

    Мы ждем от тебя:

    • главное - готовность брать на себя ответственность за продукт и задачи, понимание и желание работать в режиме, ориентированном на получение бизнес-результата, а не кодинга "из любви к искусству"
    • опыт работы по специальности от 3 лет
    • высшее техническое образование
    • опыт разработки на Scala не меньше 2-х лет
    • ориентация на результат и продуктовый подход к разработке
    • опыт работы с Akka или ZIO
    • хороший уровень знания SQL - написание запросов средней сложности (например, знать что такое оконные фунции), уметь читать план запроса
    • опыт работы с СУБД (Oracle, Postgres, MySQL)
    • умение дебажить код.

    Nice to have:

    • уметь работать с Linux
    • опыт с Docker, OpenShift (Kubernetes), Kafka
    • опыт разработки микросервисов
    • желание иногда писать код на java - часть микросервисов написана на ней, нужно, как минимум, уметь прочитать код
    • знать инфраструктуру сервисов платформы Hadoop (Oozie, Hive, HDFS, Spark) - очень опционально.

      Технологический стэк
      Back: Scala 2.13, Akka, Akka HTTP, Tapir, ZIO, Postgres, Kafka, Hadoop (HDFS, ...). Микросервисы + монолит, который сейчас мигрирует в микросервисы

      В части технологий мы не ортодоксальны: при необходимости легко адаптируемся под новые потребности

      Front: Typescript / React

      Devops: docker, docker-compose для локальной разработки, целевая система - OpenShift 4, Service mesh, настроенный pipeline (jenkins, ansible, groovy).

      Ближайшие планы по проекту:

      • вынос и рефакторинг кода из монолита в микросервисы (+ 10 микросервисов)
      • определение и поддержка технологических стандартов Scala-разработки
      • тесная интеграция и переиспользование сервисов экосистемы SDS
      • работа над HA - мониторинг, отказоустойчивость, метрики, трэйсинг.