Engineering Portfolio


Bed Bug Detection RFP (request for proposal)

The RFP on Bedbug detection in Toronto is written by Adrian Esser, Ashley Ding, Vicky Peng and myself.

This is a project for the Praxis 2 course

We identify the endemic problem of Bedbugs in the City of Toronto, and ask for a solution.

Through deep research on the topic, we identified that the bedbug problem can be mitigated through early detection.

We contacted the various stakeholders to get their perspective on the problem, and incorporated them into the report.

I was mainly responsible for writing the objective section. We identified the main points of a solution to the early detection problem, and myself broke that down into the functional requirements to judging design proposals.


The complete RFP can be downloaded here.

Raccoon Proof Green Bin Proposal

The Raccoon Proof Magnetic Green Bin Latch is a proposed solution to prevent raccoon intrusions into city green bins by Adrian Esser, Ashley Ding, Vicky Peng and myself.

This was the second project of Praxis 2, and we were assigned to create a proposal for This RFP

We started the design process by organizing our team. I was responsible in setting up and managing a project management suit, and we used Zoho Project.


We then created 4 concept solutions based on different mechanisms: Rolly Polly, Timer Based Lock, Anti Raccoon Locomotion, and Key Based Locks.


From these 4 concepts, we choose the key based design. We further refined the key based lock by choosing to use magnetic key so the green bin can have a tamper proof exterior.

We first prototyped this idea by using magnetic cabinet locks from Kidco. And then we designed and build our own mechanism that can fit into the existing lock housing on green bins.

During the design and prototyping process, I was responsible for 3D modeling the Kidco Lock and our own mechanism in Autodesk Inventor, to refine the dimensions of our design and to stress test against known forces that raccoons can generate.

When our design was finished, we presented it at a public showcase

I was responsible for designing the poster for the presentation.


After the showcase, we were invited to present our design to CityTV and CBC radio.


Skule Tutors

Skule tutors is a replacement for an aging web tutors database used by the University of Toronto Engineering Society.

The old site ran on ruby on rails and had a few issues. So I was tasked with creating a replacement in October 2012 and have it done by January 2013.

I collaborated with the society’s Webmaster, Brian To, and he created an html mock-up to work from so the site has consistent style to the society’s main site.


We coordinated the project through Github and Trello.

One of the main issues with the old site was that it didn’t have an admin interface, so I decided to use the Python Django framework, which has a built-in admin interface.

We deployed an interim version of the site to Heroku in late October, and successively worked on the backend code and frontend design.

A test instance was setup on Heroku to test new features before the new code was uploaded to the production instance.

The design and the code for the site are currently functionally complete, and are being tested by Society staff.

Project Conga

Project conga is a web development project that Brian To and myself have been working on. We are trying to create note sharing service initially for EngScis to upload and share their class notes.

We started this project after we heard that engsci.unavoidable.com will be shut down as the hosting is costing the owner, Kevin P. Siu too much. Because engsci.unavoidable.com was critical for the first years EngScis as Kevin had uploaded many of his notes for his classes to the site.

In looking at the problem further, we also found there are other EngScis sharing their notes on the internet in various places. For example, I'm sharing my notes to a few people using OneNote and SkyDrive.

We think there would be significant value in a centralized location for EngScis to share their notes with classmates.

We started the project by first outlining the problem in a document, and then conducted some research. In the outline, we listed the functions the site will need to serve its purpose.

We then searched for pre-existing solutions that our site can be based on. At the same time, we started contacting stakeholders that we identified. For example, after Brian talked to VP Academic of EngSoc, we learned there has been interest to replace courses.skule.ca for a few years now, which our site is capable of doing as they have similar functions.

After we decided on using the Django framework, we started to write some preliminary code for the site. We decided to divide up the work thusly: I would work on the database and backend of the site, and Brian would work on the templates and frontend of the site. This was because I am more experience in python, and Brian is more experienced in HTML, CSS and JavaScript.

Throughout the coding, we have made several critical detailed decisions. For example, we decided that file types (notes, tests, problem sets) would be defined in the database, rather than in python classes, since that would allow the site to be more flexible in the future as its needs change.

Throughout the project, we used a few different tools communicate, organize and prioritize tasks. We started by embedding TODOs into comments in the code. Then we created a TODO file and a github wiki entry to track the tasks to be done.