At a Glance
- Tasks: Design and maintain a high-performance calculation engine for large-scale risk calculations.
- Company: Join Citi's innovative team in the heart of global finance.
- Benefits: Competitive salary, career growth, and opportunities to work with cutting-edge technology.
- Why this job: Make a real impact on financial markets with your engineering skills.
- Qualifications: Proven experience in Java and large-scale distributed systems.
- Other info: Collaborative environment 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 (e.g., 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 (e.g., MongoDB, Cassandra) is a plus.
- Exposure to cloud platforms (e.g., AWS, Azure, GCP) and containerization (e.g., Docker, Kubernetes) is desirable.
- Experience with unit testing, integration testing, and test automation frameworks (e.g., 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 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
✨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 portfolio of projects or contributions to open-source, make sure to highlight them. Create a GitHub profile that showcases your Java expertise and any cool stuff you've built. This is your chance to shine!
✨Tip Number 3
Prepare for those interviews! Research common technical questions related to Java, Spring Boot, and distributed systems. Practice coding challenges and be ready to discuss your past projects in detail. Confidence is key, so get comfortable talking about your experience.
✨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. So, what are you waiting for? Get that application in!
We think you need these skills to ace Senior Software Engineer, CalcGraphs - Vice President
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 StudySmarter. Don’t forget to mention specific projects or achievements that showcase your skills.
Showcase Your Problem-Solving Skills: In your application, give 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 performance in large-scale systems.
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. We can’t wait to hear from you!
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, Spring Boot, and any other frameworks mentioned in the job description. Brush up on your knowledge of distributed systems and cloud platforms like AWS and Kubernetes, as these are crucial for the role.
✨Showcase Problem-Solving Skills
Prepare to discuss specific challenges you've faced in previous projects, especially those involving large-scale calculations or performance bottlenecks. Be ready to explain how you approached these problems and what solutions you implemented.
✨Demonstrate Leadership Qualities
Since this role involves mentoring mid-level developers, think of examples where you've guided a team or contributed to their growth. Highlight your experience in allocating tasks and fostering a collaborative environment.
✨Ask Insightful Questions
Prepare thoughtful questions about the XiP platform and its future direction. This shows your genuine interest in the role and helps you understand how you can contribute to the team’s success.