Java Developer - Front Office / Trading Systems

Margo Conseil
Charing Cross, United Kingdom
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English

Job location

Charing Cross, United Kingdom

Tech stack

Java
Algorithmic Trading
Unix
Linux
Distributed Systems
Memory Management
Middleware
Multicasting
Scrum
Software Engineering
TCP/IP
Multithreading
Real Time Systems
Concurrency
Low Latency
Performance Monitor
Real Time Data
Kafka

Job description

MARGO is a tech-native consultancy delivering high value-added IT expertise to the financial services industry. We specialise in complex software engineering environments where performance, robustness and scalability are critical: low latency systems, real-time data processing, distributed architectures and high-volume flows. Joining MARGO means working in demanding Front Office and Risk IT environments, while benefiting from a human-sized structure, close follow-up and tailor-made training paths. Business Context You will join the Front Office / Trading IT environment of one of our tier-1 investment banking partners. The teams design and maintain mission-critical Java systems supporting electronic trading activities across multiple asset classes (e.g. Equities, Fixed Income, Commodities, FX, Derivatives). The environment is characterised by:

  • Real-time and event-driven architectures

  • High performance and low-latency constraints

  • Close interaction with trading, quantitative and risk teams

  • Short delivery cycles and high engineering standards, The role is primarily technical, focused on software engineering excellence rather than business analysis. Candidates are expected to have prior exposure to Front Office, Trading or Risk environments, regardless of the underlying asset class., Design & Development

  • Design, develop and maintain high-performance Java applications

  • Work on real-time data processing (market data, pricing, orders, analytics)

  • Implement multithreading and concurrency patterns adapted to performance-critical systems

  • Participate in system design, architecture discussions and technical specifications

  • Continuously optimise performance (latency, throughput, memory, GC behaviour)

Engineering & Delivery

  • Contribute to the full software lifecycle: design, development, testing and release
  • Produce clean, maintainable and well-tested code
  • Participate in sprint planning, estimations and technical reviews
  • Collaborate closely with developers, quant and infrastructure teams

Production & Support

  • Provide 3rd line support on production systems when required
  • Participate in production releases (including occasional out-of-hours interventions)
  • Contribute to system stability, monitoring and incident prevention

Technical Environment Core Technologies

  • Java (expert level)
  • Multithreading & concurrency
  • Performance optimisation & low latency techniques
  • Garbage Collection awareness
  • Linux / UNIX environments
  • Distributed systems and messaging architectures
  • Performance monitoring and profiling tools

Valued Technical Exposure

  • Event-driven or real-time systems
  • Messaging middleware (Kafka, Solace or equivalent)
  • FIX or other market connectivity protocols
  • Networking fundamentals (TCP/IP, multicast)

Requirements

Do you have experience in UNIX?, * Strong experience as a Java Developer in performance-critical environments

  • Proven background in low-latency or high-throughput systems
  • Solid understanding of concurrency, threading and memory management
  • Experience working in Front Office, Trading or Risk IT environments
  • Comfortable working in Linux production environments
  • Clear communication and structured problem-solving skills

Valued (but not restrictive)

  • Exposure to one or more asset classes (Equities, Fixed Income, Commodities, FX, Derivatives)
  • Experience in trading, pricing, risk or market data systems

Apply for this position