Skip to the content.

HOME | CV PORTFOLIO | 2026-2025 | 2023-2021 | 2020-2013 | 2013-2008 | 2007-2003 | 2003-2000

PORTFOLIO

This section outlines the projects I have been involved in during the period 2021 – 2023.

(Credit Suisse) Counterparty Credit Risk CVA desk

_ Period _: Mar ‘22 – Apr ‘23

_ Length _: 1 year

_ Team Members _ : 8 Analyst Developers, 1 Project Manager

_ Technologies _ : C#, ASP.NET Core, Dapper DAO, SpecFlow, SQL Server, SSRS, Redgate SQL

React 7, Jest, Enzyme, Hooks, State management, Pagination, mobx, AG Grid (Group & Pivot, Server-Side chunking), Typescript, Bootstrap, Node JS

In-house .NET business tasks and workflow MessageBus, Primo Server, JANE Quant Analytics, MonteCarlo Valuations

_ Environments _ : Windows

_ Methodology _ : User Story-Driven Development, Agile, Micro Services, BDD, TDD

_ Consultancy Experience: _ Analyst Developer, Credit Valuation Adjustments, FRTB CVA, Basel III

_ Description _ :

The FRTB CVA technology team integrates the bank’s distributed risk analytics engines with the FRTB application layer to meet Basel III Regulatory CVA risk requirements.

Main goal of FRTB CVA programme is to capture risk drivers of CVA risk to better align capital standards with accounting practices. (credit risk analysis, risk reporting, market data interfaces and trade data interfaces)

Responsiblities: The role demanded end-to-end ownership of stories, from technical business analysis (breaking down tasks into manageable sub-stories and tickets), full-stack development (React UI, ASP.NET Web API, DB changes, changes to calc workflow and quant analytics layer), triggering calculation workflow & batch management carefully configured pricing parameters and manual UI acceptance testing and automated unit tests/BDD Specflow acceptance tests. Ensured cohesive end-to-end delivery of each user story. I must stand behind my delivery and the risk results produced to be ready to answer any questions that arrive from the desk and project management.

Involvement: Worked on FRTB capital requirements calculation, including SA-CVA and BA-CVA methodologies. Responsibilities included sourcing model inputs such as risk sensitivities, credit hedges for SA-CVA, Expected Exposure and maturities for BA-CVA, and managing counterparty reference data UI screens (hedge allocations, counterparty regions, and credit quality). Also, managed the rule-based ‘controls’ engine to classify raw trade populations for the correct calculation methodology.

Skills Required: The role demanded a risk functional background; the understanding of risk management principles and calculations, self-drive and ownership; proactive enthusiasm and sense of responsiblity, broad technical abilities; including working closely with quant analysts, market data folks, primo infrastructure and project management teams.

The role demanded a comprehensive understanding of FRTB capital requirements, strong analytical skills, and the ability to collaborate effectively with various teams to ensure accurate and efficient risk calculations and reporting.

_ Projects _ :

FRTB Capital Requirements Breakdown story

Objective: Computation of capital requirements is one of the main drivers of FRTB CVA; the trading desk is required to hedge against the huge capital numbers produced in compliance with Basel III. Produce portfolio level capital requirements for SA-CVA, BA-CVA against the bank’s netting agreements. Ongoing responsibility of this story involved root cause analysis on capital number discrepancies and working with various team members and quants to take issues to resolution.

FRTB Capital Calculator Hedge Risk verification story

Objective: Expose key inputs of the capital calculator for capital calculation batch runs to end users

Exclusion by book routing rule story

Objective: Enable the buesiness to run capitcal calculations with specific trading books routed to BA-CVA or excluded for impact analysis scenarios.

IMM EE Curve story

Objective: Source EE curve data, a key input to the BA-CVA calculation

React AG-GRID risk summary story

Objective: Innovate the UI to leverage AG-GRID features for managing large capital data sets efficiently. Huge capital data sets (10 million record set)

Respnsiblitilies: Spearheaded UI changes using AG-GRID group & pivot, advanced excel exports, server-side chunking (vast data sets). We piloted the innovation by converting FRTB CVA risk results summary page with success and not only were we able to build out the capital requirements screen efficiently, it gave the desk ability to address advanced reporting needs with AG-GRID group and pivots. (React 7 tables, AG-GRID)

Other features

(Credit Suisse) Giraffe Real Time Intraday Risk

_ Period _: Sep ‘21 - Mar ‘22

_ Length _: 6 month

_ Team Members _ : 5 developers, 6 Business Analysts / Project Managers

_ Technologies _ : C#, WPF, .NET 4.7.2, Redis Cache 6.0, Nancy IoC, .NET sockets, Google ProtoBuf, Windows Service, SQL 18, Consul

Java/C# real-time OLAP relational algebra library, GoLang, Kotlin, Scala, Postgres, Linux, Openshift, Kubernetes, GIT feature branches, Shell scripting

_ Environments _ : Windows, Linux, OpenShift/Kubernetes for Linux

_ Methodology _ : Scrum/Agile, Pair Programming, Micro-services, Legacy code patterns

_ Consultancy Experience _: Risk system rationalisation & system integrations, Ticking OLAP relational table transformations, incomplete testing and lengthy releases

_ Description _ : The GRT platform processes vast streams of financial data in real-time, delivering unified intraday risk results for Equities and Rates. It provides a gold standard in automated, tested releases, leveraging the CS ticking OLAP relational algebra platform to handle immense financial data in real-time.

This program involved migrating CS’s FX intraday system which publishes real-time P&L for the FX market (spot/forwards/spot ladder) into the larger GRT ecosystem.

This migration met an unprecedented challenge, the FX system (C#/Java/Windows) used a different quant stack, was tightly coupled to the quant .NET interfaces requring Risk functional expertise compared to the strategic loosely coupled GRT (Java/Golang/C#/Linux) which had a loosely coupled JSON .NET interface to the quant stack. Also, the difference in the velocity of trading and huge volumes (3 million trades per day) in FX posed a technical challenge,topped off with the high availability NFR from the FX desk (30 traders Zurich alone, 90+ users globally).

The scope for this phase of the migration programme involved lifting the real-time risk results aggregation engine from the logical architecture; cluster of RT CS OLAP services on windows (40+ Windows hosts) and building it into the GRT shell (80+ linux hosts). This involved development work in particular porting table shapes, projections, filters, pivots into the GRT shell (Java/Scala/GoLang) to leverage linux stability/easier to scale/powered monitoring, extending the WPF UI service discovery comms layer to hook into these new backend services (WPF/ C#) and modifications to the FX RiskServer to support the transport piping to redis cache in Linux and the direct transport pipe from RiskServer to the new Linux OLAP services (C#/Google ProtoBuf GRPC/Java).

In addition we implemented a regression system validating risk numbers cross environments (Windows vs Linux) leveraging GRT regression components and patterns (GoLang, Java/Scala, Openshift/Kubernetes).

_ Projects _ :

Risk Server migration

Objective: Migrate components of the main risk engine (Risk Server, C# WebApi) that serves risk results to the WPF UI via its various connectors (through the CS OLAP services cluster including DB/Redis, Grpc connector to RiskServer).

Automated Regressions

Objective: Extend the regression system built with a GoLang runner that triggers regression workers (Scala/Java) on OpenShift/Kubernetes to perform diffs between risk sets in two environments to support new FX rec runs. The regression run results are stored in Postgres and visualized in Kotlin Ktor Web UI.