ГородМосква
Формат работыКомбинированный
КомандаModel Risk Management
Дата публикации20.09.2023
Нажимайте смело — отклик произойдет только на следующем шаге

Java разработчик в команду Model Risk Management

Наша команда создает новый продукт по управлению модельным риском, решающий задачи учета, мониторинга и валидации моделей Банка.
Простыми словами
Мы разрабатываем набор java-микросервисов, которые контейнеризируют ML-модели, оснащая их Flask (python) - оберткой.
Благодаря умному бекенду мы помним какую модель из какого коммита в какой кластер k8s (можно подключать несколько) задеплоили.
Системой уже пользуются несколько команд Банка в ПРОД и она продолжает развиваться.
Из крутых штук, которые
уже есть
- Spark on Kuber вычисления, когда по HTTP-запросу стартует несколько pySpark-executors, которые забирают данные из развернутого рядом Apache Ignite и выполняют распределенные параллельные вычисления.
Из грандиозных планов
- NoSQL хранилище метрик мониторинга ML-моделей с разграниченным доступом к нему команд для просмотра time-series данных о мониторинге моделей.
Наш стек:
Java 11 / 17, Spring Boot, Apache Ignite, pySpark, Kubernetes, GitLab

Для достижения успеха с твоей стороны ожидаем проактивности, нацеленности на результат, открытости и доверия к команде, готовности решать творческие, интересные и нестандартные задачи.
В этой роли тебе предстоит
  • Работать над развитием архитектуры приложения;
  • Выбирать подходы и способы реализации нового проекта, никакого legacy;
  • Использовать передовые подходы и технологии распределенной обработки данных.
Мы ожидаем
  • Опыт продуктовой разработки на Java от 2 лет;
  • Уверенное знание Java Core (Collections Framework, JDBC, Multithreading, I/O);
  • Опыт в построении REST-сервисов, с использованием фреймворков IoC/DI (Spring);
  • Опыт работы с реляционными базами данных и умение писать SQL запросы;
  • Опыт работы с Maven/Gradle;
  • Желателен опыт работы с Framework’ами параллельной обработки (pySpark, Apache Ignite);
  • Опыт написания unit и интеграционных тестов (jUnit, TestNG, Spock, Mockito);
  • Уверенное владение системой контроля версий (мы используем git).

    Дополнительные плюсы
  • Опыт работы с высоконагруженными приложениями;
  • Опыт разработки FrontEnd (React, Angular);
  • Умение оптимизировать запросы SQL;
  • Опыт работы в банковской сфере;
  • Опыт автоматизации, CI/CD (Jenkins, Bamboo, GitLab);
  • Опыт в ORM (JPA, Hibernate, …);
  • Опыт работы с механизмами контейнеризации и оркестрации (Docker, OpenShift, K8s, Kaniko …);
  • Опыт работы с Linux / Unix, умение писать Bash скрипты;
  • Опыт работы с языком Python;
  • Понимание процессов промышленной разработки ПО (Agile, Scrum, ...);
Мы предлагаем
  • Возможность работать из офиса или удаленно. Главное — договориться с командой;
  • Работу в структуре без строгой иерархии, где ваш руководитель — это играющий тренер;
  • Работу по принципам Agile;
  • Присоединиться к Java-комьюнити в банке, где коллеги обмениваются опытом и помогают друг другу;
  • Участие в регулярных митапах профессиональных сообществ;
  • Внутреннее и внешнее обучение за счет банка;
  • Участие в профессиональных конференциях в качестве спикера или слушателя. Например, мы регулярно ходим на HighLoad или JPoint;
  • Страховку со стоматологией, которая работает как в Москве, так и в регионах;
  • Тысячи скидок на покупки и услуги от наших партнеров — можно дешевле ходить в рестораны, летать на самолетах и жить в отелях;
  • Особые условия по нашим продуктам, например, ипотеке, банковским картам или накопительным счетам и вкладам;
  • Стандартные 28 дней отпуска, возможность брать дей-офф по личным причинам, оплачиваемый больничный.