I'm an inquisitive full-stack developer. I love seeing how all the pieces fit together to create a whole, and a part of me always wants to take a look at how some taken for granted feature is implemented under the hood.
As a former visual artist and instructor at Western University, I bring an intuitive feel for design, a soft touch, and a sensitivity to the non-technical aspects of production. From my time as a licensed electrician, I've imported an ability to solve logical problems honed by troubleshooting circuits, and a 'nothing personal' philosophy when it comes to receiving critical feedback.
I am open to full-stack and front-end opportunities.
January 2021 - Present
Built with Chart.js and React.js this dashboard displays trends in demand for the various different trades represented by the IBEW in Toronto, giving the user an at-a-glance index into construction activity in the city.
November 2020 - Present
Using Puppeteer I built a scraper that populates an archive of jobs available to members of the Electrical Workers Union in Toronto. After parsing the DOM the scraper archives the daily job call information in HTML and JSON files.
A separate script reads each JSON file, performs some validation, and inserts the data into a PostreSQL database.
Information about jobs for specific member classifications and electrical contractors is returned from a server built with Express.js, which handles requests to several endpoints.
November 2020 - Present
A reusable React component that renders a string to a canvas element. The output can be customized in several ways by passing props to the component. A companion utility, the Pixel Character Editor can create, read and update user customized character definition files in JSON format.
An image processing script that directly manipulates the pixel data of two images to insert a 'secret' image into a background. The pixel data of the background is mapped into a new context, the width of which can be varied. When the width of the new context does not match that of the original image, the resulting picture resembles television 'static.' When the width of the new context does match the original, the picture resolves.
The 'secret' image gets inserted into the pixel array of the background, but the point at which it will resolve can be modified. The result is a kind of parallax effect where a different image will be visible depending on the width of the new context the data is mapped into.
2010 - 2012
I guided students in the development of their own creative practices as a contract faculty member at the Western University Visual Arts Department. This included technical instruction in photography, photoshop, and Adobe Creative Suite, discussions around art theory, and facilitation of 'critiques' - loosely structured open forums in which students present their work to peers and faculty. The purpose of these conversations is a kind of discovery process that can illuminate new paths forward on the student's creative journey.
2009 Western University
2007 York University
Summa Cum Laude
Zero to Mastery Academy