About
Engineer first, focused on embedded systems
I build firmware and hardware that has to work in the real world, and I care about doing it carefully. Here is how I think about engineering and what I bring to a team.
I am an Electrical Engineering student at the University of Waterloo, and I spend most of my time at the boundary where firmware meets hardware. That means writing register-level drivers, bringing up custom PCBs, and getting real-time systems to behave under tight timing constraints.
Most of my projects start with a datasheet and an oscilloscope rather than a framework. I designed and assembled a two-layer STM32F411 telemetry board in KiCad, wrote bare-metal UART, SPI, and I2C drivers without leaning on the HAL, and built FreeRTOS pipelines that move sensor data reliably between concurrent tasks. When something does not work, I reach for a logic analyzer and the reference manual before I reach for a search bar.
My co-op at WSP grounded that interest in real industry practice. Working on PLC panel drawings, control schematics, and as-built revisions for industrial sites taught me how signal flows from a field instrument all the way to a controller, and how much careful documentation real engineering demands. I want to bring that same rigor to embedded and firmware work.
Focus areas
- Embedded Systems
- Firmware Development
- STM32 / ARM Cortex-M
- Bare-Metal Programming
- FreeRTOS
- PCB Design
- Hardware Bring-Up
How I work
Principles I bring to every build
Understand the silicon
I read the reference manual and configure peripherals at the register level. Knowing what each bit does makes debugging faster and abstractions optional rather than mandatory.
Measure, do not guess
Timing, bus behavior, and signal integrity are verified on a scope or logic analyzer against datasheet specs, not assumed from the code alone.
Design for bring-up
Test points, debug headers, and sane power sequencing go in early. A board that is easy to probe is a board that is easy to fix.
Document the decisions
Every project records why a choice was made, not just what was built. That habit came from industry and it makes the work reusable.
Toolbox
What I work with
Embedded & Hardware
- STM32F4
- ESP32
- Raspberry Pi 5
- ARM Cortex-M4
- FreeRTOS
- GPIO
- UART
- SPI
- I²C
- DMA
- NVIC
- JTAG / SWD
- Oscilloscope
- Logic Analyzer
Programming
- C
- C++
- Python
- MATLAB
- Verilog
Tools
- STM32CubeIDE
- Vivado
- KiCad
- Git
- GDB
- OpenOCD
- ST-Link
- AutoCAD Electrical
Open to opportunities
Seeking Fall 2026 embedded / firmware / hardware co-op.
If you're hiring for embedded, firmware, or hardware roles, I'd be glad to talk through my projects and how I work. The fastest way to reach me is email.
