Graham - Expert Ingénieur de développement C++
Ref : 220904W001-
Domicile
61000 ALENÇON (Irlande)
-
Profil
Ingénieur de développement (54 ans)
-
StatutFreelance
-
Senior C++ consultant for “Instinct FX”.
Bank Of America FX Trading (Instinct FX)Jan 2019 - aujourd'huiThe trading platform runs 24/7 in master/slave configuration across New York/London and Tokyo sites. Day to day work is on C++14/Linux using Git for source code control and Jenkins continuous integration. Sybase DB.
Implementation, test and deployment of Multileg NDF FIX orders. Implementation exposes pricing/ quoting/execution and auditing of in/out bound FIX requests (QuoteRequest, NewOrderMulti and ExecutionReport). Complete workflow solution, from “quote request”, “pricing”, “trade”, “execution” through to “auditing”.
Solely responsible for 100% greenfield implementation from requirements gathering, design, coding, test and deployment to production for “monitoring service”. The service (both synchronous and asynchronous in nature) monitors access to FX platform, alterations to trading permissions, addition of new roles/permissions and (de)allocation of same to traders/sales team.
Implementation of messaging/alerts microservice using internal text-based messaging service (key value pair). Service provides alerts when invalid quote requests/trading executions are requested. E.G. trading on bad stale quote, quoting request on bad currency pair, trading on duplicating client order ID. Implementation required code additions to be FIX microservice and trade execution microservice.
“Business As Usual” work in parallel (bug fixing), front office support (direct contact with front office/stakeholders), -
Senior Engineer/Principal Engineer/Architect.
IHS MarkitJan 2018 - Jan 2019Involved in all aspects of greenfield primarily C++ implementation of trade/clearing platform for leading Japanese bank (Some Java 8 development work). Development environments are Linux and Windows based. Continuous integration on Gitlab with Docker used for containerization.
-
Chief engineer, C++/C#/Java
OmnivendJan 2017 - Jan 2018Java maintenance and enhancement of Java/C++ services for online transaction processing. SQL server maintenance, migration of existing architecture to more cost-effective real-time solution (via T-SQL stored procedures). Development environment; Visual C++, Microsoft SQL Server and Microsoft Visual C#.
-
Senior low latency C++ developer for trading platform
BloombergJan 2016 - Jan 2017Low latency C++ development/maintenance/DevOps to all aspects of trading gateways. DevOps duties included maintaining and enhancing over 50 supported gateways (worked primarily with LME), Duties varied from real-time market data processing, FIX protocol adjustments/changes (based on new specifications or bugs) and trade/order processing. Hands on all aspects of development from requirements analysis, implementation/test to RPM package release (the RPM was then handed over to QA team). Agile development based on Jenkins continuous integration with GIT source control. The gateway packaging was migrated to RPM which needed to be coded and validated before QA handover.
-
Senior C++ developer TCP-IP CORBA/Linux
Credit SuisseCredit Risk (project cut due to CS losses).Jan 2016 - Jan 2016Development and maintenance of RAD "Fundamental Review of Trading Book". Low level TCP-IP performance/bottleneck improvements. Refactoring of TCP-IP socket library, architecture review of application critical CORBA "Database Server”. Extension of Oracle SQL meta data tables for FRTB infrastructure. Scrum based development.
-
Senior Core Java/Linux/Windows developer.
Structure101Jan 2013 - Jan 2015Greenfield core java (JDK 6 and 8) environment. Low level bytecode analysis via ASM parser and generation of “directed graph” data structures. Support for Java 8 lambdas, default methods etc. Licensing code rewrite. Highly threaded and extensive design patterns in codebase. Development of Web/HTML clients to RESTful Jetty server over HTTP. The D3 toolkit is used on the front end browser over HTML/JavaScript. Development work both on the client (HTML/D3) and server (core java) side. Full life cycle development, from analysis, design and implementation to test and release. AGILE work environment with Jenkins continuous integration.
-
Senior C++/Java/Linux developer for Credit Risk (Value at Risk).
Natixis Investment BankJan 2012 - Jan 2013C++ development and maintenance/DevOPS of VaR (Monte Carlo and parametric) calculations as well as “banking compliance” stress tests. Integration of quant “negative rates” C++ model. Development, and production support /improvement of unitary tests and general maintenance of application along with feature enhancements. C++, XSL, Java and Perl development environment alongside Datasynapse grid. Some SWING work for end user GUI. Perl scripting for “close of business” integration/parsing of front office XML (XML generated by both Summit and Murex).
-
Senior C++/Linux developer for algorithmic trading systems.
Chevreux, ParisJan 2012 - Jan 2012Linux based C++ development for C++ server algorithmic processes. Rewrite of “Iceberg” strategy based on new infrastructure and trader specifications. Maintenance and enhancement of existing C++ algorithmic trading strategies. FIX protocol tracing/debugging. High performance and minimal latency programming.
-
Senior C++/Java Linux/Solaris/Windows developer, Trade and Market Data capture.
BNP Investment BankJan 2010 - Jan 2012“Multi Venue” trading order book and market data capture. Extended server(s) to provide derivative order support (as shared library plugin) capturing market data (over Tibco Rendezvous) and trade data (over TCP-IP/CORBA). The server records order/market data and provides real time access for connected client /algorithmic trading systems.
Optimization of threading code and maintenance/enhancement of real-time message delivery (Tibco) subsystem. Extended test environment to provide “true” production system testing. Repair “legacy” stability issues. Provided easy to use C++ interface for new unit tests and integration with continuous integration system (Bamboo). Migration of C++ and Java CORBA “Orbix” modules to TAO/ACE and Jacorb infrastructure Design and development of C++ code generation utility (using java) to expose “STL friendly” client interface library. -
Senior Java/C++/Linux consultant, Credit Risk (VaR Exotics).
Societe Generale Investment BankJan 2009 - Jan 2010The production environment runs java servers alongside a 2500 CPU Symphony C++ grid. The architecture operates in conjunction with numerous backend databases (Oracle/Sybase).
Deployment and maintenance of multithreaded Java/C++ service exposing Quant volatility interpolation service (implemented over JNI/SWIG). The service permits 5 levels of volatility to be extracted from 260 based on historical/stressed market data, and subsequent interpolation to be performed on pricing results. Extensive convergence testing (using excel) for entire “exotic” product scope (Monte Carlos and PDE’s). Integration of new pricing parameters in direct liaison with the Quant team.
Summary:
Over 20 years Investment Banking experience in Front and Middle Office. Senior Analyst Programmer/DevOPs engineer, expert at C++ and very competent/ C# & Java Development on Linux/Unix/Windows. Proven at working with Senior Stakeholders, Quants, Product Control and Traders. Have worked in the following investment banks; Bank Of America, Societe Generale, BNP, UBS, Credit Agricole, Cheuvreux, Natixis and Credit Suisse.
Winner of “Showcode” C++ coding competition, won prize of £2000
********:li:activity:6440151636391399424
Skills:
C++, JAVA, SQL (Oracle/Sybase), Boost, Bash/KSH, Design Patterns, Grid Computing (Symphony & Datasynapse), CORBA/TCP-IP networking, Client-Server architectures, Unix systems programming (Linux, Solaris, HP- UX), Multi-Threading/concurrency, data structures, GDB, Eclipse, Visual Studio, Ant, Git, CVS, ValGrind, ClearCase, Purify, Quantify.
Have worked on personal project with senior Quant Analyst in Zurich (Algorithmic trading based on real time market data/moving averages). Implemented in Python, actively learning/coding Python in spare time/weekend.
Over 20 years Investment Banking experience in Front and Middle Office. Senior Analyst Programmer/DevOPs engineer, expert at C++ and very competent/ C# & Java Development on Linux/Unix/Windows. Proven at working with Senior Stakeholders, Quants, Product Control and Traders. Have worked in the following investment banks; Bank Of America, Societe Generale, BNP, UBS, Credit Agricole, Cheuvreux, Natixis and Credit Suisse.
Winner of “Showcode” C++ coding competition, won prize of £2000
********:li:activity:6440151636391399424
Skills:
C++, JAVA, SQL (Oracle/Sybase), Boost, Bash/KSH, Design Patterns, Grid Computing (Symphony & Datasynapse), CORBA/TCP-IP networking, Client-Server architectures, Unix systems programming (Linux, Solaris, HP- UX), Multi-Threading/concurrency, data structures, GDB, Eclipse, Visual Studio, Ant, Git, CVS, ValGrind, ClearCase, Purify, Quantify.
Have worked on personal project with senior Quant Analyst in Zurich (Algorithmic trading based on real time market data/moving averages). Implemented in Python, actively learning/coding Python in spare time/weekend.