E-Paper Display
Experimenting with low-power devices
I build software.
I'm an experienced software developer with over 12 years of experience in everything from microcontroller development to mobile apps and cloud services (and everything in between). I have a passion for embedded systems, and excel at diving deep into new technical topics.
I joined Geotab in September of 2024 to join the expandability team as a Lead Embedded Developer, working primarily on embedded Linux devices.
It's been a great opportunity to further explore some of the technologies that I find fascinating - working at different layers of the stack, including bare-metal microcontroller code, U-Boot, system architecture, and higher-level applications running on top.
I worked at Miovision from January of 2017 to September of 2024, first as a co-op, then as a part-time employee during school terms, before joining full-time in April 2020. Since then, I became a Software Architect, responsible for distilling new features into technical work items and planning out our technical roadmap.
I loved the opportunity to work on something very real. At Miovision, we're working to make traffic networks more efficient, and the products I generally work on are installed in traffic cabinets across North America. It's very fulfulling to see something you've built get used every day and have a meaningful impact on everyone using roadways.
I worked on a number of major projects during my time at Miovision, including:
and kept a number of responsibilities as well:
I worked as the sole developer for Milq's Android app during a product pivot, involving rapid prototyping and close coordination with stakeholders. My efforts to rapidly turn around proof-of-concept versions of proposed features allowd us to iterate quickly and make decisions about the direction we wanted the product to go into. While at Milq, I introduced automated testing, which ran a test suite across a fleet of devices to prove the app worked as expected across different Android versions and screen orientations and resolutions.
I created MagmaStone to work as a freelancer on many contract programming jobs during high-school. I built more than 12 applications from basic specifications into deliverable products for a variety of customers from corporations to individuals.
I think that freelancing is one of the best ways to get started in the software industry - you quickly learn the value of good communication skills and the importance of laying out requirements (and tests, so that you don't give clients broken software). I worked with customers of a variety of technical skill levels to bring their vision into a real, shippable product. In the process, I developed strong communication skills and developed a strong foundation of development skills.
Experimenting with low-power devices
Bringing new and old together!
Taking control of hardware I own.
Reverse-engineering my way around terrible firmware.
Watering vegetables with solar power, rain and a PLC!
A dive into analog circuit design.