
Organisational Design
Beyond Squads: The Case for Centres of Excellence
When muscles and nerves aren’t enough to stand.
Shape systems through behaviour and constraints. Cohesion over cleverness, coupling you can name, evolve rather than rewrite, and design systems that scale without turning into bureaucracy. Monorepos, boundaries, and differential builds used with judgement.
Organisational Design
When muscles and nerves aren’t enough to stand.
Developer Experience
One wardrobe, many uniforms, one team.
Developer Experience
The case for ringed deployments: safety, visibility, and confidence at scale
Player Experience
Why borrowed milliseconds cost more than they seem.
Organisational Design
Balancing integration, adoption, and the lure of best-of-breed.
Developer Experience
How AI shifts the balance between improving and starting over.
Player Experience
A healthy system creates space to rise, and has the strength to let go.
Player Experience
The web has caught up. PWAs and TWAs now deliver apps that feel native, run faster, and update instantly - while still leaving space for native SDKs where they matter. On Android especially, it’s time to move beyond WebViews.
Player Experience
Passive observers are meant to watch, not slow the service. Trackers promise insight, but can often triple response times and leave players waiting.
Developer Experience
The case for a common process supervisor.
Developer Experience
They are canaries. If they go silent, the answer is not to ignore the silence, it is to make the air safe again.
Player Experience
The rise of PWAs and TWAs doesn’t make native redundant — it sharpens its purpose. Native still matters where the web can’t reach: the lock screen, widgets, ecosystem SDKs, and the moments that weave your app into players’ daily lives.