ОК — одна из крупнейших социальных сетей, это технологичная контентная и сервисная платформа: в социальной сети можно смотреть трансляции в качестве 4К, слушать актуальную музыку, покупать товары и услуги и осуществлять денежные переводы в 18 стран мира.
Мы в поиске опытного Java разработчика в команду "Монетизации".
Наша команда обслуживает десятки подключенных платежных систем, обрабатываем десятки миллионов платежных операций, а подарки — один из самых популярных сервисов ОК, которым пользуются десятки миллионов людей и это сотни миллионов дарений подарков в сутки.
Наши задачи в основном связаны с платежной системой ОК, с продажей подарков и покупкой платных сервисов решения для которых должны быть максимально эффективными, гибкими, расширяемыми. Необходимо разрабатывать новые и поддерживать существующие продуктовые механики, связанные с платежами и покупками внутри ОК.
С чем нужно будет работать:- 12.000 серверов и устройств хранения, на них работает50т докер контейнеров под управлением one-cloud (нашего собственного облака).
- NewSQL СУБД с распределенными транзакциями на основе форка Cassandra.
- Распределенный кластер с нагрузкой более 100.000 запросов в секунду.
- Stateful сервисы с использованием embedded cassandra.
- 6.000.000 пользователей онлайн в час пик.
- 350.000 web-запросов в секунду.
- 71.000.000 ежемесячная аудитория.
Задачи
- Развитие функциональности платёжных сервисов в OK.
- Повышение отказоустойчивости и быстродействия платёжной системы.
- Реализация с нуля продуктовых задач (от обсуждения идеи до запуска в продакшн и принятия решения по раскатке).
Требования
- Отличное знание Java и JVM.
- Знание стандартных алгоритмов, структур данных, шаблонов проектирования.
- Знание и опыт построения распределенных высоконагруженных систем.
- Приветствуется опыт работы с NoSQL базами данных.
- Способность писать простой, производительный и расширяемый код.
- Способность самостоятельно определять и соблюдать установленные сроки выполнения задач.
- Готовность построить доверительные отношения с командой: умение принимать критику и открыто высказывать свое мнение.
- Умение делиться знаниями и развивать компетенции команды.