About

Hi, my name is Justin! I currently study mechatronics engineering (a combination of software, mechanical, and electrical engineering) at the University of Waterloo. I'm a software developer with an interest in data infrastructure, distributed systems, and artificial intelligence.

This fall, I'll be interning at Google on the Ads team (Waterloo, ON). Most recently, I interned on the backend team at Imply (San Mateo, CA) where I worked on Apache Druid, an open-source OLAP datastore, and integrated Kafka data streams with the company's Druid cluster management system. Previously, I've interned at Toast (Boston, MA) and Lytx (Markham, ON).

Feel free to read more about me and/or reach out via email or LinkedIn.

Experience

Imply
Database and Distributed Systems Engineering Intern
January 2019 - April 2019
Imply is an open-core company that provides a complete analytics solution (including data visualization, security, cluster management) based around Apache Druid.
Open-Source Contributions:
  • Developed time-ordering functionality for streaming SELECT queries, modified the SQL planner to support the new functionality, and benchmarked using JMH
  • Wrote a clean-room implementation of the closed-source AWS Kinesis Client Library’s protocol buffer de-aggregator
  • Improved visibility into ingestion supervisor status by adding a REST API endpoint for state and recently thrown errors
Internal Work:
  • Added an extension to the cluster management system that publishes user activity and cluster heartbeat data to Kafka streams for analytics and debugging. Used MySQL and JDBI for scheduling among distributed servers
Technologies Used: Apache Druid, Java, JUnit, MySQL, Apache Kafka, AWS Kinesis, JDBI, Maven, Apache Calcite
Toast
Software Engineering Intern
May 2018 - August 2018
Toast, Inc. is a cloud-based restaurant software company based in Boston, Massachusetts. The company provides a restaurant management and point of sale system built on the Android operating system.
  • Developed features and enhancements for four payments microservices (file processing, partner API, internal tooling, and financing) and squashed bugs in Toast’s main web backend application
  • Developed a data streaming system for Toast’s financing platform using AWS Kinesis and Dockerized Localstack (locally-hosted AWS services) testing infrastructure
  • Developed internal tooling for identifying data synchronization issues
  • Built a serverless Lambda system on top of JUnit and Jenkins for automated flaky test retries and reporting
Technologies Used: Java, JUnit, Play MVC, Hibernate, Dropwizard, PostgreSQL, JDBI, AWS Kinesis, AWS S3, Docker, AWS Lambda, API Gateway, MongoDB
Lytx
Software Engineering Intern
January 2017 - April 2017, September 2017 - December 2017
Lytx is a global driver risk management company that designs, manufactures and sells video telematics driver safety programs used by commercial fleets.
  • Implemented JSON Web Token authentication and authorization for an MVC application and RESTful API
  • Designed an indexing system and data model, and developed a web application that supports sub-second geospatial queries on large quantities of data (proven to work on a dataset with 1B GPS points)
Technologies Used: Node.js, Express.js, HTML, and CSS, JQuery, Cassandra, C#, ASP.NET Web API and MVC, SQL Server, and Azure Cloud Services

Education

University of Waterloo
BASc, Honours Mechatronics Engineering with Option in Artificial Intelligence
Class of 2021 (Expected)
  • Cumulative Average: 85% (~3.8 on a 4.0 GPA scale)
  • Recipient of the Arthur F. Church Engineering Entrance Scholarship, UW President’s Scholarship, Professional Engineers Ontario Scholarship, and the Wells Fargo Scholarship

Contact