Seven frontier LLMs, jailbroken and documented. Each one had solid-looking guardrails on the surface — and a gap between what the model refused and what it could be led to do. Bigger model ≠ safer model.
Six projects that paid rent in production. Every one of them touched real customer data at a regulated Canadian financial institution.
Multi-agent RAG for Canadian FI document processing. LangGraph orchestration, Azure OpenAI backend, custom retrieval with hybrid search and cross-encoder rerank.
Automated LLM security assessment toolkit. Ships with OWASP LLM Top 10 and MITRE ATLAS attack patterns. Integrates PyRIT and Garak for regression testing.
Regulatory-compliant cloud backbone for open banking. mTLS everywhere, Azure WAF, private endpoints, Terraform modules shared across six participating institutions.
End-to-end LLM quantization and deployment. LoRA/QLoRA fine-tune → INT4/INT8 → TensorRT-LLM → NVIDIA NIM serving. Cuts cost-per-token ~3×.
Agentic classification, extraction, and routing for back-office document ops. Human-in-the-loop review queue for low-confidence cases.
Azure Sentinel + custom KQL for GenAI threat detection. Tracks prompt-injection attempts, abnormal token usage, drift signals across deployed models.
Cloud Engineer I → II → III at Symcor. Same company; entirely different job every 18 months.
Grouped by job. Nothing here is résumé-padding — each bucket is something I've shipped or broken in the last 12 months.
Azure, NVIDIA, Cisco, CompTIA. Useful for passing procurement. More useful for the muscle memory each one leaves behind.