Enable job alerts via email!

Senior Software Engineer, CalcGraphs - Vice President

Citigroup Inc.

City of Westminster

On-site

GBP 70,000 - 90,000

Full time

3 days ago
Be an early applicant

Job summary

A global financial services firm in the City of Westminster is seeking an engineer to design and maintain the XiP Calculation Engine. The role involves improving scalability and efficiency, supporting complex distributed calculations, and mentoring junior developers. Candidates should have significant Java experience along with knowledge of cloud platforms and large-scale systems. This position offers a dynamic work environment with opportunities for professional growth.

Qualifications

  • Multiple years professional software development experience with Java.
  • Solid experience with Java frameworks (e.g., Spring, Spring Boot).
  • Experience designing, building, and maintaining large-scale, distributed systems.

Responsibilities

  • Develop the future versions of the calculation engine, improving speed and scalability.
  • Mentor and guide mid-level developers, providing technical advice.
  • Lead the design and implementation of enhancements to the Risk Calculation Engine.

Skills

Java
Spring
RESTful API design
Object-oriented programming
NoSQL databases
AWS
Agile/Scrum
Python

Education

Bachelor's or Master's degree in Computer Science, Engineering, or a related field

Tools

Docker
Kubernetes
JUnit
Job description
Overview

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.

About the Role

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. 0.5 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.

Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.