Senior Developer
Close to two decades writing production software. I join your team, pick up tickets, ship features, and leave your codebase better than I found it.
The short version
Your team has work to do and not enough senior engineers to do it. You don't need someone who'll spend three weeks getting up to speed or who needs their pull requests babysitting. You need a developer who can read your codebase, understand your conventions, and start contributing meaningful code from the first week.
That's what I do.
What I bring
I've been writing production software since 2008. PHP and Laravel since version 3. TypeScript, Vue.js, Livewire, HTMX on the front end. AWS, Cloudflare Workers, Docker, and Linux on the infrastructure side.
I follow your conventions, use your tools, and work within your processes. The goal is to strengthen your team's output, not to create a dependency on my way of doing things.
Having spent six years as a CTO, I naturally think about the wider implications of the code I'm writing. How it affects the team, the architecture, the product roadmap. I'll flag a database schema that will cause problems at scale, or suggest a pattern that makes the next developer's life easier, because I've been the person who inherited those decisions.
The contractor problem
I've written about this in some detail. The structural risk with short-term contractors is that they're measured on delivery speed. That incentivises decisions that optimise for the short term. Framework choices your permanent team don't understand. Database schemas designed without knowledge of future requirements. Patterns that work but can't be extended.
I'm conscious of this because I've been the CTO who inherited contractor code. When I write code for your team, I write it as though I'll be the one maintaining it in six months. Tests are included. Patterns are consistent with the rest of the codebase. Anything non-obvious is documented.
In practice
Housekeeping - I identified developer time being wasted on context-switching between terminal and GitHub. Scoped a tight MVP, chose sensible dependencies, and built an open-source Laravel package with clear specifications and testing throughout.
Bidh - A Gaelic language tutor integrating multiple AI services, real-time voice processing, and edge computing. High technical complexity, same approach: clear specifications, incremental delivery, pragmatic decisions about where to invest effort.
MedAscend - Re-architected a healthcare platform from MVP to enterprise. Multi-tenancy, RBAC, OAuth2 SSO, API design. All built to a standard that enabled the company to pursue institutional contracts they couldn't previously reach.
Stack
- Backend: PHP, Laravel (since v3), REST APIs, queue-based architecture
- Frontend: TypeScript, Vue.js, Livewire, HTMX, Alpine.js
- Infrastructure: AWS, Cloudflare Workers, Docker, Linux, Ansible
- Practices: TDD, CI/CD, code review, infrastructure as code
- Architecture: Multi-tenancy, microservices, event-driven systems, RBAC/SSO
Let's talk
If you need a senior engineer who can contribute meaningfully from day one, I'd like to hear what you're working on.
Related Insights
Creating MVPs - Avoiding Gotchas
It's hard to create an MVP that demonstrates your core idea and yet remains easy to maintain. Here's a broad look at the
Laravel Packages: Creating My First - Part 1
I've been using PHP packages for years but never created one. Here's how I went from scratching an itch to scoping, stru
Laravel Packages: Creating My First - Part 2
The internals of Housekeeping: the packages that power it, the testing challenges I hit, and the architectural decisions