We are looking for a Java Developer to work on low-latency, high-throughput trading systems within a global investment bank. This role sits close to the front office, building and optimizing platforms where microseconds matter and failures are not tolerated.
Responsibilities
- Design and develop low-latency Java applications supporting electronic trading and market connectivity
- Optimize system performance across GC, threading, memory allocation, and network I/O
- Build and maintain real-time services processing high message and transaction volumes
- Work closely with traders, quants, and electronic trading teams to deliver performance-critical features
- Analyze and resolve latency bottlenecks across application, JVM, and OS layers
- Ensure systems are resilient, fault-tolerant, and production-ready
- Participate in production support for latency-sensitive systems
Requirements
- Strong commercial experience in Java (Java 8+) for low-latency or high-performance systems
- Deep understanding of JVM internals, garbage collection, and memory management
- Strong experience with concurrency, lock-free or low-lock designs
- Experience with high-performance messaging (FIX, Kafka, Aeron, custom protocols)
- Solid Linux knowledge, including performance tuning and troubleshooting
- Strong SQL and experience with relational databases
- Experience working in investment banking, trading, or electronic markets
Nice to Have
- Experience with FIX protocol or electronic trading platforms
- Exposure to real-time pricing, order management, or execution systems
- Knowledge of networking concepts (TCP/UDP, multicast)
- Experience with profiling tools (JFR, async-profiler, Flight Recorder)
- C++ exposure in low-latency environments