Hey! I'm Aaron, a mechanical engineer turned software developer.
I love building things on and off the web as a creative medium.
When I'm not programming, I'm out skateboarding.
Ever since I was a kid, I've wanted to be like Tony Stark because
of his technical ability to take new ideas and bring them to life.
This is the story about my journey so far.
I received my first laptop at age 10, and within 30 minutes, I knew I wanted to learn programming. So, the next day I picked up a C programming book and got to work.
Here's an example of a Fibonacci Series calculator using recursion.
Naturally, I progressed toward electronics, leveraging my foundation in C to interact with LEDs, sensors, and other hardware using microcontrollers.
Here's an example of a control circuit for a DC motor where the direction is controlled by a potentiometer.
Wrote a solver in C to calculate the trajectory of a spherical projectile using parameters read in from .txt files. The solver output summarizes trajectories in a table for three scenarios: an analytical solution with no drag, a numerical solution with no drag, and a numerical solution with drag.
This project served build upon my knowledge of high school physics by incorporating drag coefficients, and to get familiar with numerical methods.
Wrote a solver in MATLAB during my first year of university to help solve a problem for extra credit. The problem involved solving a system of linear equations using a tedious task called Gaussian Elimination. I needed a way to verify my hand calculations and programming was the best way to do it.
Sponsored by: SIMEM Underground Solutions Inc.
Designed a colloidal mill prototype with 2x throughput compared to its previous design. 3D printed a scaled model of the system for demonstration.
Wrote a program in MATLAB to numerically approximate the pressure drop at the discharge end of the system. This value was used to validate the throughput.
Created a device to upgrade an old TV with smart capabilities using a WiFi-enabled microcontroller and IR sensors. The device is capable of controlling the TV by issuing voice commands, or by accessing a web remote served up by an ESP8266 microcontroller. This project sparked my interest in web development.
Wrote a MATLAB script to determine and plot compressible flow characteristics for a symmetric converging-diverging nozzle using numerical methods. Implemented a custom script in to overlay multiple plots into a single-view.
Wrote a MATLAB script to study the flow characteristics of a fluid subject to forced convection by a heated section of pipe. The script overlays several temperature profiles along the pipe in a single plot. Obtaining a numerical solution to the thermal energy equation requires the use of multiple finite-difference techniques due to the nature of the partial differential equation.
Sponsored by: REDLab
Led the design of a data acquisition system for an electric-assist wheelchair prototype. Wrote the software in C++ to capture and wirelessly transmit live force and velocity readings from the user. Implemented a digital filter to process raw signals to produce consistent hub motor outputs. Designed and 3D printed a compact and water-tight electronics enclosure around existing hub motors fitted to the wheelchair.
Designed and assembled a desktop CNC router prototype from steel tubing and 3D printed components. Modified theMarlin firmware in C++ to achieve 3-axis milling in a 13" x 18" working footprint.
A single-paged appointment scheduling tool helping students seamlessly connect with mentors. Built custom hooks to fetch data from an existing API and wrote tests in Jest and Cypress to validate the app’s behaviour.
An e-commerce app built in React inspired by my recent success in skateboarding. Uses the Firebase platform to handle user authentication, account management, and reading product information.
Developing a web application to display high temperature readings from natural gas appliances. Hardware includes an ESP32 microcontroller and J-type thermocouple.
Leveraging AWS to build out endpoints and databases using Lambda, API Gateway, and DynamoDB. Collaborating with product and design teams in structuring the user experience into detailed PRDs and RFCs.
Attended a 12 week Bootcamp at Lighthouse Labs to enhance my programming skillset with modern technologies. Built responsive and user-friendly full stack applications using Javascript, React, HTML, and CSS. Explored the test-driven development methodology by focusing on creating unit tests to drive code development.