James Cater
Verified Expert in Engineering
FX Developer
London, United Kingdom
Toptal member since October 2, 2019
James is a developer with 20 years in the banking sector delivering multi-tier global systems across enterprises. With extensive experience in front/middle office as well as software start-ups, he's a hands-on professional with deep technology experience across system design and programming. He enjoys working on complex systems without compromising performance.
Portfolio
Experience
- Trading Systems - 20 years
- FX - 20 years
- SQL - 15 years
- C# - 15 years
- C++ - 15 years
- DevOps - 10 years
- MQL4 - 5 years
- Equity Derivatives - 5 years
Availability
Preferred Environment
Microsoft SQL Server, Oracle, Linux, Windows, .NET, C#
The most amazing...
...thing I've coded was a front office trading system, still a top seller 15 years later.
Work Experience
Founder
Blahtech Limited - Founder
- Founded a fintech startup based in London creating professional grade indicators and trading algorithms for the retail trading market.
- Oversaw the design, development, and marketing of a multi timeframe zone indicator featuring trend, swing and engulfing detectors. Technologies C++, C# MQL4, Metatrader, NinjaTrader, Windows, Perforce.
- Headed the design, development, and marketing of a volume and cluster indicator. Inspired by Jim Dalton’s book “Mind Over Markets,” this indicator delivers features only previously available on professional trading platforms. Technology: C++, C#, MQL4, Metatrader, NinjaTrader, Windows, Perforce.
- Designed and developed a suite of indicators to back up the flagship products including Daily Range, Fisher Transform, Moving average, and Candle Timer. Technologies: C++, MQL4, Metatrader, NinjaTrader, Windows, Perforce.
- Managed the design and development of several custom trading algorithms. Strategies included Swing trading, Daily Divergence, Day Range Fill. Technologies: C++, C# .NET, MQL4, Metatrader, NinjaTrader, Windows.
- Developed a continuous build and test environment. Technologies: Team City, C++, C#, MQL4, Windows, Perforce.
- Worked with other founders to create online video training courses on YouTube and Udemy.
Senior Developer (Contract)
Barclays Capital plc - Equity Derivatives IT (Front Office)
- Designed and delivered a C# framework transforming Sparx EA UML models to code featuring model parsing and code generation of 3,000 classes, object relational mappings, and all database scripts. ICE layers, Google Protobufs, and Spring framework files completed the project. Technology: C#, .NET, Sparx EA, UML, SQL, Java, Spring, ICE.
- Designed and developed a C# server to process trade tickets in real-time and interface with bank-wide ticket printing service. Technology: C#, .Net, Windows.
- Jointly managed the design and maintenance of the Team City continuous build environment featuring maven builds for Java servers, 40 C# client apps, unit tests and auto-deployment of binaries. Integrated with perforce branch control. Technology: Team City, maven, ms build, C# Java, Perforce.
- Implemented automatic database migration scripts for the entire data model saving 6 man-months a year. Technology. C#, .NET, SQL, Oracle, Team City.
- Oversaw many areas of core application performance. In particular, the database object mapping layer. Optimizations SQL tables, sub selects, indexes. network packing and application code. Technology: C#, .NET, Java, Oracle, Linux, Windows.
- Reduced the memory footprint of the Windows app to fit within the 3Gb limit. The fix required a test suite with thousands of permutations to guarantee safety. Technology: Visual C++, Windows, Sybase.
Technical Architect (Contract)
Barclays Capital plc - Market Risk IT
- Managed the technical architecture of multiple Risk systems. Technology: C#, .NET, C++, Web Services, SQL Server, Sybase, Windows, UNIX, Clearcase.
- Delivered the technical design and working prototypes for a single unified market risk system featuring a multi-threaded application tier with shared data caches, the real-time risk engines were designed to run in-memory data queries and risk processing. Technology: C# .NET, Web services, SQL Server, Windows, Clearcase.
- Delivered the technical design and prototypes for a single unified market risk database. It features a terabyte partitioned database model with 200 days history and versioned snapshots. Technology: SQL Server, Windows, Clearcase.
- Designed and delivered a greenfield project to generate market risk scenarios for use in front office Risk engines. I lead a small team to develop a multi-threaded web service with an ASP.NET GUI and SQL server back end. Technologies: C#, SQL Server, Windows, Clearcase.
- Headed end-to-end performance analysis of an overnight batch system. Identified critical paths, SQL tables, stored procedures, and indexes. Technology: C++, UNIX, bash, SQL, Sybase, Clearcase.
Technical Consultant (Contract)
ABN AMRO – Credit and Market Risk IT
- Prototyped an application to calculate Issuer Risk for 2m basket trades. Implemented in C# and SQL, this reduced load and calculation time from 2 hours down to 10 minutes. Technologies: C# SQL Server, Windows.
- Worked with the front office development team to deliver real-time trade interfaces using IBM Message queue: Technologies: C# .NET, IBM Message queue, Windows.
- Oversaw analyzing and performance tuning of Adaptiv in conjunction with Sungard’s development team. Solutions included inlining SQL Text fields, changing indexes, de-normalization of reporting data, and implementing client-side data caches which reduced the batch time from 15 to 4 hrs.
- Led technical review and acceptance of Adaptiv Analytics Monte Carlo architecture, including grid specifications and workflow design. Technologies: Sungard Adaptive, SQL Server, Windows.
- Reviewed the technical architecture of a tactical solution for ABN Amro Hedge fund business.
Vice President/Technical lead (Permanent)
Credit Suisse First Boston - Credit Risk IT
- Led the bank-wide system processing 2 million trades per day from 300 applications with 1,000 users. Responsible for delivering all credit risk processing across CSFB. Technical lead for a team of 15 developers across multiple projects. Technology: C++, C#, .NET, UNIX, Windows, SQL, Sybase.
- Managed a small team that redesigned and developed replacement real-time servers. Implemented using multi-threaded C# servers with object replication and backup databases. Reduced response time from 2s to 0.1s. Technology: C# .NET, Windows, UNIX, SQL, Sybase.
- Delivered the first grid-based Monte Carlo simulation within the bank. I managed a small team of developers to integrate the Quic simulation engine. Technology: C#, .NET, Web Services, C++, Windows, UNIX, Purify, Quantify, SQL, Sybase, Quic, Data Synapse.
- Designed and delivered a new batch processing risk engine. The solution was a multi-threaded C++ application designed to calculate and aggregate Mtm, notional, settlement and potential exposure. My team delivered this project on time and to budget. Nightly batch time was reduced to 2 hours, a 10x improvement. Technology: C++, Purify, Quantify, SQL, Sybase, UNIX.
- Jointly planned and executed a significant database upgrade. Migrated global databases situated in Zurich to 64 bit Sybase 12.5 including adding an automated DR system. Project involved 10 developers and 5 systems admin. Technology: C++, SQL, Sybase, UNIX.
Senior Developer (Contract)
Garban Intercapital – Trading IT
- Improved system startup and transaction rates. Solutions included oracle host arrays, reduction of sub-selects, removal of nested loops, inlining, and optimizing critical sections. Technology: C++, UNIX, SQL, Oracle, Solaris, Quantify, Purify.
- Identified performance bottlenecks. Ported application from Dec UNIX to Solaris for Purify and Quantify analysis. Technology: C++, UNIX, Solaris, Quantify, Purify.
- Improved the development life-cycle. Implemented auto-deployment of binaries to testing and production systems: Technology: C++, UNIX, bash, gmake.
Technical Lead/Technical Architect (Permanent)
IQ Financial Systems - Trade IQ
- Oversaw all technical debt and technical design decisions across multiple teams (40 developers 3m lines of code). The system was designed to operate in a 24x6 configuration with a thin client front end and a globally replicated database. Support for trade capture, pricing, auto trading, risk management, settlements processing, and credit limits; Technology: C++, Motif, Windows, UNIX, SQL, Oracle, gmake, bash, awk, RCS, COM, Purify, Quantify, RTR, Reuters TIB, SWIFT.
- Redeveloped the front end of the trading platform with over 100 capture, blotter, and data panels. Fully responsible for the design, development, and delivery of Windows thin client GUI to clients. Technology: Visual C++, COM, Windows, C++ UNIX, SQL, Oracle.
- Re-architected the trading system from a two-tier system to n tier platform. Responsible for the design and development of middle-tier servers between the thin client and database tiers. Technologies: C++ UNIX, SQL, Oracle, RTR, Purify, Quantify.
- Designed resilient master-slave replicated database servers. Responsible for the development of transaction replication functionality using RTR. Technology: C++ UNIX, Purify, Quantify, SQL, Oracle, RTR.
- Led performance tuning to support 1,000 users and 1 million trades. Asynchronous servers, caches, parallel processing, indexing, and object model redesign. Technology C++, UNIX, SQL, Oracle, Purify, Quantify.
- Developed a company-wide source control and build environment featuring grid-based builds with automated testing and deployment. Technology: gmake, bash, awk, RCS.
Developer/Technical lead (Lighthouse trading platform)
Rolfe and Nolan Plc - Lighthouse
- Managed the full development cycle and delivery to customers. Functionality included Spot, Fwd, Swap, and FRA arbitrage types with trade capture and position blotters. Implemented in C++ with a two-tier client-server architecture and UNIX/Motif front end communicating with a resilient transaction-based server. Technologies: C++, UNIX, Oracle, RTR, gmake, bash, Purify, Quantify.
- Developed a REPO trade capture and risk management system. Responsible for delivery of data model, object model, user interfaces and analytics calculations. Technologies: C++, UNIX, Oracle, gmake, bash, Purify, Quantify.
- Analyzed and resolved several bottlenecks including database redesign, object caching, and object packing Technologies: C++, UNIX, Oracle, Purify, Quantify.
- Developed and tested a market data management tool with functionality including FX rates, security prices, yield curves implemented with a GUI front end and C++/SQL back end linked to Reuters. Technologies: C++, UNIX, Motif, Oracle, Reuters TIB.
- Implemented a fully automated parallel build environment, including automated install scripts for rapid release to testing and customers. Technologies: gmake, RCS, bash, awk.
Developer
Lotus Development Inc - 123 and AmiPro
- Oversaw the full development cycle and delivery of word processor to Lotus UNIX customers globally. Tasks included porting Borland C++ to UNIX C++, evaluation of graphics libraries, development of user interface (X-Windows), implementation of build, test and runtime environments. Technologies: C++, bash, gmake, Motif, X-Windows, UNIX, Solaris, AIX, Purify, Quantify.
- Managed development testing and delivery to Lotus global release teams. Tasks included porting 500,000 lines C, system APIs, build system, test environment, and graphical interface. This was followed by bug fixing, automated and manual testing prior to global release. Technologies: C, bash, gmake, UNIX, SunOs, Solaris.
Experience
Blahtech Limited - Founder
https://www.mql5.com/en/users/jamescater/sellerBarclays Capital - Equity Derivatives IT (Front Office)
https://www.investmentbank.barclays.comTrade IQ/Finacle Treasury
https://www.edgeverve.com/finacle/treasury-solutionEducation
Courses in in Computer Science
University Of Manchester - Manchester, England
Skills
Libraries/APIs
Protobuf
Tools
TeamCity, Visual Studio, Perforce, NinjaTrader, Microsoft Visual C++, Autosys, Synapse, GNU Make, Oracle Tuxedo, SunOS, IBM Rational ClearCase, GitHub, IBM MQ
Languages
C#, MQL4, MQL5, C++, Bash, SQL, UML, Swift, C, Java, AWK
Paradigms
Testing, Agile, Scrum, DevOps, Test-driven Development (TDD)
Platforms
Windows, Unix, Oracle, Solaris, MetaTrader, AIX, Linux
Industry Expertise
Trading Systems
Frameworks
.NET, .NET Core, Windows PowerShell
Storage
SQL Server 2017, Sybase, Microsoft SQL Server, MySQL
Other
FX, Performance Tuning, Equity Derivatives, Credit Risk, Market Risk, Web Services, ICE, SunGard, QUIC, GRID, Motif, Rich Communication Services (RCS), COM, X11, TIB Market Data Distribution System
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring