C++ Developer in Seattle, WA, United States
Freelance Senior Software Engineer2015 - PRESENTToptal Clients
Technologies: Haskell, AWS, Linux, Python, SQL, Domain-specific language
- Personally implemented significant portions of the API back-end for clients' core products.
- Organized and led a team of five engineers to meet milestones on time.
- Maintained, optimized, and extended the implementation of proprietary DSLs.
- Designed and implemented ETL architectures.
- Implemented a build farm which managed all builds and deployed Git branches in sandbox environments.
- Successfully optimized the back-end servers to meet performance targets.
Founder2015 - PRESENTCooper Process Automation, LLC
Technologies: Haskell, AWS, Python, Bash
- Worked with traders, developers, and managers to streamline workflows and improve outcomes for high-frequency trading strategies.
- Designed a product that encapsulates our solutions to common workflow problems.
- Conducted market research for other potential applications of this technology.
Quant Developer2013 - 2015Chimera Securities, LLC
Technologies: C++, Python, MySQL
- Worked with a non-technical trader to implement new ideas and strategies in C++ with microsecond response time.
- Created a robust high-frequency trading platform from scratch with 99.5% up-time.
- Created a tick database and analysis framework in Python.
- Created a simulation and backtesting environment. The system was profitable from Month 1 with 90% winning days.
- IdylFin (Development)https://github.com/charles-cooper/idylfin
Java client for Yahoo Finance API.
- Beacon - A Decentralized Asset Exchange Protocol (Development)http://beaconexchange.io
Beacon exchange is a peer-to-peer protocol for quotation and exchange of cryptocurrency assets. The Beacon network is decentralized, not rent-seeking, permissionless, robust, fast, impartial, and open source. It removes the requirement for an external matching engine, combining an off-chain network for liquidity discovery with on-chain settlement and arbitration mechanisms.
- Contributions to the Vyper Compiler (Development)https://github.com/ethereum/vyper
Past and ongoing contributions to the Vyper language compiler (a safe language targeting the Ethereum Virtual Machine) including bugfixes, spec work and feature implementations (e.g. VIPs 300, 1019, 1020, 1150, 1198).
- Low-latency Order Book (Development)https://github.com/charles-cooper/itch-order-book
An order book to keep track of orders and prices, geared for high-frequency trading. It processes each tick in ~63ns. It is able to achieve this speed by using arrays and custom memory pools, skipping malloc and tree/hashtable type structures entirely.
For a more detailed architecture description, please see https://quant.stackexchange.com/questions/3783/what-is-an-efficient-data-structure-to-model-order-book/32482#32482, and the description in the codebase itself.
- EC2 Cluster for Distributed Computation (Development)
Used Terraform to manage an EC2 cluster internally to distribute financial backtest computations.
ParadigmsFunctional Programming, Object-oriented Programming (OOP), Test-driven Development (TDD), Real-time Systems
PlatformsLinux, AWS EC2, Ethereum, Amazon Web Services (AWS)
OtherHigh-frequency Trading (HFT), Cryptocurrency, NixOS
Libraries/APIsPandas, React, Node.js, NumPy, D3.js, jQuery
ToolsVim Text Editor, Git, Terraform
StorageRedshift, PostgreSQL, MySQL
- Bachelor of Arts degree in Mathematics and Linguistics2009 - 2012University of Washington - Seattle, WA