Developer.
Consultant.
Advocate.

Hi, I'm Marc!
I'm a fullstack software developer and community leader based in Toronto.
With over a decade working in the consulting space, I lead the development of software solutions that stand the test of time. Through the application of the highest standards of quality and crafstmanship, I strive to create fulfilling experiences for both users and developers alike.
Specialities
Automated testing
Test-driven development methodology, UI & integration testing, CI/CD.
Developer Ergonomics
Environment configuration, workflow tool development, code quality automation.
Web services
REST API, GraphQL, backend development for app, web and IoT clients.
Web apps
Web app development; traditional websites and single-page applications.
Teaching & mentorship
Curriculum development, course instruction, team and developer mentorship.
Making a difference
Online and offline.

Open source software
I have contributed to major open source projects such as Django and Celery. I also authored django-rest-swagger (now archived) which has over 2.6k stars on Github and is ranked as a critical project on PyPI.

Port Perry Pedals
In 2021, I founded Port Perry Pedals, an annual road cycling event which has raised over $60,000 for charity.

Durham Active Transportation Committee
Since 2018, I serve the Township of Scugog as its representative to the Durham Active Transportation Committee (DATC). There, I advocate for the expansion of safe and sustainable transportation modes in the Region of Durham.
Here are some of the brands with whom I have collaborated in elaborating technical solutions over the years:








