Hello 馃憢

I'm Alex O'Callaghan and this is my personal website where I write about software development and do my best to learn in public. I currently work at Mintel as a Principal Engineer working primarily with React, TypeScript & Python.

I've been leading one of our platform teams maintaining a collection of shared libraries, services and a micro-frontend architecture.

I'm from London and you can find me on a few different social media platforms:


Recent posts

Subscribe via RSS to get new posts delivered to your feed reader, or browse posts by tag.

React design system library MCP

Published 路 3 min read

Exposing Storybook documentation to AI agents via an MCP server

Open sourcing our microfrontend React bridge

Published 路 1 min read

A library for rendering microfrontends in separate React trees

Reflecting on Enterprise Engineering Summit 2025

Published 路 9 min read

Key takeaways from the Enterprise Engineering Summit 2025

Migrating to Vite

Published 路 4 min read

Switching to use Vite for building a React component library

Package exports and eslint-plugin-import

Published 路 1 min read

Resolving package.json exports with eslint-plugin-import

Creating your own React design system analytics tool

Published 路 3 min read

Using react-scanner to implement an Omlet alternative

Upgrading React with micro-frontends

Published 路 2 min read

How to upgrade React incrementally across multiple micro-frontends

Module not available for eager consumption

Published 路 1 min read

Fixing a Module Federation error

Delay using a federated module

Published 路 2 min read

Ensure federated module has loaded before using it

Using the experimental React Compiler

Published 路 4 min read

Trying out the React Compiler with React 19 beta

Using GitLab API to create a DORA metrics dashboard

Published 路 6 min read

Measure developer team productivity using deployment frequency and lead time for changes

Using TypedDict with invalid attribute names

Published 路 1 min read

How to use a TypedDict with item keys that aren't valid identifiers

Mock server-sent events (SSE) with msw

Published 路 2 min read

Mock Service Worker supports mocking SSE

Exclude node_modules with Webpack

Published 路 2 min read

Avoid bundling dependencies when building a library

Accessibility testing

Published 路 6 min read

Overview of approaches and tools for testing web accessibility

Dynamically load remoteEntry.js files

Published 路 2 min read

Control loading Webpack Module Federation remoteEntry.js files to improve peformance

Configure Boto3 endpoint_url

Published 路 1 min read

Use environment variables to point Boto3 at local services

Mocking Boto3 with pytest

Published 路 1 min read

Mock requests to AWS services with pytest

Platform team challenges

Published 路 8 min read

Challenges faced when introducing a platform team

Python TypedDict with Generics

Published 路 1 min read

How to define a Python type for a dict with generic values

Contract testing with OpenAPI & TypeScript

Published 路 3 min read

Validate contracts between backend services and frontend applications

Design system management

Published 路 4 min read

Processes and challenges in managing an adopted design system

Adopting a micro-frontend architecture

Published 路 1 min read

Supporting scaleable web application development with micro-frontends