Software developer · Alberta, Canada

Mark Bohaychuk

I build software. Distributed systems, ML pipelines, embedded firmware — usually because I wanted the thing to exist.

01 / About

About

I'm a software developer based in Alberta, Canada. I work across the stack: distributed backends, machine-learning and retrieval pipelines, and bare-metal embedded firmware. I'm happiest on problems that cross those boundaries.

The projects below are all things I wanted to exist and then built end to end: ASP.NET Core and Python services, local and hosted LLM pipelines, a thirteen-process auction-hunting system, embedded C on an 8-bit microcontroller. What they have in common is that they don't hide their limits: pipeline stages are explicit, failure modes are visible, and I can explain every design decision I made.

Open to new opportunities — email is the best way to reach me.

02 / Selected work

Selected work

Mechanics Sidekick answering with trouble codes grounded in a service manual and a matching recall, citations inline

Mechanics Sidekick

An agentic diagnostic assistant. Stream live OBD-II data from the car, then let an LLM pull trouble codes, ground them in service manuals, and surface recalls — chaining tools in one chat, every answer cited.

Python Vue OpenAI MCP
Read more
Live OBD-II telemetry — RPM, coolant temp, engine load — streamed from a 2015 F-150 through the MCP server

OBD-II MCP Server

An MCP server that exposes a car's live diagnostics to LLM agents as tools — sensor reads, trouble codes, freeze frame, emissions readiness, VIN decode, and NHTSA recalls — over an ELM327 adapter.

Python MCP FastMCP OBD-II
Read more
Backend · Python

CarBuyerAssistant

A want-list buying assistant for Canadian and US vehicle auctions and classifieds. Declare what you're hunting; a Postgres-queued worker pipeline scores every matching lot against fair value — including cross-border landed cost — and alerts on Discord through soft-close.

Python PostgreSQL asyncio systemd LLM
Read more
Briefer interest-profile editor describing monitored topics in natural language

Briefer

Personalized news intelligence platform. A multi-stage scoring cascade surfaces articles with non-obvious connections to each user's interests — the kind keyword alerts would miss.

ASP.NET Core Python FastAPI Qdrant LLM
Read more
Job Search Copilot API documentation overview

Job Search Copilot

Resume-to-job matcher for software postings in Edmonton and Calgary. Hybrid scoring combines semantic similarity with deterministic feature matching, and explains why each job fits or doesn't.

Python FastAPI pgvector OpenAI
Read more
Hexagon-tiled gameboard with NFC readers and RGB LEDs

Interactive Gameboard

A hexagon-based gameboard with NFC readers and RGB LEDs, driven by a Raspberry Pi Pico W with real-time mobile-app integration.

Raspberry Pi NFC .NET MAUI IoT
Read more
Embedded · C

Digital Level

A two-axis digital level built from scratch around an ATmega328, an ADXL343 accelerometer, and an SSD1306 OLED. Custom PCB, 3D-printed case, four AA batteries.

Embedded C ATmega328 PCB Design I²C
Read more

03 / Contact

Get in touch

Open to new opportunities. Email is the best way to reach me — I read everything.