Taking project work now
Senior PHP and WordPress engineering, by the project.
Ten years writing PHP for a living, most of it inside WordPress and Laravel, with React and TypeScript on the front of it. I build plugins and extensions at framework level, pull legacy systems into maintainable shape, and I have run the servers underneath all of it, so performance conversations don't stop at the application boundary.
Available for agency overflow, fixed-scope builds and longer engagements. Comfortable being handed an inherited codebase and a short brief.
Plugin and extension architecture
Not themes. Data models, hooks, admin interfaces and rule engines that survive other developers touching them.
- WordPress plugin internals
- WooCommerce extensions
- Gutenberg blocks in React
- PHPUnit · Jest · Selenium
Legacy rescue and modernization
Moving functionality out of a platform it has outgrown, in phases, while the old system keeps serving traffic.
- Laravel · CodeIgniter · .NET
- MySQL · PostgreSQL · MsSQL
- API facades and staged cutovers
- JMeter load testing
Integrations and performance
The connecting work between systems that were never designed to talk to each other, and the caching that keeps it quick.
- Azure Logic Apps · n8n · webhooks
- OpenAI and Claude APIs
- NGINX · Cloudflare · AWS · Azure
- CI/CD, Docker, Git workflow
Navarro Booking
A booking engine for WooCommerce: availability windows, generated time slots, blocked dates, conflict detection when two people want the same slot, and a calendar invitation on confirmation. Free on WordPress.org, with a live store you can book from.
LogicForge
A visual builder that generates WordPress plugins which run on their own, with no dependency on the builder. Open the demo and build something: sign in as demo / tryitout. It runs in a sandbox mode I added for exactly this, so the blocks that execute code or reach the network are switched off and it resets every hour.
B2B buyer and seller hub
A wholesale platform where a brand's sales team and its retailers share one catalogue and must never see the same screens. In production, ongoing.
Earlier work includes eight years of agency and in-house PHP, server administration for freelance clients on Debian, NGINX and Cloudflare, and C#/Azure integration work as a senior engineer at CS Modern Workforce. Both products above are commercial, so their repositories are private — code samples are available on request, and I'm happy to walk through the architecture on a screen share, which is usually more use than a link.
Where my day meets yours
I'm in Manila, UTC+8. Overseas contractors usually get screened out over timezone, so here it is plainly: I hold my working hours to overlap with whichever of these your team runs on.
| Your team | Daily overlap | My local hours |
|---|---|---|
| UK / EU | Full working day | 15:00 – 24:00 |
| US Eastern | Morning through early afternoon | 21:00 – 06:00 |
| US Pacific | Full working day | 00:00 – 09:00 |
Stand-ups, pairing and code review happen live inside those windows. Deploys and migrations I'd rather run outside your business hours, which my timezone makes easy rather than awkward.
What engaging me looks like
Legacy work starts with a paid discovery week. Before quoting a rebuild, I map what the current system actually does, including the integrations nobody documented. You keep that document whether or not you continue with me.
Tests come with the code. PHPUnit or Jest on anything with logic in it, and I'll say so in review when something can't be tested as written.
I'll tell you what I haven't done. If a brief needs a technology I haven't run in production, you'll hear that in the first call rather than discover it in week three.
Dominick helped me turn that vision into a working platform for our first customer. He thought through the backend, flagged things I wouldn’t have known to consider, and helped me make practical, cost-conscious decisions so everything was set up properly.
He’s been my technical right hand throughout, from planning to customer calls. He’s easygoing, great with clients, and helps me cut through the noise to focus on what matters.
Send me the brief
A job description, a repo, or three sentences about what's stuck. I reply within one business day, including when the answer is that I'm not the right fit.
Direct: [email protected] · LinkedIn