← All posts

Personal

8 posts

Stories from 20+ years in the industry — the lessons that only come with time, and what it means to build a career you believe in.

EngineeringPersonal

I Built a Game That Teaches Git by Making You Type Real Commands

Most git tutorials show you diagrams. Gitvana drops you in a terminal inside a pixel-art monastery and makes you earn your enlightenment one commit at a time.

EngineeringAI

How I Built a Real-Time Geopolitical Event Pipeline with Embeddings and LLMs

A deep technical walkthrough of a 7-stage pipeline that ingests 100+ RSS feeds, clusters articles with vector embeddings, synthesises structured events through multi-pass LLM processing, and serves them on a live dashboard with conflict tracking and automated alerting.

EngineeringPersonal

Building Global Crisis Monitor: A Real-Time Geopolitical Intelligence Dashboard

I built a system that ingests 80+ news feeds, clusters them with embeddings, synthesises events with AI, and surfaces a live map and briefings-plus auto-publishing to X and Threads.

EngineeringPersonal

I built the tool my public-speaking anxiety needed

A zero-friction teleprompter for talks and Zoom: no signup, no backend, with a compact mode that keeps you looking at the camera instead of the script.

EngineeringPersonal

How I Built My Perfect Family Budget App in Just 3 Days

Frustrated by budget apps that couldn't tell me where my money went, I built my own with Next.js and automation—and got real visibility in days.

PersonalLeadership

The Year I Stopped Apologizing for the Chaos

Parenting young kids while leading a team: on guilt, the myth of balance, and finally refusing to apologize for being human.

PersonalEngineering

When the hard part was the point

Solving a problem in seconds with AI left me feeling robbed—of the struggle, the flow, and the identity built around enduring the friction.

LeadershipPersonal

Imposter Syndrome for New Lead Developers: Overcoming Self-Doubt

Stepping into a lead role often brings imposter syndrome. How to shift from needing all the answers to enabling the team to find them together.