О проекте:
Имеется реализованная и рабочая система, включающая в себя:
• Потоковую трансляцию видео на базе сервера Red5
• Функционал социального взаимодействия между пользователями, такого как сообщения, постоянные и временные медиа публикации с комментариями и оценками
• Обмен денежными средствами в виде внутренних токенов
• Функционал для администрации и менеджеров
• Интеграция с платежными шлюзами и блокчейн
Т.к. в текущем виде система представляет из себя монолитное приложение, написанное на базе самописного движка - сложно или невозможно покрыть все требования заказчика в плане скорости работы и отказоустойчивости.
Что нужно сделать:
• Разработать отдельные самодостаточные сервисы для каждой предметной области на основе имеющегося кода модулей и общей модели
• Разработать прикладные сервисы для поддержки мультиязычности, отслеживания мошеннических действий, контроля транзакций системы и т.п.
• Разработать или использовать существующие решения для мониторинга и поддержки системы
Требования:
• Знания и опыт работы на Java от 2 лет
• Знания и опыт работы с Spring (Boot, Core, MVC, JDBC, Security, Cloud)
• Знание средств разработки и сборки проектов (Git,Gradle,Maven)
• Знание основных алгоритмов, структур данных, шаблонов проектирования систем
• Опыт создания юнит-тестов(JUnit, Mockito)
• Наличие опыта работы с реляционными СУБД (PostgreSQL, MySql) или NoSQL-хранилищами (ElasticSearch, MongoDB);
• Опыт работы с брокерами сообщений (Kafka, RabbitMQ)
• Понимание концепций SOA, Message Queuing и Web Services (SOAP, REST)
Будет плюсом:
• Понимание принципов предметно ориентированного проектирования
• Понимание принципов проектирования отказоустойчивых распределенных систем
• Владение Linux, Docker, JMeter
Условия:
- Full time с 9-00 до 18-00. Час на обед.
- Удаленная работа/работа в офисе
- Сложные и интересные задачи
- Стабильная зарплата
- Возможно будет relocate в Таиланд
- Окончательная зп обсуждаема