This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
FX Risk Java Developer. Citi's Markets technology team is growing at lightning speed, and we're looking for talented technologists to help build the future of global banking. Our teams are creating innovations used across the globe. As the world's most global bank, Citi provides an opportunity to touch every corner of the globe and deal with incomparable trade volumes, scale and impact. We're looking for new, innovative ways to push the boundaries of financial technology. Citi's global technology team spans 84 countries, with almost 30,000 colleagues managing thousands of projects across the globe. Our team is young but rapidly growing. Join an environment with a laser focus on growth and progress, and take your career to the next level through the power of Citi's unmatched globality and vast expertise.
Job Responsibility:
Lead and mentor a team of Java developers, fostering a culture of technical excellence and ownership
Define technical vision and architecture for FX risk calculation platforms
Make critical technical decisions on system design, technology stack, and implementation
Champion best practices in code quality, testing, performance, and security
Conduct code reviews and elevate team capabilities through constructive feedback
Take complete ownership of systems and features across the entire Software Development Life Cycle
Drive accountability within the team - ensuring every member embraces ownership of their work
Own the technical roadmap and ensure alignment with business objectives
Proactively identify and mitigate risks throughout the development lifecycle
Design and architect scalable, resilient solutions for complex risk calculation workflows
Lead implementation of distributed systems handling global trade volumes
Optimize application performance and establish benchmarks
Design integration patterns with databases (SQL/NoSQL) and messaging systems
Ensure systems are built for observability, maintainability, and operational excellence
Build and grow a high-performing engineering team through hiring, mentoring, and career development
Foster a culture of ownership where team members take initiative and accountability
Collaborate with cross-functional teams including product, business, and risk stakeholders
Remove blockers and create an environment for the team to excel
Lead by example in technical excellence and professional conduct
Lead end-to-end delivery of complex projects and initiatives
Own production stability and system reliability for critical FX risk systems
Establish monitoring, alerting, and incident response procedures
Lead L3 production support and participate in on-call rotation
Balance technical debt with feature delivery and make strategic trade-off decisions
Requirements:
Core Java and multithreading knowledge (jdk11 and upper)
Design and implement efficient data structures and algorithms
Experience with any SQL/No SQL databases (Oracle, MySql, Postgres, Mongo, Cassandra, etc)
Experience with any MQ (Kafka, Tibco, Solace, etc)
Good understanding of how Linux / JVM works
Passion to write code using TDD and be ready for L3 support
English B1
12+ years of relevant experience
Experience in systems analysis and programming of software applications
Experience in managing and implementing successful projects
Working knowledge of consulting/project management techniques/methods
Bachelor's degree/University degree or equivalent experience
12+ years of professional Java development experience with deep expertise
3+ years in a technical leadership role (Tech Lead, Team Lead, or similar)
Expert-level knowledge of Core Java and multithreading (JDK 11+)
Proven experience architecting distributed, high-performance systems