The credit risk system provides calculation, reporting and risk management functionality to all asset classes across the bank. It is a complex, large-scale distributed system, implemented in Java, running thousands of calculation jobs each day.
It is now time to migrate to a modern Cloud platform, taking the opportunity to improve performance, resilience, and supportability. This multi-year effort can only be successful if coupled to a substantial investment in supporting build & test infrastructure, and Agile DevOps practices.
The successful candidate will join a new core technology team tasked with transforming the way we develop Credit Risk technology.
Team Background
The Derivatives Credit Risk Technology Team is responsible for delivering Counterparty Credit Risk Management software solutions to Citi's Risk organization which manages exposure to financial institutions, governments and corporates that trade with the bank. The team builds and maintains software used to compute metrics that help mitigate exposure to counterparty default.
Key responsibilities
As an individual contributor, design, develop and deploy infrastructure enabling build, test, deployment, and support of the application suite. Some components will be off-theshelf or existing in-house services, requiring configuration for specific use cases, while others will be developed from scratch
Collaborate with other teams: developers within and beyond the Optima system, analysis and support staff, stakeholders and users across multiple asset classes, and cross-asset technology teams
Although the primary focus will be DevOps infrastructure and processes, there will be opportunities to contribute to risk application architecture and development
Opportunity to progress to a team leadership position, based on performance & demonstrated potential
Your Background
5+ years Core Java experience developing robust, scalable, and maintainable applications
Experience with Test Driven Development and other Agile practices
Third-line support of large applications, including troubleshooting production issues
Key Skills
Java Core including concurrency, I/O and serialisation (ideally VM tuning)
Test Driven Development, testing best practices for large server applications
Maven, Git, experience managing and optimising large builds
Spring Framework including Core, Integration, Batch, JDBC, Hibernate
Cloud computing technologies with practical experience working with containers, microservices and large datasets (Docker, Kubernetes)
Databases - RDBMS and NoSQL (ideally Oracle and MongoDB)
Message buses (ideally Kafka) - knowledge of Spark or similar beneficial
Familiarity with Linux environment including shell scripting
Standard SDLC stack: CI/CD pipeline frameworks such as Jenkins, SonarQube, JIRA, any secure coding toolkit
