Character profile: Bryan Chuinkam

ブライアン・チュインカム

Class
Senior Full-Stack & AI Engineer
Base
Ottawa, Canada
Experience
7+ years shipping production software
Languages
English, French
Specialty
AI products with the model on a short leash: narrow jobs, checked outputs, humans approving what matters
Off duty
Father and husband. Sports fan. Competitive about everything, including daily trivia.
Weakness
Can't leave a flaky test alone
Bryan on stage with a microphone, pitching OwlReader in a black tunic with a blue and purple patterned yoke
Reference photo: on stage, pitching OwlReader. The outfit made it into the drawing.

The real one, for comparison

Yes, the glasses are real. The speed lines follow me everywhere.

I started in economics, fell for data, and spent the last seven years shipping production software for other people's teams. Now I build my own products end to end: problem, prototype, pilot, CI/CD, and the support inbox. I like work where getting it right matters, like money, kids' learning and personal data.

Backstory arc

  1. 2013

    Economics, Carleton University

    BA in Economics. I learned to ask what a number is actually measuring.

  2. 2017

    Business Intelligence Systems, Algonquin

    Postgraduate certificate. Data got its hooks in.

  3. 2017

    Insight Analyst, MD Financial Management

    Built database applications on SQL Server for finance, marketing and research teams, working inside each team's workflow.

  4. 2019

    Software Developer, R&D, WiseWithData

    Built SearchParty, which cut client onboarding effort by 80%+. Shipped a production RAG assistant over the company codebase. Moved client ETL from SAS to PySpark with up to 5x throughput.

  5. 2023

    Full-Stack Web Development, Lighthouse Labs

    Diploma. Added the front half of full stack.

  6. 2026

    Cloud Development & Operations, Algonquin

    Postgraduate certificate. Capstone: a multi-tenant RAG-pipeline SaaS on Azure.

  7. Now

    Four products in the field

    OwlReader, Pinalty, ConveneSpace and officeHours, each live or in pilot.

Techniques

LLM integration
Anthropic Claude API, OpenAI via Vercel AI Gateway, Vertex AI / Gemini, Azure AI
Structured outputs
Forced tools, JSON-schema validation, and code that checks before it trusts
RAG pipelines
PGVector, SparkNLP, Ollama, multi-step orchestration
Postgres that guards itself
Row-Level Security, permission-checked functions, pgTAP tests
Full stack
TypeScript, React, Next.js, Python, FastAPI, Django
Data at scale
Apache PySpark, Spark SQL, SQL Server
Cloud & delivery
Azure, AWS, GCP, Vercel, Docker, GitHub Actions, Azure DevOps
Testing
Vitest, Jest, PyTest, Playwright, TDD

The code

Rules every product here follows.

  1. A human approves.

    The model drafts. A person decides anything that matters.

  2. Keep only what you need.

    No raw model responses stored, and no data I don't need collected.

  3. Keep it in Canada.

    Canadian data residency whenever users are Canadian.

  4. Test the locks.

    Row-Level Security is only real if a test tries to break it.

Side quests

Teaching is how I check that I actually understand something.

  • Taught a hands-on PySpark data class for underrepresented high school students, with Colourfully Digital
  • Volunteer instructor with Black Boys Code Ottawa
  • Trained client teams at WiseWithData and spoke at a Python user group
  • Writes about AI-assisted development on Medium
  • Read my writing on Medium

Seen enough? Let's talk.

Read the afterword