Principle Architect2017 - PRESENTHomelyfe
Technologies: C#, .NET Core, Azure, ASP.NET, Web API, SQL Server, F#, Entity Framework, REST
- Built several RESTful C# ASP.NET Web API services to allow quoting, purchase, management of insurance policies for consumers. Deployed to Azure, using EntityFramework to query and update Azure SQL Server.
- Designed and built a pricing engine web API in C# ASP.NET accepting customer attributes and returning an insurance premium. Large static tables of data retrieved from Azure Blob and Table storage and cached in memory efficient data structures to provide ~3ms response time. The completion of the project allowed a home insurance product to launch on time following the failure of a third-party API. The Pricing Engine web API involved complex calculations that needed to be correct and very reliable. This was achieved by decomposing the calculation into components and unit testing each possibility separately, then writing code that combined these individual tests into a full regression test that could be run against the service.
- Designed and built an inference engine web API in C# ASP.NET Core to pre-fill answers to questions based on previous answers. This enabled the technical delivery of the Homelyfe mission, "insurance made easy." Dramatically reduced the cost of quoting and marketing by replacing third-party APIs while improving accuracy.
- Mentored junior developers.
Team Lead2016 - 2016Silverbear
Technologies: C#, Dynamics CRM, SQL Server, VSTS, REST, SOAP
- Developed Dynamics CRM plug-ins and interfaces via the API for extending the functionality of the core product.
- Built REST- and SOAP-based APIs for external systems to interface with our custom Dynamics CRM data model.
- Wrote C# integrations between Dynamics CRM and external third-party systems including Sage, Open Accounts, Exchequer, and Access Dimensions.
- Identified technical debt and formulated an incremental plan to re-factor.
- Sat on a company-wide technical architecture board to decide on best development tools and processes.
Founder2015 - 2015Malbec Trading
Technologies: C#, CUDA
- Drove the business to provide investment advisory and management services for a specific client.
- Developed the full life-cycle of all systems, implemented primarily in C# .NET.
- Developed high reliability real-time signal generation, portfolio optimization, and trade execution systems.
- Built custom data compression algorithms to allow fast random access to large quantities of historical trade data (~10 billion ticks) from exchanges for back-testing tools.
- Created GPGPU machine learning optimization algorithms written in CUDA exploiting SIMD architecture to allow massively parallel evaluation of millions of trading strategies per second.
- Developed rich WinForm GUIs for data analysis and visualizations using a model-view-controller framework.
- Utilized custom statistical and cross-validation methods to address over fitting in machine learning algorithms.
- Built all systems on top of a functional reactive data flow programming library designed and implemented over the course of four years. Key features are the lazy and partial re-evaluation of nodes in the function composition graph and higher order functions allowing self-modification of the graph.
Developer, Research Analyst, and Portfolio Manager2011 - 2015Callisto Asset Management/Solo Capital
Technologies: C#, CUDA, Excel VBA
- Built a custom back-testing platform with emphasis on cross-validation to prevent over-fitting.
- Created tools to view, clean, aggregate, and update 18+ years of historical tick data.
- Built real-time automated trade generation and routing for the FIX engine for execution.
- Made and documented a scientific discovery of novel trading strategies using machine learning and statistical inference methods to maximize robustness.
- Produced many human understandable models diversified across time and market.
Equity Derivatives Trader2009 - 2011JP Morgan
Technologies: Excel VBA, SQL, Propiatery tools
- Priced and hedged financial derivatives.
- Coded an Excel VBA system to construct and maintain a relative value arbitrage portfolio for single stocks vs. index options correlation positions.
- Implemented a correlation relative value arbitrage book.
- Built tools and conducted research projects to identify market inefficiencies.
Senior Developer2007 - 2008Lehman Brothers
Technologies: C#, Java 6, SQL (Sybase, Oracle)
- Enhanced features, extended functionality, fixed bugs, and maintained an extensive existing code base for systems providing risk and PnL numbers to traders and risk managers.
- Successfully improved speed and reliability of live data for a trading desk.
- Provided overnight support for extensive batch processing systems integrating with numerous internal and external counter-parties.
Co-Founder2003 - 2007Magio
- Designed and implemented bookings management software for hotels, conference centers, and activity centers.
- Led the development team working with a business partner.
- Created a C# ASP .NET web interface with SQL Server back-end allowing staff to make bookings, create invoices, print confirmations, and generate customizable management reports.
Developer2002 - 2003Citigroup
Technologies: C#, Java, C++, Perl, Tibco, SQL (Sybase)
- Worked on systems providing risk and PnL numbers to traders and risk managers in equity derivatives.
- Provided overnight support duties for batch processing systems.
Developer and Researcher1999 - 2002University of Bristol
- Worked on an industrial sponsored research project as part of my final two years of a mechanical engineering degree.
- Modeled abstractions of the engineering design process that was used to organize and retrieve information about actual engineering projects.
- Implemented the project in Java using POET (an object-relational database mapping) with Oracle back-end.
- Continued to work on the project as a contractor for two years after graduation.