I'm Paul, a software engineer focused on React and Next.js, with nearly two decades shipping production software.
Currently exploring how AI agents are transforming the craft of software development. I've built platforms handling millions of transactions for retail operations across Europe.
I write about React, Next.js, AI-assisted development, and engineering leadership.
Latest Articles
- Composition Over Prop Drilling in React
How to use children as a prop, slot patterns, and component composition to avoid passing props throu...
- Deploying Next.js to Cloudflare Pages
How I deploy a statically exported Next.js 15 site to Cloudflare Pages with GitHub Actions, plus the...
- Error and Not-Found Pages in the App Router
The error.tsx and not-found.tsx conventions in the Next.js App Router, how nested error boundaries w...
- Image Optimisation in Next.js
How next/image works, the constraints of static export (unoptimized mode), and practical approaches ...
- Incremental Static Regeneration Explained
What ISR does, how revalidation works, when ISR is better than full static or dynamic rendering, and...
Notebook
Expertise
React & Next.js
Building modern web applications with React 19 and the Next.js 15 App Router. Server Components, streaming, static pre-rendering, backed by the architectural depth to make them scale.
AI-Powered Development
Exploring the frontier of agentic AI. Building tools and workflows that augment developer capabilities — not replace them.
Technical Leadership
Building and mentoring engineering teams. From code review culture to CI/CD pipelines — helping organizations ship better software.