Software Engineer with 6+ years specializing in full-stack development, cloud-native applications, and functional programming. Currently building enterprise solutions at Equinix using ClojureScript, Clojure, and React with re-frame and Reagent frameworks.
Senior Staff Software Engineer (6+ yrs) specializing in full‑stack development, functional programming, and cloud‑native applications. Currently at Equinix building enterprise solutions with ClojureScript and React. Previously led development of 18+ micro‑frontend applications at LexisNexis, integrating AI/LLM technologies to enhance legal workflows.
Architecture & Quality: API layering, middleware auth orchestration, performance tuning, accessibility, test strategy.
AI Enablement: Built internal add‑in to refine Azure DevOps user stories and auto‑review PRs against project guidelines using LLM context.
Always exploring modern patterns, scalable design, and human‑centered developer tooling.
About
I value thoughtful collaboration, clarity, and incremental delivery. I like turning complex integration surfaces (cloud + Microsoft 365 + AI) into cohesive product experiences with strong guardrails and measurable outcomes. This site stays minimal: semantic HTML + modern CSS + a sprinkle of JS for progressive enhancement.
Experience
Senior Staff Software Engineer Equinix
Oct 2025 – Present · Toronto, Canada
Building enterprise solutions using ClojureScript and Clojure with React for modern web applications.
Architecting frontend applications with re-frame and Reagent frameworks for state management and reactive UI.
Implementing functional programming paradigms to create maintainable and scalable code architecture.
Collaborating on product development to deliver high-performance cloud infrastructure solutions.
Software Engineer II LexisNexis
Jan 2022 – Oct 2025 · Toronto, Canada
Lexis Create & Plus AI: Lead/frontline contributor across 18+ micro‑frontends (React, AngularJS, TypeScript, ASP.NET Core APIs) with shared design system + auth middleware.
Integrated Generative AI (RAG via LangChain + proprietary LLM) inside Word & Outlook add‑ins: multi‑document ingestion, session tracking, vector retrieval, attachment Q&A & obligation extraction.
Engineered Microsoft Teams matter management add‑in (React, TypeScript, ASP.NET) to reduce email load & centralize legal collaboration.
Implemented RBAC & granular SharePoint / Teams permission orchestration; integrated Lexis AI MFE post decoupling from Teams Toolkit.
Designed feature flag + dark launch system (Azure App Services + Terraform) enabling safer staged rollouts (≈15% faster releases).
Added chat backup & PDF / analytics export (ASPOSE) mitigating retention auto‑deletes for key client.
Boosted large dataset view performance (pagination + Redis caching + Graph API query tuning) cutting heavy page load times ≈50% and accelerating user search ≈70%.
Migrated UI to Fluent UI v9; delivered adaptive theming (desktop + mobile) for Microsoft Store listing & SOC 2 readiness.
Front‑End Developer Techrangle Inc
May 2021 – Jan 2022 · Toronto, Canada
Delivered SCENE+ bank rewards web app (Next.js + Tailwind + styled‑components) with multi‑language CMS driven UI.
Achieved AA accessibility (NVDA, AXE, AsLint) via semantic structure, color contrast & keyboard flows.
Generative AI Azure DevOps Extension · 48 hr build
Won 1st place for delivering an Azure DevOps extension that enhances user stories and auto‑comments on pull requests using project guideline analysis. Implemented a rapid RAG pipeline and local LLM tooling for secure, offline iteration.
Built a Model Context Protocol (MCP) server to expose internal Storybook component metadata to AI assistants, enabling high‑confidence automated refactors across numerous micro‑frontends.
Recursive Storybook scan & indexing of stories for component discovery.
Creating an AI‑powered agent that handles the entire frontend development workflow and generates production‑ready components inside a Storybook component library.
Core technologies: LangGraph Studio with Python for orchestration.
Requirement Understanding: Converts natural language prompts into structured component requirements.
Knowledge Retrieval: Searches Fluent UI docs for relevant patterns, APIs, and styling guidelines.
Inspects existing component library to align with established coding & architectural standards.
Code & Story Generation: Uses LLMs to generate React components following Fluent UI conventions.
Produces corresponding Storybook stories for documentation, testing, and reuse.
Skills & Tools
Frontend
React
ClojureScript
re-frame
Reagent
Next.js
Vue.js
TypeScript
HTML5
CSS3
Fluent UI
Material UI
Tailwind
Bootstrap
Redux
Storybook
Office.js
Micro‑FE
Webpack
Backend & APIs
Node.js
Clojure
Express
Python
FastAPI
Flask
Django
REST
GraphQL
LangChain
ASPOSE
JWT
WAM OIDC
Supabase
Redis
Databases
MongoDB
PostgreSQL
MySQL
SQL Server
Oracle DB
Supabase (Pg)
DynamoDB
Cloud (AWS)
EC2
ECS
S3
CloudFront
Amplify
Lambda
API Gateway
IAM
Cloud (Azure)
App Services
Functions
Azure SQL
Bot Service
Virtual Machines
App Registrations
AAD
Delegated Perms
Auth & Security
OAuth2
JWT
RBAC
Supabase Auth
WAM OIDC
MS Graph
Azure AD Flows
DevOps & Infra
Git
Docker
Podman
Jenkins
Azure DevOps
Terraform
CI/CD
Redis Cache
Kubernetes
Testing & Quality
Jest
RTL
Accessibility
Storybook
AI & Productivity
LLM Integrations
LangChain
Ollama
Automation
Tooling & Collab
Jira
Confluence
Postman
MS Graph Explorer
NVDA
AXE
AsLint
Compliance
SOC 2
Secure Dev
Contact
Open to discussing roles, collaborations, or just chatting about engineering practices. The quickest way to reach me is via email.