Java разработчик
Описание
Мы строим внутреннюю систему ценообразования. Сейчас находимся на этапе сбора факторов, влияющих на определение итоговой стоимости продуктов, формируем правила и алгоритмы расчёта цен, продумываем интеграции с сервисами промо-акций, программ лояльности для пользователя. Ищем разработчика, который вместе с командой будет: прорабатывать и проектировать архитектуру системы ценообразования; реализовывать логику расчета стоимости продуктов компании на основе различных факторов (тарифы, промо-коды, программы лояльности и прочее); проектировать и реализовывать интеграции с продуктовыми системами, системой биллинга; возьмёт ответственность за качество и надёжность работы системы в проде. чем предстоит заниматься: активно вникать в предметную область, взаимодействовать с бизнесом, смежными командами; прорабатывать и реализовывать решения в распределенной архитектуре, используя как синхронное, так и асинхронное взаимодействие; участвовать в code-review и проработке технических задач; обеспечивать observability создаваемых решений что используем: Микросервисную архитектуру, Java(11/17)/Kotlin, Gradle, Spring Boot/Cloud, Restful API/gRPC, PostgreSQL/MongoDB/Redis, Kafka, Gitlab CI/CD, Docker/Kubernetes, Prometheus/Tempo/Sentry, loki/Grafana. чего мы ждем: отличное владение Java Core 11+ (разработка ведется с использованием Java 17); практический опыт работы с Spring Framework, Spring Boot; навыки проектирования многокомпонентных приложений со сложной бизнес-логикой; уверенное применения JUnit, Mockito или других фреймворков для юнит-тестирования; понимание принципов построения тестового покрытия; опыт разработки приложений в микросервисной архитектуре; знание SQL, навыки проектирования схем БД; опыт работы с PostgreSQL и NoSQL-хранилищами (в идеальном случае MongoDB); практический опыт взаимодействия с Kafka/RabbitMQ и принципов работы. будет плюсом: опыт разработки на Kotlin; знание запчастей spring cloud (gateway, config-server, sleuth и др); опыт работы с k8s на уровне пользователя; опыт организации работы в команде с использованием GitLab, Jira и проч.; опыт работы в продуктовых командах, с использованием agile-подходов; навыки по работе с системами просмотра логов и мониторинга(prometheus, grafana, loki, kibana) на уровне пользователя; общие представления о сетевых запросах и средствах балансировки.