Code, Weights, and Everything in Between: A Software Engineer's Journey.

Hey, I'm a Senior Software Engineer with over a decade of experience building real-world applications across web, AI, and cloud. This blog is where I unpack the things I'm building, exploring, or refining—one post at a time.

I got into tech young, mostly by breaking and fixing the family computer until I figured out how things were wired together. That early obsession grew into formal studies, a software engineering degree, and a career focused on building production systems that are built to last.

These days, I work mostly with JavaScript and TypeScript across the stack—React, Next.js, Node.js—with a focus on scalable architecture, developer experience, and product impact. I help shape technical direction for my team in a Tech Lead / Principal-level capacity, contributing to architectural decisions, system design, and delivery practices.

Lately, I've been working with LLMs in production, integrating models like OpenAI (via Azure) and Gemini using the Vercel AI SDK. I've delivered tools like classification engines, custom chat assistants, and survey summarisation pipelines—fitted to real-world constraints and deployed into live environments. I also work heavily with Contentful, building structured content pipelines and CMS-first platforms that scale cleanly with editorial workflows.

This blog is a place to record what I've built, how I approached it, and what I learned along the way. Writing helps structure my thinking and gives me space to explore ideas: LLM workflows, integration patterns, tooling experiments, or architectural approaches that feel worth unpacking. Sometimes it's reference material for myself. Sometimes it's for anyone who finds themselves solving a similar problem.

Outside work, I lift weights, read obsessively, and get lost in ideas around AI, social systems, and ecommerce architecture.

I'm also making slow, chaotic progress introducing my 3-year-old son to code. So far he's unplugged my keyboard mid-deploy, renamed files with dinosaurs, and asked surprisingly sharp questions about buttons that "don't do anything." We're calling it early-stage pair programming.