Senior Quantitative C++ Developer Resume
OBJECTIVE:
17+ years of diverse experience in C++, Python and core JAVA Financial Derivative Valuation, Risk Measure, Simulation, Monitoring, Margin Calculation and Regulatory Analytics Systems. Doctoral - level education in Probability Theory, Stochastic Calculus, Real/Complex Analysis and Numerical Analysis for Financial Derivative and Risk Management Model Analysis and Implementations. Seeking a senior Quantitative Analysis/ development/validation/audit C++/Python/Core JAVA role.
SUMMARY:
- Extensive experience in Object-Oriented low latency C++
- Experienced in building Risk Analytics, Model Review, Simulation and Confidential & CCAR Systems.
- Experienced in Historic/Simulated Monte-Carlo Market Risk Value-at-Risk (VAR) System Design and Implementation in C++ and core JAVA
- Experience in implementing Credit Pricing and Exposure measuring CPE, Confidential & CVA Systems
- Experienced in implementing MBS Prepayment Models
- Extensive experience in Stochastic Calculus of Interest Rate & Credit Derivative Pricing Models
- Experienced in Applied Linear Algebra algorithms such as Matrix Diagonalization, Eigen Value Solver, fast parallel matrix multiplication algorithms, multi-dimensional root finding, integrating algorithms
- Proficient in Data-Structures, Design Patterns in C++
- Experienced in building multi-threaded server-side applications in C++, JAVA and Python
- Experienced in writing Message-Driven, Service-Oriented applications in C++
- Long experience in relational (Oracle, Sybase, Sql-Server, MySql) and No-Sql databases (Cassandra).
SKILL:
Languages: C++, C, Core Java, Python, Linux Shell Scripting, AWK, SED, Windows Batch Scripting, VBA, VBScript, R
Development Tools: VI, GCC, MS Visual Studio, Eclipse
Libraries: C++ STL & Boost, Xerces/XALAN XML libraries, C++ TDS SQL, Core JAVA, JDBC, Spring, Python Standard Library, NumPy, SciPy, Pandas
Config Mgmt: CVS, SVN, GIT, GitHub
Build/Profiling Tools: C++: GDB, Valgrind, Gprof, Threadspotter, Incedibuild; Java: Jprobe, Jmap; Python: Cprofiler
Technology Integration: C++ and Excel, C++ and Python (Swig, Cython, Ctypes), C++ and R
TDD/BDD Libraries: CppUnit, Junit, Behave (Python), JBehave
Database: SYBASE, ORACLE, MS-SQL SERVER, MYSql, Cassandra
Operating system: Solaris, HP-UX, IBM-AIX, Linux, Windows
UI Development: C++ MFC, Java Swing, C# Winform, GTK
Network Sniffers: Fiddler, HTTPAnalyzer, TcpDump
App & Web servers: WebLogic, WebSphere, Tomcat and Apache, Citrix
Automated Test Tools: JMeter, LoadRunner, QuickTestPro, WinRunner, Selenium
EXPERIENCE:
Confidential
Senior Quantitative C++ Developer
Responsibilities:
- For the Confidential Architecture Team, for C++ application called FELIX (Financial Engineering Library for Interest rates and Exotics), writing C++11 multi-threaded cache-friendly faster solutions of matrix calculations of Covariance/Correlation, root-finding and objective function solvers, JacovianSolver for calibrations, Improved Newton-Raphson Root-Finding method with Broyden Update and Improved Quasi-Monte Carlo Method with SOBOL low discrepancy quasi-random sequences.
- Writing a C++ library to expose SOLACE C API in Python on both Windows and LINUX.
- Wrote a C++ source code analysis package for FELIX running on the DataSynapse GRID to find ways to improve performance to meet FRTB reporting requirements which required order of magnitude performance improvement. I implemented a C++ 11 ultra-low-latency (timer event cycle < 50 nanoseconds & info event cycle < 200 nanoseconds), high throughput (a few hundred millions events per run written 250K/sec with multithreaded thread pooled writers) self-compensating 10000+ lines long library, output analysis and session management tool s.
- Analyzed Inflation, Interest Rate Analytic and Monte Carlo based multi-curve models, namely, Affine Yield Curve Term-Structure Model - Linear Gaussian Model, IR Inflation SABR, FX VannaVolga, Equity-interest Rate Hybrid Gausssian Copula Model, FX Local Stochastic Volatility and Libor Market Model with Smile. Identified some 120 functions accounted for 99+% of the execution time. Made recommendation to offload and later just lookup (to gain at least 200% performance improvements) data-centric model independent calculations like discount factor, Yield/Credit Curve generation/shocking, Volatility Surface construction/calibration, correlation and covariance calculations etc. which currently are run by many calculation task instances on the GRID, with duplication of effort and throw away results without any reuse among GRID tasks. 100,000+ FELIX calculation tasks, from xml and database input, creates Models, calibrates, runs PV and risk valuations for vanilla, american and bermudan exotic options for Interest Rate, and FX products. Instrumentation covered 99% of FEILIX of 100+ projects with over half-million lines of codes which build into 200+dlls on Windows and ran in a 400+ windows server 2012 engines DataSynapse grid.
Confidential
Internal Tech. Audit
Responsibilities:
- Designed and implemented “Credit Risk Aggregation and Netting” model to reconcile against existing production system.
- Collateralized Potential Exposure (CPE), expected positive exposure ( Confidential ), effective expected positive exposure ( Confidential ) for collateralized margined equity and derivative contracts and credit value adjustment (CVA) for non-collateralized contracts.
- The framework uses simulated prices, samples production securities and calculates exposures, for number of time-points under various netting and margining agreements.
- Matched numbers with production system with less than 0.5% error.
- The system runs on Linux and SecDB daily under three hours.
- To re-perform Confidential Stress Test scenario generation from Global Market Shocks (GMS), wrote an independent C++ 11 (multi-threaded, smart pointer heavy and template rich) & SecDB application to consume GMS shocks, rule configs and scenario containers for all asset-classes and generate reconcile scenarios with production scenarios and publishes cvs reports.
- The goal was to provide reproducible visibility into the production Confidential scenario generation process.
- To evaluate Pre-provision net revenue (PPNR) calculations under Confidential and CCAR reporting process, wrote an independent C++ 11 (multi-threaded, smart pointer heavy and template rich), SecDB Linux-based application.
- This application sources various input from stored containers and through APIs of BAU systems in various business lines and re-produces production numbers identically.
Confidential
Senior Risk Analytics Developer
Responsibilities:
- Designed & implemented a LINUX-based Multithreaded C++11, smart pointers based, template rich high throughput and low latency Pricing & Scenario Analysis System based on Monte-Carlo simulation method for Single Name and Index Futures, Vanilla European, American and Bermudian Options, Barrier, Digital, Asian and look-back, callable bond options and their Greeks. This system prices using 50000 Monte Carlo paths for each of 50+ instruments and finishes pricing portfolio, incremental and marginal Value-At-Risk Market Risk Calculation under two hours for close to a million positions.
- Option-Adjusted-Spread, Effective Duration, Effective Convexity and Partial Duration, Coupon/Prepayment Speed/Volatility Changes scenario for CMOs, TBA, IO, IIO and Corporate Bonds in multithreaded implementation.
- Designed & implemented a LINUX-based concurrent C++ 11, multi-threaded low latency Value-At-Risk, Margin and Capital Optimization System that calculates:
- Marginal and Incremental Initial Margin requirement per trading desk, trader, micro-strategy and products based on 1-day 99% Value-at-Risk ( VAR). Following Methodologies were implemented:
- Initial Margin Charge Replication for 54 exchanges implementing CME SPAN ( Standard Portfolio Analysis of Risk ) methodology
- Identify all price, configuration and other data files for all exchanges
- Create database schema & data manipulation stored-procedures for each exchange
- What-If and Scenario analyses to study portfolio constructions and margin requirements across Prime Brokers and asset classes
- Coordinated with Traders & Quants for Scenario analyses, Value-at-Risk and Margin methodologies of various exchanges, portfolio optimization goals and implementation strategies with Traders and Risk Managers
Confidential
Senior C++ Risk Analytics Developer
Responsibilities:
- Implemented low latency high performance Whole-Sale Credit Risk Models in a C++ 11 Linux based System called Confidential (VAR Calculation Service) for daily internal risk monitoring and for regulatory Confidential reporting.
- Designed and implemented multithreading to meet performance goal of running millions of facilities for nineteen business lines of fifty-eight countries. Written custom Object Allocation Pool, applied Method Template, Adapter and Decorator design patterns for robust and flexible OOP implementation.
- Implemented pipelined multithreading to meet aggressive performance goals for various business segments and regions, their volatility surface calibrations, yield curve, spread curve, rating transition matrix, probability of default matrix and Loss-Given-Default matrix generations
- Implemented Asset-For-Sale OTTI (Other-Than-Temporary-Impairment) model, Whole-Sale Credit Value and Price Treatment Internal Model for loans and bonds for CCAR Stress Test.
- Written a C++ framework to calculate (from Macro Economic factors) rating transition ( Confidential ), probability of default (PD) and loss-given-default (LGD) matrices for Exposures at Default (EAD) calculations.
Confidential
Simulation System architect & Lead Developer
Responsibilities:
- Wrote this C++ 11, smart pointers and template based, multithreaded Low Latency and High Throughput Exchange Simulation System to simulate high volumes of messages from exchanges. It uses Monte Carlo simulation production to create combinations of messages to trigger targeted business logic processing. The system packs the generated messages (struct, FIX, SOAP, XML etc.) and feeds Feed-Handler System, in memory, by making API calls and gathers, normalizes, aggregates output, filters out selective noises and compares on demand fields using custom verification logic making dynamic binding based on intended verification methods.
- Built a C++ request-response multithreaded capture and playback system for Fixed Income Infrastructure team. Provided C++ APIs for Fixed Income Application Developers to instrument code by writing request and response to and from downstream systems to the simulation system APIs.
- Implemented following real-time C++ Technical Analysis tools for FX products: