StackSkills & Tools

The toolbox, with notes on where I used it.

A working list of the tools, languages, and patterns I reach for — with a quick note on where each one came in handy.

Legend Daily Often Comfortable Used

Backend & APIs

gRPC

Service-to-service RPC

daily

Used for service-to-service RPC on the content platform — strongly-typed contracts and streaming have paid for themselves in debug time.

Node.js & Express

JavaScript runtime + web framework

daily

My default for HTTP services when latency matters less than iteration speed. Comfortable with async patterns, middleware, and ops.

FastAPI

Python web framework

often

When the team wants Python and proper type hints — pydantic models keep request/response shapes honest end to end.

REST design

API design patterns

daily

Versioning, idempotency, and resource modelling — opinionated about cache headers and clear error envelopes.

Event-driven & Messaging

Kafka / NATS

Streaming + pub/sub

comfortable

Comfortable wiring producers and consumers, but lean on managed queues unless ordering or replay genuinely matter.

Microservice patterns

Distributed system patterns

comfortable

Outbox pattern, idempotent consumers, and the boring choreography that keeps a distributed system from corrupting itself.

Infra & DevOps

Docker

Containerisation

daily

Day-to-day for local dev and prod images alike — multi-stage builds, slim base images, and reproducible toolchains.

GitHub Actions

CI/CD pipelines

daily

Pipelines that test, build, and deploy without anyone watching — including the unhappy paths.

AWS / GCP

Cloud infrastructure

comfortable

Just enough cloud to be dangerous: VPC, S3/GCS, RDS, Lambda, secrets management, and IAM policies that actually scope down.

bash & shell scripting

Shell glue

daily

The glue. Small reliable scripts beat half-broken Python utilities every time.

Automation & Agentic AI

Agents & Pipelines

Multi-agent orchestration

daily

Designing multi-agent systems with explicit planning loops, tool graphs, and the guardrails that keep them on task.

LLM tooling

Prompt + tool engineering

daily

OpenAI, Anthropic, and local-model wiring via LangChain / LlamaIndex — plus the prompt engineering that doesn't pretend prompts are magic.

Web Scraping

Browser automation + parsing

often

Playwright and a handful of resilient patterns for sites that don't want to be scraped politely.

Languages & Runtimes

TypeScript

Typed JavaScript

daily

Strict mode, inferred types, and zod at the boundary — the combo that makes refactors feel safe.

Go

Compiled, concurrent

often

Reaching for it when latency or memory matters; love how little hidden cost there is per line.

Python

Everyday scripting

daily

Scripting, data work, ML-adjacent code, and small services — the everyday language.

Frontend & CSS

React & Next.js

UI + SSR

daily

App Router, server components, and the discipline to keep the client bundle small.

SCSS

Stylesheets

daily

Hand-tuned design tokens, utility helpers, and component partials — the way this site is built.

Shopify

E-commerce templating

used

Theme dev with Liquid + custom sections — pragmatic, not glamorous.