What I Use
The languages, frameworks, platforms, and tools I actually reach for — across AI engineering, fullstack web, native mobile, data and event streaming, observability, and ops. Most of it earns its keep in production; some lives in studies, side projects, and course work.
Updated regularly. Not exhaustive — the things below are the ones I actively use or have meaningfully shipped with.
Languages
The languages I actually write — daily, weekly, or earned through study
TypeScript
Type-safe daily driver for frontends, services, and Node APIs
Python
FastAPI services, ML/data work, MCP servers, document tooling
JavaScript
Where Node.js, browser APIs, and most of the ecosystem live
Swift / SwiftUI
Native iOS clients with OAuth federation against the platform
Kotlin
Native Android clients with Gradle KTS
Java 21
Spring Boot 3 microservices for event-driven and healthcare systems
SQL
Postgres-shaped SQL is muscle memory at this point
AI Engineering & LLMs
The model providers, protocols, and frameworks I build agents on
Anthropic Claude
Primary LLM across production agents and the TheGreyMatter.ai ecosystem
OpenAI
Embeddings and a battle-tested fallback model for some pipelines
Google Gemini
Long-context and multimodal model for specific evaluation lanes
DeepSeek
Strong open-source reasoning model — good for benchmarking and self-hosting
Kimi
Moonshot's long-context model — useful when context budget is the bottleneck
Ollama
Local LLM inference for private, offline, and dev-loop workflows
OpenClaw
Local-first personal AI assistant framework — multi-channel agent that runs on my own hardware
Model Context Protocol
MCP servers that expose product APIs to Claude agents safely
LangChain
Composable LLM pipelines and tooling — used where it earns its weight
Hugging Face
Open-source models, datasets, and the home page of applied ML
Voice AI & Real-time
Speech in, speech out, phone agents that sound human
LLM Evaluation & Tracing
How I keep agent quality visible and regressions catchable
Frontend
What I reach for when building product UIs and this site
Next.js
App Router, RSC, server actions — the default for new product surfaces
React
Universal component model across the ecosystem
Vite
Fast dev/build for SPA dashboards and internal tools
Tailwind CSS
Utility-first design system for everything I ship
anime.js
Scroll/timeline motion for the parts of UI that should feel alive
Framer Motion
Component-level animation where React + spring physics shine
Lucide
Icon library I default to for clean, consistent UI
Recharts
Sensible charting for dashboards and reports
Backend
Frameworks for APIs, services, and async work
FastAPI
Async Python framework for AI services and MCP-adjacent APIs
Express
Workhorse for Node.js REST APIs and Azure Functions handlers
Fastify
When Express's overhead becomes a real bottleneck
Spring Boot 3
Java microservices with Resilience4j, Spring Kafka, and Actuator
Pydantic + Zod
Schemas as contracts at every API boundary, in Python and TS
Mobile
Native clients that share auth and identity with the platform
Data, Caching & Streaming
Databases, queues, and the event backbone underneath
PostgreSQL
Default relational store — sometimes with Neon serverless on top
Azure Cosmos DB
Per-app NoSQL with multi-region, used across the ecosystem
MongoDB
Document store for a few specific services
Redis
Cache, sessions, rate-limit counters, ephemeral coordination
MinIO / S3
S3-compatible object storage for files, exports, and backups
Apache Kafka / Redpanda
Event streaming for ingestion, normalization, and reactive workflows
Drizzle ORM
SQL-first ORM and schema kit when I want type safety without ceremony
Cloud — Azure (primary)
Where most production services live
Cloud — beyond Azure
The other platforms I deploy to
Auth, Identity & Policy
How I keep the right people in and the wrong people out
Keycloak (OIDC)
Production-grade SSO + federation when self-hosting identity
NextAuth.js
Drop-in identity for Next.js apps
JWT / JOSE
Token format of choice — jsonwebtoken, jose, PyJWT depending on language
Azure MSAL
Azure AD / Entra OAuth flows in product apps
bcrypt / argon2
Password hashing where I still need it
Open Policy Agent
Rego-based policy-as-code for decisions business logic shouldn't own
Observability
How I know what's actually happening in production
OpenTelemetry
Vendor-neutral instrumentation — traces, metrics, and logs everywhere
Grafana
Dashboards backed by the LGTM stack — Loki for logs, Tempo for traces
Prometheus
Pull-based metrics scraping for self-hosted services
Application Insights
Azure-native telemetry across Functions, App Services, and frontends
Resilience4j
Circuit breakers, retries, bulkheads, and timeouts in Java services
DevOps & Infrastructure
How code becomes running services
Docker + Docker Compose
Local dev parity, integration test stacks, and prod containers
GitHub Actions
CI/CD across every repo — build, test, deploy, scan
Terraform
IaC for non-Azure infrastructure
Gradle
Build + dependency management for Java/Kotlin
Makefiles
The dev-experience glue when nothing fancier is warranted
browserless
Headless Chrome as a service — powers automated scanning, PDF, and screenshot pipelines
Testing
How I keep things from breaking in production
Payments, Integrations & Documents
The boring-but-load-bearing tooling that real products need
Stripe
Payments across customer-facing products and consumer apps
QuickBooks
Accounting sync and automation for SMB workflows
Plaid
Bank linking for personal-finance projects
jsPDF + pdfkit
PDF generation in the browser and Node
PptxGenJS + python-pptx
Programmatic PowerPoint exports for reports and board packs
mammoth + docx
Word document parsing and generation
Editor & AI Pair Programming
Where I actually write code, and the AI that writes it with me
Design & Productivity
Where ideas, plans, and conversations live
Curious why I picked a particular tool — or what I'd reach for instead? Get in touch. I genuinely enjoy these conversations.