👋🏼 Hi, my name is Jordan. I'm a software engineer based in Vancouver, BC.

This site contains a portfolio of my work and writing. To get in touch, scroll down.

Highlights

🌊Flow • Oct 2019Now

Flow is a fast, secure, and developer-friendly blockchain built to support the next generation of games, apps, and digital assets. It pioneered many breakthroughs in decentralized technology, including:

  • Separating consensus from compute to achieve high performance without compromising global state atomicity.
  • Cadence, the most ergonomic and safe-by-default programming language available for smart contract development.
  • Accounts with error-resistant addresses, built-in smart contracts, and multi-sig.

I have worked on Flow through 3 code-names and 4 years, starting in 2019. Some of my notable contributions are the Jolteon consensus algorithm, the distributed key generation protocol, the Collection Node, and the automated node operator selection system.

🐈CryptoKitties • Jul 2017Sep 2018

CryptoKitties is the world's furriest blockchain experience. It defined the standard for non-fungible tokens, coined the term "NFT", and accidentally broke Ethereum when it launched.

I prototyped the product with the initial team of 4, launched the alpha at the inaugural ETHWaterloo hackathon, and developed the smart contracts, among other things. CrypoKitties has been covered in the BBC, New York Times, Wall Street Journal, and many others.

Alongside Flow's consensus team, I spent nearly a year researching, designing, and implementing an upgrade to Flow's core consensus algorithm. The upgrade decreased finality time by about 30% and enabled automated recovery from DOS attacks, networking outages, and partitions. In addition to a summary of technical changes, my goal with this article is to provide a high-level intuition for how and why the HotStuff family of consensus algorithms work.

Writing

An article about improving resilience and laying the foundation for extremely efficient light clients.

An article for Flow's engineering blog about upgrading our consensus algorithm to Jolteon.

📖Designing Dapper • Oct 2019

An article describing the design and security architecture of Dapper Wallet.

🎩ERC998 • Jul 2018

A standards proposal I co-authored for composable NFTs on Ethereum.

Presentations

🏙Building a Better Interface • May 2018

A presentation I gave at ETHNewYork 2018 about how to improve the user experience in decentralized apps.

A presentation I gave at TEDxUBC 2018 about the story of CryptoKitties.

🧱Intro to Blockchain • Mar 2018

A presentation for UBC Launch Pad Tech Talks about the technical details of blockchains.

A presentation of cryptocurrency implementation hosted by UBC Blockchain Club.

👨‍🏫Intro to React • Mar 2017

A presentation for UBC Launch Pad Tech Talks about targeting different platforms with Electron and React Native.

👨‍💻Intro to Modern Web Development • Mar 2016

An interactive workshop at BizHacks 2016, a hackathon, introducing business students to modern web development tools.

Other Things

🌊Flow • Oct 2019Now

Flow is a fast, secure, and developer-friendly blockchain built to support the next generation of games, apps, and digital assets.

👾Dapper • Sep 2018Oct 2019

A smart contract wallet for Ethereum.

🐈CryptoKitties • Jul 2017Sep 2018

A simple game about breeding cats which broke Ethereum, coined the term NFT, and defined the ERC721 standard.

🚀UBC Launch Pad • Aug 2015May 2018

Launch Pad is UBC's largest student-run software engineering club.

🔨ETHWaterloo • Oct 2017

My team won with a smart contract analytics tool while polishing off and launching the CryptoKitties beta.

🤖Rocket • Jun 2017Aug 2017

A Slack bot for automating team and project management at Launch Pad.

💸Cumulus • May 2017Aug 2017

An open-source proof-of-work blockchain I built with a team at Launch Pad.

✉️Guerrilla • Feb 2017

An open-source SMTP server in Golang, to which I contributed an analytics dashboard.

📰The Ubyssey • Aug 2015Dec 2015

UBC's student newspaper, where I operated the website and publishing platform.

Contact

You can find most of my open-source and personal work on GitHub. I'm also on LinkedIn. Or send me an email.