COVID Alert Portal — paul craigSkip to main contentSkip to main navigation

COVID Alert Portal

Curbing COVID in Canada

Screenshot of the COVID Alert Portal

Between June 2020 and January 2021, I was Tech Lead for the COVID Alert Portal: the hippest “made-in-Ontario” exposure notification app this side of the Rideau river. Whereas the COVID Alert app was generally available to conscientious canucks, the Portal allowed healthcare workers to generate one-time keys for diagnosed patients.

It was built as a fun open-source Django app deployed on an AWS backend (less fun), with an robust automated testing and deployment pipeline. The Portal’s behaviour was more commodified than other parts of the system, so choosing the well-understood Django framework allowed us to get going quickly and build sustainably as we rapidly developed our MVP over a few hectic weeks. With the time we saved, we freed the team up to work on higher-level problems, like robust test cases, reusable infrastructure, security processes, and prioritizing accessibility.

The Portal was one third of the holistic COVID Alert ecosystem:

  • the app was user-facing: it kept track of nearby devices for 14 days, and looked for matching devices stored on the server.
  • the server, which was owned by CDS: it stored random IDs uploaded by diagnosed patients who were given one-time keys.
  • the portal for healthcare workers: it generated one-time keys that affected patients could enter to upload their data.

The Portal went into production for Ontario on August 14, 2020, and was rolled out province-by-province, nationwide. Its usage varied region-by-region, but ultimately I was responsible for delivering a service that was accessible, secure, and available, while accommodating the evolving needs of our end users and provincial partners.

The COVID Alert Portal helped the healthcare workers that were helping Canadians, it was delivered quickly in a national emergency using agile delivery methods, and it will kept doing what it needed to for as long as it was asked to.