Gregory P. Ward
3790 Royal Ave
Montreal, Quebec H4A 2M2
Canadagreg@gerg.ca
https://www.gerg.ca/Overview
Objective
A technical leadership position that takes advantage of my extensive software development skills and experience.
Citizenship
Canada/U.S. (dual)
Programming languages
Python, Go, JavaScript, C, Java, Perl, Unix shells, C++
Technical skills and interests• software analysis and design• RESTful API design• web application development• SQL and relational database design• containers and virtualization• application security

EmploymentSynctera
Technical Pod LeadApril 2021 to March 2024

For the first half of my tenure, I led an engineering team responsible for Synctera’s risk and compliance products,
an important competitive advantage in banking-as-a-service.
After that, I pivoted and led development of Synctera’s custom internal billing system. As it was deployed toproduction, this dramatically reduced internal overhead by replacing spreadsheets and manual communications
with a custom database, API, and user interface.
Fibrenoire
Technical Lead (Software Development)

Montreal, QC
March 2019 to April 2021

I led the migration of the company’s customer-facing web portal from a legacy monolith to a less risky
microservice architecture. I worked with team of frontend, backend, and fullstack developers using an API-firstapproach. My role involved architecture, design, implementation, and mentoring.
NoviFlowPrincipal Solutions Engineer

Montreal, QC
July 2018 to March 2019

I contributed to the state of the art in SDN (software-defined networking) technology by implementing a
proof-of-concept load balancer for carrier-grade NAT (network address translation). This work was done in close
collaboration with industry partners, customers, and a tightly focused team.

Oracle; Dyn (acquired); Renesys Corporation (acquired)Principal Software Developer (Oracle)
Senior Software Developer (Oracle)

January 2018 to July 2018
April 2017 to December 2017

Senior Software Developer (Dyn)May 2014 to April 2017

Senior Software Developer (Renesys)

July 2013 to May 2014

I worked on Internet performance monitoring for Oracle Cloud Infrastructure. My team built and deployed twoapplications as part of Oracle’s cloud service to present existing data products to customer-facing APIs, bridging
the gap between Renesys’ legacy data products and Oracle’s cloud offering.
Pre-Oracle acquisition, I helped to change the development culture within my team to introduce automated tests,
code review, and other best practices.
Intelerad Medical Systems
Staff Software Developer

Montreal, QC
2003 to 2012

In 2007, I became the company’s first build controller. My first major project was to rewrite the build system using
Buildbot, resulting in a more transparent, maintainable, and extensible system that ran builds 50% faster than its
predecessor. Next, I tackled our main workflow, switching the company from CVS to Mercurial and simplifying
many day-to-day tasks for developers. I also wrote a web application to expose the inner workings of R&D to therest of the company.
Prior to that, I worked in the web applications team, maintaining and developing tools used by Intelerad’s customers
to administer their medical workflow and image management software (PACS). This was an interesting challenge
due to undocumented requirements, low-quality and untested code, and a complex distributed runtime environment.
We gradually tamed the beast and turned it into a maintainable piece of software for our successors. Also during
this time, I worked on Intelerad’s front-end diagnostic image viewer, a Java/Swing-based GUI application.
MEMS & Nanotechnology Exchange
Software Developer

Reston, VA
1998 to 2003

My responsibilities spanned requirements analysis, system architecture, design, implementation, testing, anddeployment of a web-driven system for distributed semiconductor fabrication. Our team developed a web
application that enabled customers to search a library of processing capabilites, construct a custom process
sequence for fabrication, and track their process to completion. I also interacted extensively with the network’s
member fab sites to determine their processing capabilities and add them to our database.
Additionally, I shared responsibility for development and production infrastructure, including version control,
testing frameworks, maintenance of developer workstations, database selection and design, web application server
selection and design, and maintenance and security of our web/email/DNS servers.

Education
McGill University
M.Sc. in computer science

Montreal, QC
1998

McGill University
B.Sc. in physics with a minor in computer science (graduated with distinction)

Montreal, QC
1994

Selected Open Source Projects
vcprompt
A tiny command-line utility to incorporate information about version control working directories in the Unix shell
prompt.
Mercurial (contributor)
I have contributed several fixes and a few small features to Mercurial, a popular distributed version control system.
elspy
An extension to the Exim MTA (mail transfer agent) that embeds a Python interpreter, allowing the use of arbitrary
Python code for scanning email before it is accepted by the SMTP daemon.
Optik
A flexible, extensible, easy-to-use command-line parsing library for Python. Included in the standard library since
Python 2.3 as optparse.
Quixote (co-designer)
A lightweight web application framework designed specifically for simplicity and familiarity to Python
programmers.
Python Distribution Utilities (distutils)
A framework that provides a standard way for developers to distribute Python modules and applications, making iteasier for end-users and administrators to install and maintain them. Included in the standard library since Python
2.0.
See also: https://github.com/gward/

Conferences, Publications, Training• presented talks at PyCon Canada 2013, PyCon 2014, CUSEC 2015, PyCon 2015, PyCon Canada 2016,ConFoo 2017, and PyCon Canada 2017• organized and co-taught the Montreal Python Workshop, a weekend workshop for non-programmers to learn
the basics of programming (February 2013)• presented a tutorial at PyCon Canada, Toronto, November 2012: “Fast, Faster, Fastest: Getting the Best
Performance From Python”• “Quixote: a Python-Centric Web Application Framework”; Linux Journal (online edition); July 22, 2002;
http://www.linuxjournal.com/article.php?sid=6178• member of the program committee for the Python track of the 1999 O’Reilly Open Source Convention andfor the Eighth, Ninth, and Tenth International Python Conferences (2000, 2001, 2002)• presented talks at the 1999 O’Reilly Open Source Convention and the Eighth International Python
Conference, Arlington, Virginia (2000)