Capabilities
What I work with, grouped by the problems it solves. Linked projects show where each skill was applied.
Backend engineering
Server-side applications, business logic and APIs.
PHP
Server-side programming for web applications.
Laravel
Building web applications and APIs with the Laravel framework.
Python
Scripting, services and AI-related tooling.
Frontend engineering
Interactive interfaces for the web.
JavaScript
The language of the browser, used across front-end and tooling work.
TypeScript
Typed JavaScript for safer, more maintainable codebases.
Vue.js
Component-based interfaces with the Vue ecosystem.
React.js
Component-based interfaces with React.
APIs and integrations
Connecting systems through well-defined contracts.
REST APIs
Designing and consuming resource-oriented HTTP APIs.
Application development
End-to-end application work, from data layer to interface.
Data and databases
Relational data modelling and querying.
MySQL
Relational schema design and SQL querying.
PostgreSQL
Relational data with PostgreSQL.
AI-enabled applications
Applying AI capabilities inside real products.
AI-related engineering
Integrating AI capabilities into applications.
Engineering practice
The tools and habits that keep software shippable.
Git
Version control and collaborative workflows.
Testing
Automated tests that protect behaviour as code changes.
Delivery and coordination
Turning requirements into planned, shipped work.
Requirements understanding
Turning stakeholder needs into clear, buildable scope.
Project coordination
Planning, sequencing and tracking delivery across a team.
Software delivery
Getting working software into users' hands reliably.
Technical planning
Estimating, de-risking and sequencing technical work.