I'm Andy, a dedicated technical lead with over 10 years of experience in software engineering, specialising in creating maintainable, accessible, testable, and performant web applications.
I love quality, and loathe the throwaway culture. I believe you should "build it once, build it right"; if you build it right the first time, you don't need to keep on revisiting and rebuilding.
Crucially, this means #useThePlatform. When you build with native tools, rather than libraries, you build for the long term. You build to last.
-
🔭 I’m currently learning Golang, and absolutely loving it.
-
🌱 I’m starting to write down thoughts, ideas, and experiences. You can find them on my DEV.to page here.
- Creating a Smart Second Brain: Leveraging Cloudflare Workers, Vectorize, and OpenAI
- OKRs: A Framework for Avoiding Micromanagement and Unlocking Creativity
- Drastically Cut CI Time in an Nx Monorepo with Remote Task Caching: A Step-by-Step Guide
- Reducing Time Spent in CI to Almost Nothing, with Nx Cloud
- Writing Integration Tests that Run Inside a Unit-testing Framework like Jest
-
👯 I'm interested in tooling, infrastructure, productivity, and of course...AI.
-
Some tools I'm currently into:
-
And some that I want to get more into over the coming months and years:
-
💬 Get in touch if you want to discuss any of my projects or interests.
BEng Electronic Engineering (1st Class Honours), University of Leeds, UK
1999-2003
Dissertation: Implementation of a Cryptographic Algorithm Utilising the Fast Fourier Transform
MSc Nanoscale Science and Technology, University of Sheffield, UK 2003-2004
May 2024 - Present
December 2023 - April 2024 (5m)
- Led technical planning and execution for the core web components design system, enhancing developer productivity and reducing technical debt organisation-wide.
- Architected the CI/CI pipeline in Azure.
- Leveraged knowledge in: Web Components, Lit, React, TypeScript, Azure Pipelines, Bun, Playwright, Nx.
January 2022 - November 2023 (2y)
- Successfully Led the Query Platform project, an essential strategic initiative for the company transitioning from B2C to B2B.
- Collaborated on creating RFCs for front-end architecture, facilitating modular E2E testing and maintaining high developer productivity.
- Leveraged knowledge in: React, TypeScript, GitLab Pipelines, Playwright, Cypress, Vite, Nx, accessibility and best practices.
- Modernised build and test tooling and implemented transition to a monorepo, reducing CI times by 30%.
- Designed and implemented a runtime feature flag system to allow for continuous deployment of new features, reducing deployment time by 1 hour.
- Implemented performance optimisations leading to 25% faster page loads and a 5% reduction in monthly customer churn.
- Leveraged knowledge in: React, TypeScript, Webpack, Vite, Cypress, Nx, CSSModules, Styled-components.
August 2015 - December 2021 (6y)
- Led architectural and performance revamp for the v2 to v3 transition of the platform.
- Architectural planning and execution of the modernised Vue/Vuex app.
- Led a team of 4 developers to build a modular chessboard framework, supporting over 10 billion games played in the last 4 years.
- Leveraged knowledge in: Web Components, Vue, Svelte, TypeScript, Webpack, Cypress, CSS, Node.js.
May 2009 - August 2015 (6y)
- Designed and built a modern intranet for Mercedes-Benz South-West, UK, enhancing internal communications and operational efficiency.
- Provided ongoing maintenance, updates, and security enhancements for a portfolio of client websites, ensuring high availability and compliance with the latest web standards and practices.
- Actively collaborated with clients to identify their digital needs, develop project briefs, and deliver solutions that exceeded their expectations.
- Leveraged knowledge in: HTML/CSS, AngularJS, accessibility and best practices.
Prior experience was in the field of Electronics Research and Development so has been omitted.
- Pivot: A front-end framework designed for performance, maintainability, and longevity.
- Cachier: A remote caching solution for Nx monorepos, enhancing build efficiency.
- Rust Terminal Chatbot: A terminal-based chatbot, built with Rust.
- Notes AI: A "second brain" server, built with Cloudflare Workers
- Building a Basic HTTP Server in Go: A Step-by-step Tutorial
- Starting Out with Go: Understanding Concurrency Basics
- Building a Terminal-based Chatbot in Rust from Scratch
- # Building a Basic HTTP Server in Go: A Step-by-Step Tutorial
- Writing Integration Tests that Run inside a Unit-testing Framework Like Jest
- Building an AI-powered Second Brain in a Cloudflare Worker, with Cloudflare Vectorize and OpenAI
- Drastically Cut CI Time in an Nx Monorepo with Remote Task Caching: A Step-by-Step Guide
- Programming Languages: JavaScript, TypeScript, Golang
- HTML/CSS: Accessibility and Best Practices
- Frameworks & Libraries: React, Vue, Svelte, Lit, Web Components
- Runtime Environments: Node.js, Bun, Deno
- AI Services: OpenAI, LangChain, Cloudflare AI/Vectorize
- Styling: CSS, SCSS, Styled-Components, CSS Modules
- Testing Tools: Cypress, Playwright, Puppeteer
- Deployment: Vercel, Cloudflare Workers, Netlify
- CI/CD: GitHub Actions, GitLab Pipelines, Azure Pipelines
- Code Management: Nx, Turborepo
- Build Tools: Webpack, Vite, Parcel