Инженер-программист (Java)
Коротко
Designs and supports microservices for a high-load communications platform; participates in on-call duty to resolve production incidents. · Needs: 5+ years Java development; strong Spring/Spring Boot; SQL at complex query level with PostgreSQL; experience with high-load systems; Docker, Kubernetes
Описание от работодателя
о проекте
Мы развиваем платформу массовых коммуникаций для крупного телеком-оператора: через неё бизнес-клиенты запускают рассылки по каналам SMS, Viber, email и push.
Это микросервисная платформа из нескольких десятков сервисов: высокая нагрузка (миллионы сообщений в сутки), интеграции с системами оператора, аналитика и отчёты в кабинете клиента.
о задачах
участвовать в проектировании и поддержке сервисов платформы
формировать технический дизайн решений
участвовать в дневных дежурствах: разбирать инциденты, находить и устранять баги в продакшене
развивать и оптимизировать существующие сервисы под растущую нагрузку
о тебе
опыт разработки на Java от 5 лет
уверенное владение Spring/Spring Boot
SQL на уровне сложных запросов, знание PostgreSQL
опыт работы с высоконагруженными системами
понимание принципов и шаблонов проектирования, а также принципов построения микросервисной архитектуры
практический опыт с Gradle или другой системой сборки
навыки работы с инструментами контейнеризации и оркестрации: Docker, Kubernetes
опыт работы с OLAP-хранилищами (ClickHouse) и оптимизации запросов под них будет плюсом