Graham Walsh
Verified Expert in Engineering
C++ Developer
Wexford, Ireland
Toptal member since October 5, 2023
Graham is a senior C++ developer with extensive experience in investment banking, working on greenfield and legacy projects. He specializes in trading platforms, including foreign exchange and equity markets, and equity risk analysis. As an expert well-versed in direct interactions with traders and stakeholders, Graham's work ethic places paramount importance on rigorous testing to deliver the best quality product. Project work usually involves extensive Python and/or bash scripting.
Portfolio
Experience
- Parallel Programming - 13 years
- Linux - 10 years
- Algorithms - 10 years
- Software Engineering - 10 years
- Greenfield - 10 years
- Multithreading - 10 years
- Trade Finance - 7 years
- C++20 - 2 years
Availability
Preferred Environment
Linux, g++, Valgrind, C++20, Python 3
The most amazing...
...thing I've done was halving the time needed to test and release code by eliminating internal dependencies, allowing 10 developers to avoid delays.
Work Experience
Chief Engineer and Architect
RoundTower Artbitrage Trading
- Maintained and featured extension of crypto gateways. Enhanced and bugfixed Python 3 front end (Flask-based). Added new gateway support. Extended arbitrage strategy from manual to automatic (fully systematic trading). Managed AWS Linux instances.
- Designed and delivered a C++ framework to re-implement Binance exchange (real-time, static data feeds for regular and perpetual futures). Implemented order management system with DB integration for trade history/position management, etc.
- Completed the cleanup of the existing Python/front-end code. Implemented monitoring service to ensure 99% uptime (automatic restart of gateways and data feeds).
- Used REST and WebSockets exchange interfaces for static and real-time (market) data.
Senior C++ Developer
Bank of America
- Implemented, tested, and deployed multi-leg non-deliverable forward (NDF) Financial Information eXchange (FIX) orders. Functionalities included trade pricing, quote, execution, and lifecycle extended Python test framework for unit and feature testing.
- Provided lifecycle support from quote request to execution. Implemented a greenfield monitoring service.
- Used Jira, Jenkins, and CI/CD for the development process.
- Provided final-level support to developers on a rotational basis, which included being on call over weekends every two weeks for production deployment of new versions.
- Mentored junior developers and participated in code reviews and design decisions.
- Ensured all deliverables went live without issues in a highly complex environment with over 100 communicating microservices using C++.
Chief Engineer
Omnivend Systems
- Migrated stock management from "on machine" to real-time/centrally located. Implemented and deployed card payment support (versus cash only) to "POS" (Point of Sale/tap) devices. A REST architecture was used to manage over 100 kiosks nationwide.
- Worked on a major overhaul of the ineffective stock control software; day-to-day issues were fixed. Database optimization, automation of software upgrades to remote kiosks management of two developers.
- Oversaw successful deployment of major upgrades to all remote machines/devices. Automation tools are integrated into day-to-day operations versus previous manual and error-prone approaches.
Senior C++ developer
Bloomberg
- Solely managed the maintenance and enhancement of the London Metals Exchange gateway.
- Upgraded the gateway to support FIX dialect changes in back-end server. Added new tests to the regression/test framework to ensure correct functionality and non-regression.
- Upgraded various other gateways, Deutsche Börse and Euronext, as FIX dialect changes were published/updated by the exchange.
Senior C++ Developer
Societe Generale
- Deployed a portfolio pricing to 500-CPU data synapse grid solution that calculated the Greeks, allowing traders to maintain delta-neutral positions. The significant speedup was beneficial to trading desks and operating centers.
- Migrated derivatives and risk pricing from a local, standalone system to a highly parallel grid, including classic derivatives such as options, swaps, and futures, and over-the-counter (OTC) derivatives such as florals and warrants.
- Ensured price convergence to guarantee the accuracy of the calculations.
- Deployed to production and provided second-level support, which resulted in a system that still runs smoothly.
- Introduced the Boost framework to the development team. Its adoption enabled massive quick wins and a safer and cleaner codebase.
Consultant C++ developer
IONA Technologies
- Started initially in the support team (straight out of college). Was promoted to a team of highly skilled consultants from a very early stage. Was deployed to enterprise clients to design and implement distributed architectures.
- Provided expert consultancy to blue chip companies (correcting client code errors, debugging and fixing client code crashes, optimizing client code, etc.).
- Was part of startup consultancy team in three offices (Paris, Perth, Sydney). A senior presence was required in each startup office where I worked as the lead consultant.
Experience
Implementation of Shared Pointer
https://github.com/grahamers/shared_ptr/Education
Honors Degree in Computer Science
Trinity College Dublin - Dublin, Ireland
Certifications
Advanced C++ Programming
Sun Microsystems
Advanced C++ Programming
IONA Technologies
CORBA
IONA Technologies
Skills
Libraries/APIs
PostgREST
Tools
Valgrind, Microsoft Visual C++, Git, Jenkins, IBM Rational ClearCase, SGI Workstation, RabbitMQ
Languages
C++, C++17, C++98, C++11, C++14, C++20, XML, SQL, Java, Java 8, C#, Python, Visual Basic 6 (VB6), Go, Python 3
Paradigms
Parallel Programming, Agile, Testing, Object-oriented Programming (OOP), Best Practices, Continuous Delivery (CD), Continuous Integration (CI), Test-driven Development (TDD), REST, Scrum, Unit Testing, Best Practices in Design
Platforms
Linux, Software Design Patterns, Solaris, HP-UX, AIX, Amazon Web Services (AWS), Docker
Frameworks
Boost, Google Protocol Buffer, Flask
Storage
Sybase, SQL Server 2016, PostgreSQL
Other
g++, Software Engineering, Legacy Code, Greenfield, Multithreading, Memory Management, Algorithms, Grid Computing, Shell Scripting, Trade Finance, Risk Analysis, Symphony, TCP/IP, APIs, Hardware Design, Mathematics, Digital Logic, CORBA, TIBCO DataSynapse, FIX Protocol, purify, Distributed Software, Large Scale Distributed Systems, Dynamic Load Balancing, API Design, Performance, Debugging, Architecture, UDP, Scripting, Uptime Monitoring
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