416 356 2848
Craig has over 20 years of experience in finance and banking technology, and has worked for all of Canada’s big 5 banks. He has built systems in insurance, risk management, FI & F/X trading, and online banking, and has experience managing development teams of many sizes.
He has a passion for continuously improving development processes and practices to build high-performing teams.
August 2022 - present
TD Canada Trust (August 2022 - present): Technical Director working with one of Canada’s Big 5 banks to modernize their online banking platform for both mobile and web. Responsible for identifying technological and architectural improvement opportunities, defining the target state architecture, working closely with engineers, and designing migration strategies to minimize business disruption.
September 2018 - August 2022
Central1 (May 2022 - August 2022): Engagement lead working with a Canadian provider of digital banking and payment services working to identify improvements to their development process. Worked closely with the financial institution to understand and document their process, identify gaps and bottlenecks, and propose options to increase the throughput of their end-to-end project delivery.
PC Financial (September 2018 - May 2022): Director of Engineering and application architect responsible for creating a new online retail banking platform for PC Financial. Provided technical direction for a team of 30 back-end developers and 10 QA engineers, and co-ordinated integration activities with all vendors on the project including front-end (web, mobile), identity management, marketing and book-of-record systems.
Introduced several important process improvements, including:
- Trunk-based development
- Feature toggles
- End-to-end API test automation
- Centralized API contract definitions
Worked closely with DevOps engineers on the deployment pipeline to minimize lead time while preserving reliability and quality. Strived to eliminate all manual steps in the deployment process.
Co-ordinated security audits and penetration testing initiatives, and worked with the development team to ensure the timely resolution of security defects.
Introduced several key technologies including Redis, Consul, Vault, and Temporal.
March 2016 - September 2018
Successfully delivered MiFID II compliance for the commodities business, with tight deadlines and ambiguous requirements. Worked closely with business representatives and operations to ensure compliance obligations were met.
Worked with TD Securities’ retail precious metals business to grow their business by offering precious metals directly to customers for home delivery.
October 2013 - March 2016
Solution Architect for Canadian banking clients, working on projects in
- Risk management with “big data”
- Retail mortgages
- DevOps and deployment automation
CIBC WORLD MARKETS
June 2012 - November 2013
Senior developer for a high-frequency, low-latency foreign exchange electronic trading platform built in Java. The application interfaces with ECNs, banks, and FIX channels, and auto-hedges its positions.
August 2009 - June 2012
Agile technical team lead for multiple Canadian banking clients, working on projects in
- VaR reporting
- Buy-side portfolio optimization with “big data”
- Secure custodial platform for institutional investors
ROYAL BANK OF CANADA, CAPITAL MARKETS
July 2004 - August 2009
Multiple roles ranging from senior developer to technical team lead in the Fixed Income business.
- Low-latency electronic trading platform for Fixed Income products
- Intraday risk reporting
- Real-time position reporting across multiple source systems.
August 2003 - July 2004
Developed a data warehousing application that processed data from dozens of trading systems in a variety of business units. The system processed the data in a grid-style architecture, stored it, and provided downstream systems with extracts and reports.
- 2-Year Diploma in IT (with distinction), NSW College of TAFE, Australia
- Higher School Certificate (87.55%), St Patrick’s College, Sydney