Tech Stack
A snapshot of what I actually reach for in production work. Expertise levels are honest - depth, not breadth claims.
Daily drivers
- PHP & Laravel (expert) - Versions 5 through 12. Framework-deep, including queues, events, broadcasting, package authoring, and the full operational story around Horizon, Forge, and Cloud.
- MySQL / MariaDB (expert) - Schema design, query optimisation, indexing strategy, large-table migrations done safely.
- Redis (strong) - Sessions, cache, queues, locks. Run it in anger every day.
- Nuxt 3 & Vue 3 (strong working) - SSR, hydration, composables, Pinia. Daily on personal product work.
- Tailwind CSS (strong) - Component-system thinking; not just utility-class soup.
Comfortable territory
- Inertia.js
- Livewire
- Semantic UI (legacy projects)
- TypeScript (Nuxt-side)
- PHPUnit / Pest
- Laravel Dusk (browser tests)
- Docker
Infrastructure & deployment
- Laravel Cloud, Laravel Forge
- Linode, AWS (varied services as the engagement demands)
- Vercel (Nuxt SSR and static)
- GitHub Actions, Bitbucket Pipelines
E-commerce platforms
- Magento 2 - theming, modules, payment integration, performance
- Shopify - Liquid, app integrations
- WordPress / WooCommerce
Practices
- Event-driven architecture where it earns its complexity
- API-first design with a clean SSR consumer
- Soft-delete & audit trail by default
- Multi-tenant via organisation scoping
- Documentation as a deliverable, not an afterthought