Skills
What I work with
The languages, frameworks, and practices I reach for — grouped by how I actually use them.
Languages
The vocabularies I think in.
- TypeScript
- JavaScript
- Python
- PHP
- Java
- SQL
Frontend & Mobile
The interfaces people actually touch.
- React
- Next.js
- Redux
- XState
- Tailwind CSS
- Styled Components
- React Native
- Expo
- NativeWind
- Flutter
- PWA
Backend & APIs
The engines behind the screens.
- Node.js
- NestJS
- Express
- SailsJS
- Laravel
- CodeIgniter
- Prisma
- GraphQL
- gRPC
- Socket.IO
- REST / Swagger
- BullMQ
Data, Messaging & Search
Where state lives and how it moves.
- MongoDB
- MySQL
- Redis
- RethinkDB
- Elasticsearch
- Kafka
- RabbitMQ
- MinIO
AI & Automation
Teaching software to do the busywork.
- RAG
- MCP
- LangChain
- Ollama
- Hugging Face
- Claude APIs
- AI Integration
AI Coding Tools
How I build with AI in the loop.
- Claude Code
- Claude
- Cursor
- OpenCode
- Codex
- Gemini CLI
- Chrome DevTools MCP
- Playwright MCP
- Context7
- Claude Plugins
- Agent Skills
- Custom Agents / Sub-agents
Cloud, DevOps & Observability
Shipping it — and keeping it alive.
- AWS
- DigitalOcean
- Cloudflare
- Vercel
- Docker
- Kubernetes
- Nginx
- Linux
- CI/CD
- Jenkins
- GitHub Actions
- Turborepo
- Kibana
- OpenTelemetry
- Grafana
- Prometheus
- Loki
- Tempo
Architecture
How I design systems that scale.
- Microservices
- Event-driven design
- System design
- Multi-tenant SaaS
- Real-time systems
Tools & Integrations
The everyday workbench.
- Git
- GitHub
- Bitbucket
- GitLab
- VS Code
- Android Studio
- Sublime Text
- MySQL Workbench
- Sequel Ace
- MongoDB Atlas
- Figma
- Postman
- Bruno
- Jira
- Trello
- Stripe
- Twilio
- SendGrid
- Auth0
- Google APIs