Job #: 2075
Title: Core Java Developer
Design, build and maintain a high-performance, high-availability, high-capacity, yet nimble and adaptive platform for front to back trading systems like order management, exchange connectivity, smart order routing, internalization, clearing and securities lending.
Use data to guide decision-making, developing or enhancing tools as necessary to collect it.
Understand market rules, regulations, exchange service offerings, front to back business functions and build systems to facilitate them.
Communication with traders, sales, clients and compliance officers about new systems, feature requests, explanation of existing features etc.
Bachelors or Masters degree in computer science or engineering or equivalent experience
Experience building C++/Java systems with strict requirements for low-latency (microseconds count) and deterministic performance.
Prior experience with Event Sourcing (Sequenced core stream) based architecture.
Experience building high performance cash equities trading systems (such as matching engines and trading systems at high volume Exchanges).
Strong knowledge of data structures, algorithms and design patterns
Experience in data driven performance analysis and optimizations.
Strong communication skills and the ability to work in a team
Strong analytical and problem solving skills
Ability to solve high performance engineering problems in a language agnostic manner.
Linux systems programming experience including memory management, concurrent programming infrastructure, and the networking stack
Off-heap memory management,
Distributed server software experience
JVM internals, tuning for low-latency