Front Office Developer
Role Overview
We are seeking a Java Developer with strong Front Office Foreign Exchange (FX) technology experience to join a major strategic modernisation programme. The programme is focused on migrating a large-scale, business-critical FX trading platform from a legacy C++ architecture to a modern Java-based platform.
The successful candidate will work closely with traders, quants, business analysts, architects, and other engineering teams to redesign, re-engineer, and deliver high-performance, low-latency trading applications that support the FX business across pricing, execution, risk, and trade capture.
This is a hands-on role requiring both deep technical capability and strong Front Office domain knowledge. The individual must be comfortable operating in a fast-paced trading environment and able to bridge legacy systems and modern engineering practices.
Key Responsibilities
Core Delivery Responsibilities
- Participate in the design and implementation of the strategic migration from C++ to Java.
- Analyse existing C++ trading and pricing applications and help define the target Java architecture.
- Re-engineer legacy components into scalable, maintainable, and testable Java services.
- Develop high-performance Front Office FX applications with a focus on low latency, throughput, resiliency, and stability.
- Work across the full software development lifecycle including requirements gathering, design, coding, testing, deployment, and production support.
- Deliver new Java components while ensuring compatibility and integration with existing C++ systems during the transition period.
- Contribute to the phased decommissioning of legacy platforms.
Required Skills and Experience
Technical Skills
- Strong commercial experience developing enterprise applications in Java.
- Proven experience with modern Java versions (Java 11/17+).
- Strong understanding of concurrent programming, multithreading, collections, and memory management.
- Experience building low-latency and high-throughput systems.
- Experience with the following technologies:
- Spring Boot / Spring Framework
- Messaging technologies such as Kafka, Solace, Tibco, JMS, or MQ
- RESTful APIs and service-oriented architectures
- Microservices and event-driven architectures
- Maven or Gradle
- Git and modern CI/CD pipelines
- Linux / Unix environments
- SQL and relational databases
- In-memory caching technologies
- Strong debugging, profiling, and performance optimisation skills.
- Experience with automated testing frameworks including JUnit and integration testing.
- Familiarity with containerisation and cloud technologies is desirable.
Front Office FX Domain Experience
- Strong knowledge of Front Office trading environments within investment banking or capital markets.
- Demonstrable experience working on FX trading systems.
- Good understanding of:
- FX products and lifecycle
- Market data flows
- Pricing and execution workflows
- Trade booking and downstream processing
- Risk, P&L, and exposure calculations
- Experience interacting directly with traders and Front Office stakeholders.
- Understanding of electronic trading, venue connectivity, and low-latency market access is highly desirable.
Preferred / Desirable Experience
- Experience within a large-scale strategic transformation or modernisation programme.
- Experience in a global bank or major financial institution.
- Familiarity with pricing engines and quantitative libraries.
- Experience with distributed caching and high-performance messaging.
- Knowledge of Kubernetes, Docker, and cloud-native deployment models.
- Familiarity with DevOps and SRE practices.
- Exposure to Agile delivery methodologies including Scrum or Kanban.
- Experience mentoring junior developers and leading technical workstreams.