Vancouver, BC
An accomplished Full-Stack Software Engineer and Technical Leader with 20 years of experience in designing, building, and scaling complex software systems. Drives strategic technical direction, leads high-performing teams, and translates product requirements into robust, scalable solutions. Passionate about using software to solve important problems.
Languages: Python, TypeScript, Node.js, Java, R
Databases: PostgreSQL, MySQL, Redis, Cassandra
DevOps: Terraform, Docker, OpenTelemetry, AWS, GCP, Datadog, PagerDuty
Senior Software Engineer at Uplight from October 2021 - Present
- Led technical work on analytics products, using Databricks and Spark to derive insights from large datasets.
- Functioned as a key capacity engine, individually closing 1/3 of team story points and increasing team velocity by 50% through hands-on pairing and mentorship of junior engineers.
- Reduced PagerDuty alerts by 90% by leading a working group to streamline incident management and alert configurations.
- Drove critical cloud migration efforts, successfully transitioning infrastructure and services for key projects from AWS to GCP.
Technical Lead at Thrive Health from December 2017 - October 2021
- Led and mentored 6 direct reports, responsible for foundational infrastructure and strategic technical direction.
- Scaled critical APIs for the Canada COVID-19 app to support millions of users by implementing load testing and building a robust caching layer.
- Architected and implemented access control lists, ensuring robust privacy and preventing data breaches for sensitive health data.
- Developed a scalable event tracking system that maintained data residency in Canada and provided vital insights to public health officials.
- Improved team processes by facilitating retrospective meetings and 5 Whys sessions, fostering continuous improvement.
Technical Lead at Clir Renewables from April 2017 - November 2017
- Led a team of 3 software developers in building a wind farm analysis tool (Python backend, React frontend).
- Established core infrastructure, including a build server, user tracking, and secure secret management.
- Optimized AWS deployment by restructuring security groups, IAM roles, and VPC subnets for enhanced security and performance.
- Migrated time-series data from Elasticsearch to Redshift, significantly improving data reliability and query speed.
Principal Software Engineer at Pulse Energy (Acquired by EnerNOC then Yardi) from September 2008 - April 2017
- Designed and built a high-performance time-series database in Java using Cassandra, managing terabytes of smart meter data.
- Developed a sophisticated tariff engine in Node.js for accurate energy cost modeling.
- Patented an algorithm for forecasting energy consumption based on historical conditions and weather data.
- Automated cloud infrastructure provisioning in EC2 using Chef recipes.
- Established a comprehensive monitoring stack (Logstash, Kibana, Graphite, Statsd, custom Graphiti-fork) to ensure system stability and performance.
- Optimized code across multiple languages (Java, Python, Ruby, R), resulting in reduced memory footprints and faster execution times.
- Mentored junior developers on best practices in code design and software development lifecycles.
- Managed technical recruiting processes, including designing and evaluating coding challenges.
Software Developer at Business Objects (Acquired by SAP) from July 2006 - September 2008
- Developed server-side components in C++ and Java
- Feature owner of licensing technology and Java container server
- Quickly learned new codebases and helped with features that were behind schedule
Programmer Analyst (Co-op) at Morgan Stanley from August - December 2005
- Worked for the Credit Derivative Swap (CDS) team
- Created C# GUI component to view historical data
- Integrated a third-party distributed cache to store real-time market data
Software Design Engineer in Test (Co-op) at Microsoft from January - April 2005
- Created quality measurement tool for MSN Newsbot that revealed several weaknesses
- Improved Newsbot’s algorithm to return more relevant content for Canadian users
Spellie - February 2022
- Created popular Wordle clone with over 15,000 daily users.
- Kept design simple, with Alpine.js for rendering suppport, GitHub hosted content, and Amplitude for user tracking.
EV Accessibility Map - April 2024
- Analyzed electric vehicle charging station data to assess highway accessibility.
- Leveraged GeoPandas, Jupyter notebooks, and Kepler.gl to visualize geospatial data.
Bachelor of Software Engineering at University of Waterloo from September 2001 - June 2006
- Dean's Honours List
- Valedictorian