О проекте:
Команда алгоритмической торговли крупнейшего банка ищет ведущего разработчика для участия в развитии собственной высокоскоростной торговой платформы.
Алгоритмическая платформа — это высокоскоростной робот, осуществляющий торговлю на валютном, срочном и фондовом рынках. Платформа входит в число заметных участников российского электронного рынка и используется банком не только для алгоритмического исполнение клиентских заявок, но и для совершения собственных торговых операций.
Архитектура платформы включает собственные модули ценообразования и хеджирования, в том числе с использованием алгоритмов машинного обучения. Все ключевые компоненты — от обработки маркет-данных до логики исполнения — разрабатываются внутри банка, в тесной связке с трейдерами, риск-менеджерами и количественными аналитиками.
Вместе с нами тебе предстоит:
-
Работать в маленькой, высокоэффективной, кросс-функциональной команде, без жесткого разделения между бизнесом и ИТ.
-
Отвечать за разработку большой системы алгоритмической электронной торговли.
-
Обеспечивать полный цикл разработки – от анализа требований и проектирования до внедрения.
-
Разрабатывать компоненты системы с низкой задержкой подключения и бизнес-логики.
-
Отвечать за тестирование и оптимизацию производительности своего кода.
-
Выявлять узкие места и ошибки, разрабатывать и внедрять решения этих проблем.
-
Опыт промышленной командной разработки (от 5 лет) проектов на Java (11+).
-
Профильное образование из ТОП 20 технологических ВУЗов.
-
Экспертные знания и опыт в области построения и реализации высокоскоростных систем на Java, работающих с минимальными задержками.
-
Знания Java Memory Model, шаблонов многопоточного проектирования.
-
Опыт реализации алгоритмов без сборки мусора (GC-free) и без блокировок (lock-free).
-
Понимание работы сборщиков мусора и умение писать код, минимизирующий их влияние.
-
Отличные аналитические навыки.
-
Опыт разработки архитектуры приложений.
-
Опыт тестирования и оптимизации производительности.
Будет здорово, если:
- У вас есть опыт написания low latency приложений.
- Понимаете принципы NUMA-архитектур, false sharing, cache alignment и их влияния напроизводительность.
- У вас есть опыт c JVM performance tuning.
- У вас есть опыт низкоуровнего программирования.
- Владеете инструментами профилирования: JMH, perf, async-profiler.