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.
ResponsibilitiesDesign and develop low-latency Java applications supporting electronic trading and market connectivityOptimize system performance across GC, threading, memory allocation, and network I/OBuild and maintain real-time services processing high message and transaction volumesWork closely with traders, quants, and electronic trading teams to deliver performance-critical featuresAnalyze and resolve latency bottlenecks across application, JVM, and OS layersEnsure systems are resilient, fault-tolerant, and production-readyParticipate in production support for latency-sensitive systems
RequirementsStrong commercial experience in Java (Java 8+) for low-latency or high-performance systemsDeep understanding of JVM internals, garbage collection, and memory managementStrong experience with concurrency, lock-free or low-lock designsExperience with high-performance messaging (FIX, Kafka, Aeron, custom protocols)Solid Linux knowledge, including performance tuning and troubleshootingStrong SQL and experience with relational databasesExperience working in investment banking, trading, or electronic markets
Nice to HaveExperience with FIX protocol or electronic trading platformsExposure to real-time pricing, order management, or execution systemsKnowledge of networking concepts (TCP/UDP, multicast)Experience with profiling tools (JFR, async-profiler, Flight Recorder)C++ exposure in low-latency environments