Contact
denis.r.cormier@gmail.com
https://deniscormier.itch.io
https://github.com/deniscormier
https://bitbucket.org/deniscormier
Summary
With over 10 years of work experience. Most of that time was spent working in education tech (science fairs), financial tech (ledgers, reconciliation) and ad tech (publisher website configurations, auction dynamics).
I love to build great software with passionate teams. My expertise is on backend development and database skills (schema design, optimized queries) with secondary front-end development skills for designing and delivering complete technical solutions.
Skills
Primary Skills
- Golang
- MySQL
- Google Cloud Platform
- Kubernetes
- Docker
- OpenAPI specification
Secondary Skills
- Vue.js
- HTML/CSS/JS
- Node.js
- PostgreSQL
- MongoDB
- React.js
Personal Projects
- Game engines
(Godot, TIC-80, Defold) - Static site generators
(Zola, Hugo)
Experience
Senior Software Engineer
Nov 2021 - Sep 2022
Synctera
Remote
Transaction history reconciliation product for tens of bank-fintech partnerships and their 1,000,000+ transactions/day. Reduced customer work and increased customer confidence in reconciliation results by extending reconciliation capabilities.
- Implemented new transaction data file formats in Golang ETL (extract, transform, load) data service (PostgreSQL, SQL, JSONB)
- Improved data schemas, features/fixes in related API functionality, query optimizations for interacting with transaction data
- Automation and associated file processing configuration (Google Cloud Platform)
- On-call support of reconciliation product: tracking down data discrepancies
- Temporary tenure as team lead to alleviate pressure from existing team leads
Senior Software Engineer
May 2014 - Nov 2021
Index Exchange
Toronto + Kitchener, ON
Primary focus (near the end of my tenure) was porting and improving ad auction functionality from old Perl infrastructure to 6000+ Golang (Gin framework) ad servers for faster auctions, higher quality ad impressions, and more revenue. I brought testing guidance and extensive knowledge of our older systems to teams working in the same area. Past work:
- Deal configuration functionality using Golang APIs and Angular frontend
- Teaching and implementing authentication/authorization strategy (Keycloak) in our products
- Increased success rate of brand detection tool for ads, various serviceability tools and fixes
- Custom data aggregation pipeline for parsing of statistics, millions of rows per day (Golang, MySQL, NodeJS web API, Angular frontend)
- Implementing and testing Headertag integrations (Javascript) on client websites
- Solved various production/support issues (Perl, MySQL, MongoDB), localization (multi-language) testing
- Previous titles: Software Engineer II, Software Engineer I, Software Engineer in Test
Software Developer
Jan - Apr 2013,
Sep - Dec 2013
McAfee
Waterloo, ON
C++ development work on the McAfee Security Center product, collaboration with Quality Assurance for thorough manual and automated testing (scripting tests using Python)
Onboarding of projects in the company's CI (continuous integration) system, build optimizations, and internal tools using Jenkins, C#, Windows PowerShell, Python
C++ Developer
May - Aug 2012
SurfEasy
Toronto, ON
File encryption for a modified version of the Mozilla Firefox browser using Network Security Services and SQLCipher
Software Developer
Sep - Dec 2011
RuggedCom (acquired by Siemens)
Concord, ON
IT Programmer
Jan - Apr 2011
Medavie Blue Cross
Moncton, NB
IT Analyst
May - Aug 2010
Tennis Canada
Montréal, QC
Projects
Game Development
Jan 2013 - Current
Through my love of games and game development, I explore game mechanics with learning materials, videogame speedrunning, occasional attempts at board game design, game jams, and a few software prototypes. See more projects at https://deniscormier.itch.io
- Pico Pill: Dr Mario clone with a different take on player progression (action puzzle)
- Pyramid Solitaire: TODO describe
- Swifty: All crates move at the same time! Solve the puzzles using the level layout to your advantage. (prepared levels, auto-generated levels)
Education
Bachelor of Software Engineering
Sep 2009 - Apr 2014
University of Waterloo
Waterloo, ON
Honours - Co-operative Program
High School Diploma
Sep 2005 - Jun 2009
École L'Odyssée
Moncton, NB
Shad Valley 2009 alumni (Université Laval, Québec City)