At a Glance
- Tasks: Design and maintain a high-performance calculation engine for large-scale risk calculations.
- Company: Join Citi's innovative tech team in the heart of global finance.
- Benefits: Competitive salary, flexible work options, and opportunities for professional growth.
- Why this job: Make a real impact on cutting-edge technology in a dynamic financial environment.
- Qualifications: Proven Java development experience and expertise in distributed systems.
- Other info: Collaborative culture with mentorship opportunities and a focus on continuous learning.
The predicted salary is between 72000 - 108000 £ per year.
Team Overview
XiP is building a next-generation cross-asset calculation system for Citi trading desks and enterprise users in the largest global financial markets and exchanges in New York, London, and other major financial hubs. Our team owns multiple Java Spring Boot Services that execute, partition, and track quantitative risk graphs/trades in a distributed environment. These graphs can fail due to their complexity and our system must adapt quickly to these failures to provide a seamless experience for clients. XiP Compute Services are deployed onto OpenShift and Amazon’s Elastic Kubernetes Service (EKS). An important initiative in 2025 will be onboarding Google’s Kubernetes Engine to further expand our coverage. Our system scales on-demand, and we can run up to tens of thousands of replicas of our services across all asset classes.
Role Overview
We are seeking a Senior Engineer to fill the role of ‘Applications Development Technology Lead Analyst’ on the XiNG large scale distributed calculation platform (XiP). In this role you will design, build, and maintain the calculation engine at the heart of the XiP platform. This engine is responsible for c. billion risk & suitability calculations at Citi every day. A single customer run compresses 17 million minutes of compute into a single 90-minute execution. Run on hundreds of thousands of pods across the entire XiP platform every day this calculation engine is both highly performant and rapidly changing to support new scenarios, technologies, and infrastructure. As an engineer working on the calculation engine, you will work closely with software engineers, DevOps, and our customers to ensure reliable, secure, and scalable operations of our platform.
Responsibilities:
- Take part of the shared responsibility for the long-term strategic direction of the XiP Calculation Engine: Apply your experience and skills to develop the future versions of the calculation engine. This means making it faster, utilizing resources better, and scale to even greater sizes. This means adding new features without impacting performance of the platform in undesirable manner, small changes multiplied by millions of calculations have a high cost. This means solving hard problems like transferring small amounts of data to a huge number of machines.
- Serve as advisor or coach to team members, allocating and overseeing work: Mentor and guide mid-level developers, providing technical advice, code reviews, and career development support. Allocate tasks based on skill sets and project priorities, ensuring balanced workloads and timely delivery. Foster a collaborative and growth-oriented team environment, encouraging best practices and continuous learning.
- Implement changes and improvements to Citi's Risk Calculation Engine, including analyzing and designing improvements to the distribution mechanisms of the engine which regularly parallelizes 250,000 hours of compute into a single 90-minute execution: Lead the design, development, and implementation of enhancements to the Risk Calculation Engine, focusing on optimizing its distribution mechanisms. Analyze current parallelization strategies and identify opportunities to further improve efficiency, scalability, and throughput.
- Operationally support the optimization of Risk calculations by examining and providing SME level insight into the distributed execution of extremely large calculations: Monitor and analyze the distributed execution of large-scale risk calculations, identifying performance bottlenecks and inefficiencies. Provide subject matter expertise to guide operational improvements, leveraging deep technical knowledge to recommend and implement optimizations that enhance calculation speed and resource utilization.
- Plan, coordinate, and execute strategic changes to the engine to reach the next scaling milestone: Develop and manage strategic initiatives aimed at scaling the Risk Calculation Engine to meet future business demands. Coordinate with stakeholders to ensure that all scaling efforts are aligned with customer needs. Provide specialized customer support to optimize and improve large, distributed calculations. Act as a primary point of contact for clients to address issues and optimize inefficiencies that arise during distributed workload execution.
Qualifications:
- Multiple years professional software development experience with Java.
- Solid experience with Java frameworks (Spring, Spring Boot, Quarkus).
- Experience designing, building, and maintaining large-scale, distributed systems.
- Experience with RESTful API design and implementation.
- Strong understanding of object-oriented programming and design patterns.
- Exposure to NoSQL databases (MongoDB, Cassandra) is a plus.
- Exposure to cloud platforms (AWS, Azure, GCP) and containerization (Docker, Kubernetes) is desirable.
- Experience with unit testing, integration testing, and test automation frameworks (JUnit, Mockito).
- Experience working in Agile/Scrum development environments.
- Practical experience with Python for scripting, automation, or data processing tasks.
- Experience with CI/CD pipelines and DevOps practices is a plus.
Education:
Bachelor’s or Master’s degree in Computer Science, Engineering, or a related field.
Senior Software Engineer, CalcGraphs - Vice President in London employer: 11037 Citibank, N.A. United Kingdom
Contact Detail:
11037 Citibank, N.A. United Kingdom Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Senior Software Engineer, CalcGraphs - Vice President in London
✨Tip Number 1
Network like a pro! Get out there and connect with folks in the industry. Attend meetups, webinars, or even just grab a coffee with someone who works at Citi. You never know who might have the inside scoop on job openings or can put in a good word for you.
✨Tip Number 2
Show off your skills! If you’ve got a GitHub or portfolio, make sure it’s up to date. Share projects that highlight your experience with Java, Spring Boot, or any cool distributed systems you've worked on. This is your chance to shine beyond the CV!
✨Tip Number 3
Prepare for those interviews! Brush up on your technical skills and be ready to tackle coding challenges. Practice explaining your thought process clearly, especially when discussing complex systems like the Risk Calculation Engine. We want to see how you think!
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you’re genuinely interested in joining the team at Citi. Let’s get you that dream job!
We think you need these skills to ace Senior Software Engineer, CalcGraphs - Vice President in London
Some tips for your application 🫡
Tailor Your CV: Make sure your CV reflects the skills and experiences that match the job description. Highlight your Java expertise, experience with distributed systems, and any relevant cloud platform knowledge. We want to see how you can contribute to our team!
Craft a Compelling Cover Letter: Your cover letter is your chance to shine! Use it to explain why you're passionate about the role and how your background aligns with our mission at XiP. Don’t forget to mention specific projects or achievements that showcase your capabilities.
Showcase Your Problem-Solving Skills: In your application, include examples of how you've tackled complex problems in previous roles. We love seeing candidates who can think critically and adapt quickly, especially when it comes to optimising large-scale calculations.
Apply Through Our Website: We encourage you to apply directly through our website for the best chance of getting noticed. It’s the easiest way for us to keep track of your application and ensure it reaches the right people. Don’t miss out!
How to prepare for a job interview at 11037 Citibank, N.A. United Kingdom
✨Know Your Tech Stack
Make sure you’re well-versed in Java and its frameworks, especially Spring and Spring Boot. Brush up on your knowledge of distributed systems and RESTful API design, as these will be crucial topics during the interview.
✨Showcase Problem-Solving Skills
Prepare to discuss specific challenges you've faced in previous roles, particularly around optimising large-scale calculations or improving system performance. Use examples that highlight your analytical thinking and ability to adapt to complex problems.
✨Understand the Business Context
Familiarise yourself with Citi's operations and the financial markets they serve. Being able to connect your technical skills to real-world applications will demonstrate your understanding of the role’s impact on the business.
✨Be Ready to Mentor
Since the role involves guiding mid-level developers, think about how you can share your knowledge effectively. Prepare examples of how you've mentored others in the past and what strategies you used to foster a collaborative environment.