Job Purpose:

This role is for an Application Developer to work in the FX Technology Team based in New York. The team is responsible for all Front Office facing applications: Pricing, Risk, Electronic Trading. Each developer is involved in the complete project lifecycle from requirements analysis and to design and implementation.


  •  FXLM Technology is focused on delivering IT solutions to the FX and Local Markets Sales & Trading business. We have around 400 people with the core of our development effort based in the financial hubs of London, New York and Singapore where we face off directly to the trading desks. Our core strength is providing the technical expertise and software development skills that directly affect the ability of our business to generate revenue and several of our client facing applications such as Citi FX Velocity and FX Click are leaders in their respective markets. We are committed to hiring the brightest and best technical experts and in return can offer roles with direct business interaction on projects from electronic and algorithmic trading to grid based computation of real-time risk metrics.
  • The Algo/Agg Technology Team is one of the most exciting and fast-paced teams within FXLM Technology and is responsible for delivering the electronic Algo/Aggregator Trading technology platform for the eFX business. The teams are directly integrated with the Trading Desk and Quants, and deliver technology covering the major liquid instruments such as FX Spot, Precious Metals and eNDF. The team’s responsibilities extend to all aspects of the electronic trading domain, from market connectivity, market data distribution and Co-Lo Infrastructure to algorithmic execution. The Algo/Agg platform is used by a wide range of clients such as internal Spot desks, Internal Options desks, external clients, and our own Single Dealer trading platform (Velocity).
  • We are looking to hire a senior Java Developer/tech lead to join the NYC based Algo development team and lead the project, which is a core part of the global eTrading technology team. This is a specialist role for someone with solid experience in leading and developing FX eTrading algorithmic software. This FX Algorithmic eTrading role requires a high level of expertise in developing efficient, low-latency Java code that is highly fault-tolerant to ensure our business continues to operate 24/5.5. We are looking for a candidate that understands how to build and design highly concurrent software in an architecture that is appropriate for e-Trading applications. The role will require constant dialogue with the business and Quant team, and designing, developing and testing highly performant java code in an agile fashion for deployment into our co-located environments globally. The role will also require being highly conversant in circuit-breakers, risk-controls, audit trail requirements as pertains to electronic trading in fast markets.

Key Responsibilities:

  • Close interaction with Traders and Quants to understand new requirements for the Algo platform.
  • Enhancing the existing platform and developing new functionality, primarily in Java.
  • Take complete ownership of deliverables from inception to roll-out, working largely independently.
  • Mentoring and/or managing more junior members of the team.
  • Continual improvement of the software development lifecycle and quality of the product.
  • Second line support of the production system (a dedicated 24h support team handles 1st line).

Key Relationships:

  • Other FX Technology teams, especially the wider eTrading team, Velocity, and Pulse.
  • Infrastructure Team (STI & CTI)
  • FX Trading Business
  • Global Support Team

Development Value:

This role provides a good opportunity for the successful candidate to work on a project closely aligned to the FX business with direct PnL impact.FX Technology is a global team covering a wide range of front office applications and this role would give a solid foundation in one of our key projects. The common architecture and approach across the group means there are many opportunities for career growth and mobility within our team.



  • At least 7 years commercial Java development experience; ideally having more, which could be in another OO language (i.e. C++, C#).
  • At least 5 years direct experience developing software (using Java) for algorithmic trading of FX.
  • At least one year of being a tech lead for an algorithmic trading technology team.
  • Experience building an automated functional test framework for testing algorithmic order flow.
  • Experience understanding and implementing automated risk controls and circuit-breakers for eTrading.
  • Experience developing low-latency, high performance software in Java.
  • Recent experience working within an eFX Technology Team is preferable.
  • Self-starting individual with experience of working in a desk facing role.
  • Experience designing and developing distributed systems using a range of middleware products.


  • Java, OO design.
  • KDB/Q (optional).
  • Distributed Systems Technologies – Messaging, Caching, Database. (Tibco RV, EMS preferred).
  • Automated testing framework experience: Fitnesse preferred.
  •  Understanding of computing science fundamentals – concurrency, algorithms, and operating systems.
  • Process and tools to produce well written low defect rate code.
  • Quantitative understanding of the FX trading business or related areas (e.g. high frequency trading) preferred.


  • Good degree in a mathematical or scientific subject from a top tier University.


  • Strong aptitude for analysis and problem solving
  • Degree level maths
  • Strong written and verbal communication skills
  • Self Motivated
  • Willingness to learn
  • Excellent planning and organizational skills

To apply for this job please visit jobs.citi.com.

You can apply to this job and others using your online resume. Click the link below to submit your online resume and email your application to this employer.