My Timeline
Brief and succinct snippets from my career and day-to-day working life.
2026
As my time with Nando’s draws to a close, I get a call from an old client. A week later, over 2,000 miles, a ride on LeShuttle, two ferries, and three days of driving I arrive in Reine.
Here, the weather hasn't creeped above freezing in days and the snow is thick on the ground. Perfect weather for a bit of product videography!
The very first step my team and I had taken in our replatforming of the Nando’s website was rebuilding the restaurant pages. At the time they are slow and indexed very poorly. Customers struggle to find out where their local restaurant even is.
We had rebuilt them as a fast, responsive proof of concept to demonstrate that the replatforming approach is viable, and see an immediate improvement in search visibility and increase in traffic.
As the codebase and the project have matured, it had become more apparent that these could be improved even further and so ‑ as the project winds down ‑ I get the time to refactor and release these pages again, all‑new for a second time and with the benefit of near a year of project development.
My current project is drawing to a close. The original scope of work is complete and I am training their internal developers to take the project forward. As a result, I find myself back in the job listings and updating my CV.
I am approached about a role at another Virgin Group company. During the preliminary interviews, I have to work to avoid pointing out that, having already worked with Virgin Atlantic, I appear to be slowly "collecting the Virgins".
One of our team members has used the same profile image for four and a half years. Earlier this month, he updates it, using AI to add a pair of sunglasses.
The change is, of course, too momentous to pass without comment. By the next morning's stand‑up huddle, the rest of the team follow suit. Matching sunglasses. Matching poses.
Seven different people, all wearing the same photograph. One confused new starter, still a default green avatar.
For many, the first working morning of the year. We are greeted by a few millimetres of snow blanketing the city. The temperature has been below freezing all night and is not due to rise much this morning, leaving the snow frozen solid to the ground beneath it.
No doubt this will amplify some of the careless driving we see coming into Brighton each morning, now contending with snow and inevitably attempting it on worn summer tyres.
2025
Because I have a three‑year‑old, and the recent clock changes have not been kind to us as parents of said three‑year‑old, I am up well before 5:30am. It's 15°C outside, before sunrise, in November. That can't be right.
The final phase (for now) of the Nando’s website replatform goes live.
Now, Nando’s is able to publish and share recipes of their delicious PERi‑PERi food. The schema data generation work I did for this area in particular is recognised as driving significant traffic to the website in the weeks and months that follow.
The fourth phase of the Nando’s website replatform is released.
Built upon the same principles as the Blog, content editors now have a more granular control over the products, photography, and details that are published on the website, whereas previously this has come from an external source.
Later, these same pages will be integrated into an e‑commerce solution to allow website visitors to purchase from the website, or directly to their table in a restaurant to take home with them.
After experimenting with the beta version of Next 16 over the past month, I've now upgraded my personal website to the official Next 16.0.0 release. The migration goes smoothly and quickly overall, and everything appears stable on production. Interestingly, my Lighthouse performance score has dipped slightly ‑ by just a single point ‑ but otherwise, the update seems to be performing well and fully compatible with my existing Pages Router setup.
Build times are also now a full minute longer than a week ago, although I have also taken the opportunity to properly introduce CSpell into my pipeline, which means it is now checking spelling across the entire generated website on each new release.
As we work towards finishing the migration of another section of the Nando’s website from Drupal to Storyblok, I find myself writing migration scripts in Python ‑ a skill I rarely get to exercise. There's something very satisfying about watching the updates scroll past my terminal screen as the data flows from one CMS into the other.
The third phase of the Nando’s website replatform is released.
Built upon the same principles as the Blog, What's New is a section of the website dedicated to menu and product updates.
All of a sudden the heat of the summer passes.
One Sunday afternoon at the start of September I find myself on Goring‑by‑Sea beach with my family, in a jumper, watching the waves ‑ now dark and a little stormy ‑ roll in. A week ago this would have been calm and blue seas.
At home, the heating clicked on for the first time since May.
Swiftly following the first release, the next phase in the Nando’s replatform and migration project goes live.
This is the blog section of the website, allowing content editors to create new articles quickly and simply using Storyblok.
Watching Mat Armstrong's latest YouTube video, I am happily surprised to see him and his team ordering a Nando’s, using the very website I'm helping to build.
I'm hungry now.
The first release in the Nando’s replatform and migration project that my team and I have been working on goes live.
The new homepage runs on an all‑new Next.js application, connected headlessly to a new CMS (Storyblok).
My first major feature in this project is released: introducing Nando’s Rewards.
Not just a very jazzy looking graphic during checkout, users can now collect points for each order they make, redeeming these points for free food.
A little over a month into my latest project, and I find myself writing shell scripts and watching feedback cascade down my terminal window.
Although a departure from the more visual side of web development where I spend most of my time, it is an interesting challenge and far more fitting to my new 'Senior Software Engineer' title.
This will be an invaluable part of the migration task my team and I have to undertake later in the year. For now, I just need to make sure I don't accidentally DDoS their live site whilst the restaurants are open!
After a slightly nail‑biting wait for the paperwork to come through, I sign on the dotted line and join an enthusiastic and friendly team working on a PERi‑PERi exciting new project which will see me through until at least the end of the year.
🔥 🌶️ 🐓
Sadly, the browser‑based word game that I develop and launch has not attracted as many regular users as the client has hoped. For now, we place the game offline while the client regathers and considers gameplay enhancements for future releases.
Whilst working on a personal project, I pick up a side gig training AI models in front‑end web development, specifically focusing on developing pixel‑perfect interfaces from screenshots.
Despite the recent news that saying 'please' and 'thank you' to the robots costs their owners millions of pounds, I remain resolutely polite and friendly to my AI students. This isn't totally altruistic on my part however, I do it in the hope that they might spare me when the LLM equivalent of Skynet goes online.
Maybe they might even spare my career?
I quietly launch an all‑new version of my personal website. Although it is almost identical in appearance to the previous version, this represents a significant shift in underlying technology, away from Gatsby and over to Next.js, now using Vercel but still connecting to the same headless CMS instances.
Although only very marginal, the performance gains and Lighthouse score improvements are a gratifying confirmation that it is worth the work. I've not even started to try optimising this new version yet either!
What I have always understood would be a relatively short engagement with Zantaz helping them bugfix and add features towards an industry demo comes to an abrupt end. I receive an email whilst on the beach on a family holiday: the demo has been very successful, my services are no longer required. I play with my children in the surf and then take them out for lunch in Rye.
Suddenly, my LinkedIn feed is filled with people using ChatGPT to generate images of themselves as action figure toys. My results aren't especially flattering, but do have a level of personal detail (like the shoes and phone cover) that I didn't expect.
The password protection page for a browser‑based word game freelance project that I've been working on for some time is finally removed and the public is able to play.
This is a modern reimagining of a classic browser‑based word association game called Linkudo, now available for people to play again after nearly a two‑decade hiatus: linkudo.com
Continuing what seems to be a trend this year, I join another American company. This is an interesting one; an AI‑driven data storage and compliance application built in Next.js.
I begrudgingly turn 40.
A freelance project (a browser‑based word association game) I've been working on and off since the new year ‑ still carefully guarded and under wraps ‑ goes into private Beta. There are still a few caching and performance tweaks to be made, but it is played without fault over 2,000 times during the first day, with my client and me receiving almost unanimous positive feedback.
I have already lined up all my jokes about trading skies for seas, hangars for harbours, wings for sea legs ‑ leaving the passing clouds of Virgin Atlantic behind for something a little more boat‑like. However, after two months of meetings, five rounds of interviews, and a tech test, a project I have been working to secure since December falls through hours before I am due to start.
Some slightly onerous (though I'm sure not malicious) terms in their contract state that any intellectual property I created or invented at any time during the contract period (including work done at home, on my personal laptop, in my pyjamas, or even while fixing a lawn mower) belongs to the client.
This isn't something that I could agree to (nor should anyone), and despite three weeks of back‑and‑forth discussions on that specific contract term, they are unable to remove or clarify the clause. This is very disappointing given how much time and effort has gone into securing the role and the momentum I have already begun to build with their internal team.
One of the final aspects of the Search replatforming project that my team and I have been working on with my airline client goes live.
Integrated into the all‑new Search Experience that we released a little over a year ago, it replaces an old (and outdated) interface that has been confusing their users for the past eight years.
I start a new and exciting freelance project, redeveloping an old Flash word association game.
Step one is to flex my Python, I've written a script that generates game configurations. This maps out the (frankly enormous) associated words dataset into a node graph and then uses a BFS algorithm to traverse the graph, finding viable configurations and solutions.
Sitting in a meeting at one of the leading tech companies in the world, amongst the most intelligent, well‑educated, and knowledgeable developers and engineers I have ever met (also in the world).
They all think I'm the clever one and are excited to meet me again because I speak with a British accent...
After almost a full day of travelling, including a ten‑hour (albeit very comfortable) flight with my old airline client and an eight‑hour time difference, I arrive on‑campus in Redmond for the first time in nearly three years.
This time the focus is on investigating how we can expand privacy‑based browser services with AI to detect distracting and problematic web elements.
Little do I realise until altogether too late that this means being in America during the same week as Trump's inauguration. It is fair to say that this is a week to remember.
The New Year arrives, and with it, your annual reminder to go and update the copyright year in the footer of your websites... assuming that you are still doing it by hand and haven't yet implemented one of the many methods that can be used to automate the copyright year on your website.
Come on now, it's 2025 already!
2024
After more than two‑and‑a‑half years with Virgin Atlantic, my final day arrived and passed.
I have been privileged to work with this team of exceptional engineers, and to make genuine and measurable improvements for their users alongside them.
During Black Friday nearly 3,000 bookings are made through our all‑new Search, Results, and Book flow, with a total value of over £8,000,000. By comparison, a normal day sees around half that many bookings.
Analytics collected over the course of the weekend and compared to the same sale period from the year before show that with our new applications, latency is improved on average a little over 30%, whilst load times are reduced by more than 55%.
The average end‑to‑end booking journey from first search to the booking confirmation page is reduced by nearly two full minutes.
As I reach the two‑and‑a‑half‑year milestone with my airline client, they announce a strategic shift for the coming year: outsourcing their app development to a third‑party agency, using up the vast majority of their budget.
I'm told that I'm a victim of my own success; the projects that my team and I have worked on have matured to a point where they can now be seamlessly handed over to my client's internal development teams, rendering my role surplus to requirements.
Reflecting on the past two and a half years, I am proud of the innovative solutions we have delivered, the challenges we have solved, and the improvements we have introduced for the company and its customers.
Whilst this marks the end of a chapter I have dearly enjoyed, I am also excited to explore new opportunities in 2025. Time to dust off the ol' CV and take on the next challenge!
Jaguar reveal their new branding, and suddenly my socials are awash with strong opinions and negativity about the route the brand appears to be taking.
I feel like I would be missing out not to have an opinion of my own ‑ it seems like literally every other person does. However, I don't mind it, and it certainly wouldn't put me off buying another of their cars in the future.
I do wonder if they might just be trolling us all though...
After months of development and almost exactly a year since we released the updated Homepage and Search Panel for Virgin Atlantic, my team's replatforming of the remaining Flight Search application has been launched to the public.
Using React and Next.js, alongside the component library we began developing two years ago, this marks another major step forward for the airline as they take ownership of their online platforms, opening up further opportunities to personalise and unify their online properties.
Here, you'll find side‑by‑side screen recordings of the old and new applications. Aside from being significantly more robust than the previous version, our new platform is also faster and more responsive, with average customer journey times reduced by over 20% and a very marginal increase in booking numbers (so far).
In what is a new record by quite some margin for my family, the first playing of Slade's Merry Xmas Everybody is heard in our house three days before Bonfire Night.
I'd like to blame the two year old. Honestly, though, it's an excellent song that deserves hearing outside of the couple of weeks leading up to Christmas. Not long now until I can get away with wearing my festive jumpers too!
In preparation for releasing my team's all‑new next Flight Search application for my airline client, we begin load‑testing of the new application in its new live environment, currently 'in the dark'.
Ramping up visitor numbers to 400 per second over the course of ten minutes reveals that we only see very tiny deviations in response time (which we later track back to a switch in the network rather than the application), and not a single failure.
This is at least a ten‑fold improvement on the application that we are replacing, which begins to fail above around 35 visitors per second.
As Hurricane Milton makes landfall in Florida, more than 4,000 miles away the BBC Weather services start publishing astonishing weather predictions on their website and apps, forecasting 14,804mph winds across the UK, and temperatures reaching over 400°C in the Midlands.
I receive an unexpected call for help, because apparently my details still appear in the documentation for work I did with BBC Future Media twelve years earlier. With a little digging, it becomes clear that the issue lies with their data supplier ‑ DTN ‑ rather than with the applications themselves.
I propose reconnecting these back to their former Met Office data sources. Instead, they opt to wait for their supplier to correct their data. It takes a further day before their data source is corrected.
The Case Studies section of my licensing client's website, which I launched almost exactly three years ago, has become a burgeoning collection of eclectic and historic projects that the agency has worked on, and clients that they have worked with.
In the interest of allowing users to find suitable and relevant case studies quickly, I have introduced a number of (client‑side) filtering options, the most recent of which allows the content team to assign a year to each case study, which the user can then filter by on the front‑end.
The Seasonal Messaging service which my team and I released for my airline client's Search Experience earlier this year gets a significant update. Now, rather than being content‑managed using a manual JSON‑based process, the client's content editors have a simple AEM interface through which they can publish and edit these messages whenever ‑ and as often as ‑ they wish.
Whilst the new flight search interface and book flow that my team and I have been working on over the past several months has been limited to specific flight routes and behind A/B tests, today sees it fully released to all of our users and on every route.
I've been working on a new reveal‑type for Virgin Atlantic's search results page, which will shortly be going into A/B testing. This allows users to see and compare details between different fare types before making a decision. Presently, users are presented with a modal, but we hope to demonstrate that a drawer‑type reveal within the page rather than over it will be easier for our users.
As my time with Virgin Atlantic continues, my responsibilities are shifted, moving from being a 'Lead Engineer' to a 'Technical Architect'. This is a reflection on the development and planning my team and I have undertaken over the past two years in replatforming the Homepage and Flight Search features, and opens the opportunity of similarly focusing on other areas of their digital portfolio.
I deploy an updated (hybrid redesign) version of the Wreel Agency website, which I have been looking after in this and its many previous forms for the past decade and more.
Retaining the existing structure and underpinnings (Gatsby, React, Sass, Contentful, although now using Netlify rather than AWS), this is seen more as an interim step towards an all‑new website; a 'hybrid' redesign where all‑new typography and interactions have been introduced, alongside a new video‑based homepage intro.
As my airline client continues to pave the way for sustainability within the industry, my team and I have been implementing a new feature into their customer‑facing flight search platform.
Although presently released 'in the dark', in the near future users can expect to start seeing accurate emissions data about each specific flight (calculated down to the very seat and fare type), within the search results, allowing them to make an even more informed and sustainable choice when booking their flights.
If you are one of the (now) 65% of visitors to the Virgin Atlantic website who is presented with the new Search Experience that my team and I have developed (alongside the new Header, Footer, etc), you may now also notice curated Seasonal Messaging, presented to visitors who search for certain routes, or certain airports, between specific dates.
As we continue to progressively launch our replatforming work at Virgin Atlantic and Virgin Atlantic Holidays, you now have a 50% chance of being presented with the new Header, Footer, Homepage, and Search Experience my team and I have developed.
The first iteration of the new Stick + Twist website goes live. It is a bold, highly animated and colourful website built using Gatsby and Contentful.
There are big plans for this website, and a second version is already in the works for later in the year. But for now, this marketing consultancy has a website they can be proud of.
2023
Just in time for Christmas, my team and I manage to release the new homepage (Next.js and AEM) and search experience for our airline client: virginatlantic.com.
Although only presently being served to a very small number of visitors to the site, this signifies another big step in their replatforming ambitions: the first time this airline has had control and ownership of its own homepage.
Over the weekend, a DDoS attack carried out on the live website of my airline client manages to bypass their Cloudflare protection and temporarily disables the client‑facing portion of the site.
After months of planning and development, followed by the classic last‑minute hubbub as my team charged headlong into our own impending deadline this week, our release date is postponed indefinitely.
Some of the initial pieces of work my team and I have been working on for nearly the past year have begun to surface to a small number of customers on the virginholidays.co.uk website.
Whilst only 5% of visitors to the site will see this for now, it demonstrates a big step in the replatforming of my airline client's online portfolio, as well as a new header, navigation, footer, and AEM‑driven content (using Next.js).
In partnership with Wreel, I begin the development of a brand new, cutting‑edge, and highly‑animated, website for a state‑of‑the‑art acoustics company. They are world‑renowned for their high‑fidelity headphone systems and on the cusp of a new venture into premium in‑car audio with another client of mine in the coming year.
Whilst development of the new website is quick and results are impressive, this is regretfully the first (and only) project in twenty years that I have to hand over to another developer due to personal circumstances within my family.
After dropping my younger daughter off at nursery, my older daughter and I are caught on camera by a passing Google Maps car, forever immortalising our walk back up the hill on Street View.
2022
I begin experimenting with the
theme-colourmeta tag, eventually implementing an interesting new feature into a client website where I used JavaScript to extract the dominant colour from their hero images, and then animate the browser theme to match as the page transitions.This effect is particularly impressive around the new (at the time) iPhone 14 Pro Dynamic Island.
The BBC website 'goes dark' using a minimalist version of the homepage that I had developed whilst working with their Future Media & Technology team eleven years earlier.
London Bridge is Down. Rest in Peace, Your Majesty.
This week marks the ten year anniversary of us leaving Manchester. It's fair to say we have been fairly transient throughout the past (nearly) two decades, but Manchester remains a city that will always feel like a part of our characters; "home" even after a decade away.
I attend a client office for the first time since February 2020. In the interim period I've worked with six different teams, transformed two monolithic e‑commerce platforms, built a new one from scratch, consulted with a tech giant on the future of their browser, and released a handful of freelance projects.
All remotely.
Virgin Atlantic & Holidays logo I am brought into Virgin Atlantic to join their Digital First team as a lead engineer, and to assist in their ongoing project of transferring their digital platforms and assets to new platforms.
Firstly, my team and I are responsible for our part in the creation, maintenance, and development of a new Design System using React and Storybook. This is a library of all‑new, reusable, components allowing the wider (internal) development community to begin using the new design language, and allowing us to begin the process of replatforming their content‑heavy Browse pages.
From there, our work has involved using these to roll out a new features alongside a new headless system design (using their existing AEM instance) for their content‑heavy pages and search.
Our four month old daughter ‑ Sophie ‑ undergoes the first of her cleft surgeries under the care of the Evelina in London.
Microsoft formally retires Internet Explorer, neatly rounding off the first two decades of my web development career, often struggling with IE's nuances and outright nuisances. It's been an interesting journey.
Like many others working in e‑commerce and fashion, I suddenly find my contract at Boohoo cut to an abrupt end. At this point, my daughter is two weeks away from her first cleft surgery so in the grand scheme of things, timing isn't as bad as it could have been. The hunt for a new contract begins!
I complete the restoration of our new (old) garden bench. This is a classic 'Brighton' bench, found in virtually every public space across the city and across Sussex. This particular one is an original; made by the Every Foundry in Lewes in around 1880, who are also responsible for much of the ornate ironwork in Brighton including the station roof, and Brighton Bandstand. Our bench is said to have been removed from the seafront during the war effort but never returned.
We had recovered its broken remains from a collapsed workshop in Steyning a year earlier (with the granddaughter's permission). Since then we had repaired and refinished it, now sitting in our garden, looking out to sea once again in (family) service.
We welcome our second daughter into the world. Stubbornly late just like her sister was. These girls will rule the world one day.
Cabiri & Debenhams logo By night I work with Microsoft, by day I am invited to join the e‑commerce team at Boohoo Group, working ‑ to start with ‑ on the Debenhams website.
Leaning on my previous big e‑commerce experience, we are tasked with shifting their aged monolithic platform to a new, shared, multi‑brand, React‑based PWA using headless services from CommerceTools.
Microsoft logo Through a series of rekindled connections, I find myself logging into meetings in Washington in my evenings as a Consultant Staff Engineering Specialist to talk about the future of their Edge DevTools.
In partnership with W3C and the Web We Want initiative, much of the hands‑on development work focuses on using in‑browser extensions using TypeScript to introduce preliminary versions of future web features.
2021
The wind‑down towards Christmas begins. My projects are paused, my inbox is empty (but will quickly fill back up again), my Out of Office is on, and ‑ eventually ‑ my laptop will properly go away for a few days. Wishing everybody a Merry, and peaceful, Christmas!
By the end of the month, we complete the first‑pass implementation of an all‑new navigation system for our client. Built around their existing Chakra UI implementation, this is a drastic departure from their current multi‑tiered, accordion/dropdown‑based navigation system.
I begin work in earnest on an all‑new navigation system for the World Economic Forum, working alongside a very talented designer, an old friend, and a familiar face from my John Lewis days @malinfish.
Made by Many & The World Economic Forum logo A Dockerised, monolithic, project with over eight years of active development behind it. Under my tenure we introduce a gradual roll‑out of an all‑new React‑based front‑end (via the existing GraphQL layer), and introduced new features including tiered forum membership and more in‑depth Topic and Article pages.
I launch the new Case Studies section of the IMG Licensing website. Building on the Gatsby + Contentful configuration I developed for them last year, this new section allows them to show off previous work in a simple image/video/description format.
I complete a four‑month stint working with AND Digital and Direct Wines.
During the previous months my team and I produce five individual, content‑led promotional microsites and introduced a raft of performance and UI improvements to their main websites and app. At this time, conversion has already increased significantly.
I have my second Covid‑19 jab. I'm a little uncomfortable with needles but don't even realise this one has happened until she tells me I'm all done. The NHS response to this pandemic on a person‑by‑person level has been nothing short of amazing. They deserve so much more than a hard‑fought 3% pay rise and a clap
I launch a total rebuild, rebrand, and redesign of the IMG Licensing website. This is a complex, media‑heavy Gatsby build (React and Sass), hooked up to Contentful for totally hands‑off client updating. Very proud to see it in the wild at last. imglicensing.com
Fifteen years ago to the day, I was stuck on a hot, broken‑down, tour bus at the side of the road somewhere on the outskirts of Geneva. What should be a simple sixteen‑hour journey where we mostly slept off the night before becomes a two‑day epic.
All the while the band we are touring with and supporting have taken a short flight. Sensible.
I have my first Covid‑19 vaccination. No queuing, no waiting. I am in and out again within half an hour and barely feel a thing. For a service run by NHS volunteers, it is incredibly well‑organised and straightforward.
I begin rolling out performance updates to a new client's homepage. Their previous agency had told them that they were providing them with a 'lean' site unburdened with unnecessary frameworks.. and had then supplied them with a WordPress site, built using (unminified) Bootstrap and jQuery...
Unsurprisingly, the difference in performance is pronounced and immediate followed by a notable uptick in user engagement and conversion.
Over the following months (and with more work), my client's metrics show traffic increasing by over 400%, whilst profits nearly double.
AND Digital & Direct Wines logo I work as a lead developer on the redevelopment and replatforming of the membership and subscription platforms at Direct Wines, with AND Digital.
My trusty, nine‑year‑old, top‑spec, 2012 MacBook Pro finally succumbs and I replace it with a tiny M1 MacBook Air. I worry about the screen size difference but within hours it is totally imperceptible; the performance upgrade, however, is far more perceptible!
I take on a part‑time advisory Technical Director role with Wreel Collective: a nimble and creatively independent team of the best talent. This is a company that ‑ in its different forms ‑ I have been involved with, and shared projects with, for several years. A founder who I've worked side‑by‑side with for over a decade.
BSH Hausgeräte logo For a very short and intense month I join an all‑new team at BSH Hausgeräte, the group of companies behind most of appliance brands in your kitchen. In Munich, my team and I put together the foundational architecture and a library of themeable React components to consolidate their multiple brand e‑commerce websites onto a single platform.
After nearly a full year, I complete my contract with Selfridges, having helped improve their multifaceted codebases and user interfaces. Our improvement and updates have been regular and well‑received. Whilst there is still a lot of work to do, I (hopefully) leave it in a better place than when I arrived!
After constant and unresolvable outages and slowdown in their VPN clusters, I successfully complete the migration of 105 live client websites, plus a further 172 domain registrations away from @tsohost.
This happens with absolutely no discernible downtime, and a new average initial server response time for my clients at around 4ms, compared to the 2+ second response time tsoHost has been providing (when it worked at all).
I introduce Store Suggestions into the Selfridges search interface. This comes from a curated definition list managed in AEM, where potential search terms are matched with store locations. This allows complete control over future additions without the need for further developer input.
I begin working on a new freelance project, experimenting with some cool micro‑interactions and animations for the introduction, header and navigation which heavily features 'glitch' type interactivity throughout. Developed using React and vanilla CSS (Sass) animations for now...
2020
I roll out an update to Selfridge's new Brand Directory page, introducing typeahead‑type filtering. Amongst other things, this also includes pushState which will later allow context‑based deep‑linking from elsewhere on the site.
I implement a complete redesign of the Selfridges website Brand Directory. This includes A‑Z navigation via animated scroll, filtering, and sticky interface elements for both desktop and mobile.
On mobile, this responds to touch and drag interactions as well as more conventional keyboard and mouse inputs.
I launch my latest freelance website project, built using Gatsby, React, Sass, Contentful, and AWS: wreelcollective.com (later becoming wreel.agency).
After a little research, I switch a complex and long‑standing React project over to Preact. Almost entirely painless!
My first major release at Selfridges is an all‑new e‑commerce search interface. This stores previous searches, auto‑completes, and string‑matches your search against brands and keywords.
We see an immediate and very pronounced increase in user engagement with the search feature, alongside a modest increase in sales which is directly attributable to the users being able to more easily find products of interest.
Having spent some months contributing to the Gatsby codebase, and launching several websites on the platform for clients, I finally get around to launching the third version of my development portfolio website.
This is a full Gatsby application, using Contentful for content and built on AWS. Retaining much of the interactivity and animation from previous versions of my site, this continues to evolve and expand for the following four years.
This month marks the launch of the all‑new Red Central website.
Developed in Gatsby with Contentful, this is a bold and media‑rich website designed and developed to reflect the creativity and strong personality of this design studio.
Selfridges logo My previous experience and success leading the Browse team at John Lewis finds me leading the CEX team at Selfridges, fully remotely.
With a huge platform initially broken out over three different legacy codebases, my team and I are tasked with putting the architecture and scaffolding in place to bring these disparate pieces together under a headless version of AEM, using a library of new React components.
In tandem we are also tasked with maintaining the existing fragmented codebases, and introducing improvements where possible. This included an all‑new sitewide navigation, built within our newly‑defined architecture.
GOV.UK logo I stumble across a data feed from the UK government that contains daily Covid infection data. With nothing to do in my evenings, and recognising that the official representation of this data isn't very good, I spin up a small React application and spend some time making the data more accessible and easier to understand and filter.
It takes a few hours and once running, I share it on Reddit. Within three weeks my application is receiving over thirty thousand visitors a day.
I am approached by an old colleague at Government Digital Services and during the following week my application is rolled into their design system and released as an update to the official UK Coronavirus Dashboard, where it remains live to this day.
This later falls under the remit of the UK Health Security Agency, who has since launched a new health data dashboard, which borrows heavily from this original project.
Boris and Professor Chris Whitty fumble onto the TV screen in our living room every evening telling us to stay home. My end‑client goes into bankruptcy, my contract ends overnight. My wife ‑ who works in the NHS ‑ works long and hard hours at the local hospital.
I take a career break and spend the following lockdown months with my daughter, using our 'daily exercise' allowance to walk the deserted beaches and parks of Brighton, occasionally finding a rogue ice cream van.
The new Somo Global website goes live after two months of content‑loading and minor UI tweaks.
Fresh Egg logo Continuing with my recent run of agency projects, but dreaming of a commute that involves driving down the coast in something convertible rather than being packed onto a commuter train, I join a small agency in Worthing leading the UI development of one of their Gatsby projects.
This project becomes the largest known website built using Gatsby, my team and I become one of the driving forces behind the introduction of incremental builds on Gatsby Cloud.
2019
A week before Christmas, I'm in Chinatown with friends joking about a new virus that has started to appear in the news...
Somo Global logo After more than a year and a half with John Lewis, it is time for a new challenge. I move back into an agency environment by joining Somo Global, just across the street from John Lewis. Here I'm tasked with a set of their website projects in my favourite tech stack: Gatsby with React, in TypeScript, and connected to a headless CMS (Contentful) and Eventbrite.
We make the move back to Brighton and I immediately discover just how expensive it is to own a century‑old house, exposed to the sea, that probably last saw any maintenance thirty years earlier.
As the Polestar 2 is announced via livestream, an updated version of the Polestar.com website is launched. Now using Gatsby, a significant technical step forward from its predecessor, it has grown to multiple languages, hundreds of pages and vehicle configurators.
2018
To the soundtrack of Bohemian Rhapsody, John Lewis launches their new rebrand as 'John Lewis & Partners', a secret project my team and I have been working on for several months.
As MOSCOT crosses Sixth Ave. to open a new store in the heart of NYC, the templates and components I had developed at the start of the year, along with a mild rebrand, break cover.
Moving away from their aged WordPress website, their new website represents a significant aesthetic and technical step forwards and (hopefully) some future‑proofing on the Shopify platform.
John Lewis & Partners logo Moving deeper into e‑commerce, I join John Lewis at their Victoria office to lead their front‑end Browse team. I become responsible for a team of developers, and our part in a massive high‑end e‑commerce platform with over 160,000 products.
My team and I maintain and enhance the existing platform (built in Handlebars, Sass, Java, Groovy, and AEM), whilst designing and kicking off development of an all‑new React‑based platform.
The web templates and components that I have been developing over the previous months for the new Tony's Chocolonely website start to make an appearance online. Visitors from outside of the Netherlands are signposted either to their existing 'oldskool' website, or through to their all‑new (but currently only in Dutch) website and chocoshop.
2017
Valtech & Navico logo Another relatively short contract, this time as an agency principal developer with Valtech. Our team develops an experience‑driven multi‑site, multi‑brand, multi‑regional, and multilingual e‑commerce platform using Episerver and Node.
As the Polestar 1 ‑ the first car produced under Volvo's new brand ‑ is unveiled at the Shanghai Auto Show, their new website, nearly a year in the making, goes live with a handful of pages and in just two languages.
Our first daughter is born having made us wait weeks past her due date. Life changes immediately and drastically, not least because this is the same day that HSBC choose to inform me that my services are no longer required. They then backtrack on this claiming their call is 'in error'. I work with them for another several months.
I start the process of redesigning my personal website. Around the same time I am also invited to an exciting new project which takes up every moment of my free time for the following several months.
Although possibly one of the strongest personal designs I have worked with, this version of johnkavanagh.co.uk sadly never makes it past preliminary development.
2016
HSBC logo Following in the fintech vein, I join HSBC in Canary Wharf, as part of large digital transformations project, leading a relatively small UI team within it. Over the following fourteen months my team and I rebuild the middle‑tier and front‑end of the bank's commercial banking application in React.
As this is launched and becomes commercially viable, my responsibilities shift to training a new offshore team who became responsible for the application's ongoing maintenance. I am subsequently moved to aid development of an iOS banking application for the sister bank ‑ First Direct.
Both projects are still in use to this day.
Dataffirm logo A relatively brief encounter as lead front‑end development with another Camden‑based startup. Dataffirm developed a real‑time Angular‑based application which handled huge quantities of 'big data' and social signaling to offer informed investment decision‑making.
2015
Condé Nast / Style.com logo Whilst working part‑time on post‑release work for Macmillan, I join Condé Nast in their new e‑commerce startup as part of a small, multidisciplinary, technical team. We develop a Clojure‑based, high‑traffic, e‑commerce platform, which later becomes Style.com and is subsequently acquired by Farfetch.
The first Macmillan Education publication to feature the new e‑learning platform my team and I have been working on is published. Feedback from users is extremely positive. A further twenty‑four courses are published in the following month using our sophisticated QTI platform.
2014
A matching‑pairs game I had developed for Cox & Kings goes live.
This is a pure HTML, CSS, and JavaScript application embedded into their homepage using CSS animations. It records the number of turns a user has taken, and the amount of time it takes for them to complete the game before presenting them with an entry form for the competition.
By the end of the competition (six weeks) the game has been played more than a million times.
Macmillan logo I join Macmillan developing an online e‑learning companion for their published books. This is a multilingual platform developed using QTIs, Polymer, and Web Components with complex interactivity including drag/drop, hypermedia (with translated subtitles) and audio, pair matching, and timed quizzes.
I launch the second version of my development portfolio website. Moving away from the 3D carousel (although retaining some of the weather theme‑based easter eggs), this is a completely new‑build using animation and layered imagery in an attempt to demonstrate the multiple layers of work that go into building for the web.
Amongst many custom elements, the typewriter effect is written by hand and includes self‑correcting typos. It is some years before this effect becomes more common.
Building on the original success of Lightbulb Creative, my (now‑ex) colleague and I launch his next freelance design website: Licks Creative.
Taking advantage of recent advances in web animation, this features a highly‑animated full‑screen experience where each page animates into and out of view. Projects themselves are loaded via AJAX and feature the first production release of a relatively rudimentary CMS I had developed.
The Licks Creative website goes on to earn a number of accolades for both its design and technical implementation.
2013
The new (and significantly updated) UI for the Bergen Open Research Archive (BORA), at Bergen University College (HIB) goes live.
This is an interface I had developed for them as flat HTML, CSS, and JavaScript to introduce an entirely new look and feel to the site, improve access, and introduce responsiveness for better mobile device support.
ecrm.co.uk, a bold, animated, drawer‑based companion website to Underwired is launched.
For the first time in several years, MediaLoot ‑ a marketplace that specialises in high‑quality creative resources ‑ gets a ground‑up rebuild .
This is my first release as part of a year‑long collaboration with MediaLoot where I've been tasked with slicing their new designs into interactive, static, HTML5, CSS, and JavaScript components and templates.
An old colleague and close friend mine launches Fathom London ‑ a user experience and software design consultancy and along with it, a new website which he asks me to develop for him.
This features a data‑heavy influence in design and interaction, including almost neo‑retro spinning machinery, highlighted bar charts, and a scroll‑tracking fill animation.
2012
MyBest5 is launched. This is a location‑based social sharing platform; the idea being that users can use the site and app to share their top five venues (bars, restaurants, etc) both via the platform and via their social media accounts.
For my part in the project, I develop the user interface across the platform, from listing and venue pages, through to user account.
I launch the website for Conch Associates, a branding and design agency based in Manchester. This was an advanced website for its time, featuring a greyscale, illustrated, cut‑out aesthetic.
Using scroll events and some CSS trickery, it moves horizontally rather than vertically, displaying a depth‑of‑field and parallax effect as props within the site move past the viewer. Most websites of this type at the time were developed using Flash so it is an achievement to manage this using just HTML, CSS, and JavaScript.
It even had its own mobile version!
The new Underwired agency website goes live. This is a one page site featuring animated drawers with calculated gradient offsets, and a header carousel structure using HTML5, CSS, and JavaScript.
Wild Dog Design logo A move to the South Coast (again for a girl) sees me joining Wild Dog Design as their lead developer, tasked with aiding the agency in their transition from an existing emphasis on on print design, to a coherent digital design and development offering.
Over the following two years we do exactly that, putting in place design systems and project frameworks, producing new websites for the likes of Cox & Kings and MasterChef, and doubling the size of their (small but mighty) development team.
The Maior is launched. This is a creative, online‑only unique publication via its own app (unusual for the time), for which I developed their website.
Also unusual for the time, this features a prominent, totally custom, HTML5 video player, and a unique look and feel that helps capture the essence of the magazine.
The all‑new Oxfam website and brand identity that I have worked on during the previous year with Code Computerlove goes live.
The BBC Weather microsite comes out of Beta and replaces its previous, clunky, non‑responsive, predecessor. Since launching the first beta, we have made a significant number of changes and updates, many driven by user feedback during the beta phase.
One of these is the introduction of detailed hour‑by‑hour meteorological data. The other big one is doing away with that ferris wheel photograph in favour of animated, ambient page themes based on the current weather conditions. Not dissimilar to the original weather‑based themes that I had implemented for my personal website, although admittedly much slicker.
In an unexpected set of circumstances that continue to haunt me to this day, placeholder data that I had been using in my development of the new BBC homepage makes its way out onto one of the active endpoints, and then onto the live website. The entire ordeal lasts less than ten minutes, and is presented to website visitors for less than a minute.
Nevertheless, during that time over ten thousand people visiting the BBC homepage are presented with a photograph of a baby turtle eating a raspberry, alongside the title of an article describing O2's plans to provide London with 'Europe's biggest' free wi‑fi zone.
Due to a deal tendered between Blackberry and the BBC many years earlier, UK Blackberry owners have an icon on their home screen that takes them directly to the BBC homepage. As a result, traffic from these low‑power, small‑screen, not‑at‑all‑standards‑compliant devices to our new homepage is very high.
Much like Internet Explorer, these devices come with a host of their very own unique quirks and nuances. It's a good thing that our new homepage displays on them flawlessly then!
The website for Wish it Wasn't White (a company specialising in changing the colour of uPVC window frames and conservatories), and which I developed, is launched.
The Design Museum announce the shortlist of nominees for Designs of the Year 2012. In their Digital category, 'BBC Homepage Version 4' is listed ‑ an award that it would later go on to win.
2011
InsFocus provides a Business Intelligence (BI) web application to insurance companies and underwriters, generating reports and providing data analysis via their built‑in, comprehensive insurance data model.
This month they launch the latest version of their web application interface, developed by me over the preceding several months as a set of static components and templates from their designs.
I receive my first in‑print accolade as Web Designer Magazine prominently features the new johnkavanagh.co.uk website.
The all‑new BBC Weather pages are released into beta following intense development by multiple teams over the past several months. At this point it features a static image of clear skies behind a ferris wheel with grand plans to add weather‑based ambience before replacing the current BBC Weather microsite.
The new BBC homepage goes live. Although I've only been on‑team for a short while at this point, the short timescale is a reflection on the sheer speed and quantity of work my team has achieved.
As you might imagine, not everybody loves it. However, the overwhelming response is very positive and user data shows website visitors are spending longer on the site, travelling further/deeper into it, and finding content that has previously been much more convoluted to access.
The BBC logo As the BBC makes the move to MediaCity, I join their Future Media & Technology team in Salford as their sole UI developer. My first few months are focused on the rebuild of the BBC homepage which goes on to be nominated for Design Museum Designs of the Year.
From there, I also work with other areas of FM&T as they built up their own development pods, aiding in the development of interdepartmental responsive design and development guidelines. Much of the work I am involved in here (particularly around Weather and News) remains in use to this day.
I launch the new website for Blue Chip Mobile, a mobile marketing agency based in Manchester.
iOra is an enterprise‑level software vendor that develops network solutions for hard‑to‑reach places. This is their new website ‑ launched this month ‑ and developed by myself in partnership with Breeze Design.
Analogue Baby wanted a website that would form a key part of their overall identity: to use their passion and knowledge to drive the design and development of something that they could be genuinely proud of. They wanted a unique, quirky, and strong, marketing tool.
I deliver an interactive and highly‑visual HTML5, CSS3, and jQuery‑powered website which attracts thousands of visitors during the first month, and wins a number of design/development awards.
Rocknations is the young people's ministry of Life Church UK, who hold an annual, festival‑like conference. This year, they have a new website that I've developed for them.
Built on WordPress, this is a feature, and media‑rich site including audio, video, and podcasts. Carefully optimised for mobile and tablet devices, it receives tens of thousands of visitors a week.
A key feature of this site has been its customisability; using set styles alongside theming tools, the owners are able to dramatically and totally change the look and feel of the website as they wish, giving each year a specific and unique look and feel.
Cisco announces that they will be closing down their EOS platform, which I had been developing projects for the London 2012 Olympics with for the past year.
During this time I become close with many of the EOS team, taking on a number of part‑time/freelance projects alongside their in‑house development team.
I launch the website for Lightbulb Creative ‑ a freelance project I've built for an old colleague. The site displays full‑screen with a small number of pages and highly‑interactive portfolio where the screen animates across as each project is viewed in more detail.
For the time, this is fairly technologically‑advanced and goes on to be nominated and receive a number of design and development awards.
Code Computerlove & Oxfam logo I join the team at Code Computerlove for my second contract, working on template development for the new Oxfam e‑commerce shop.
Having toyed with WordPress themes and neglected blogs for several years, I launch the first 'proper' version of my development portfolio website.
This is all hand‑written from scratch; a 3D animated carousel loads individual project details via AJAX. The site features an illustrated panorama displaying differing themes based on the time of day, and weather conditions wherever I am based at the time.
In total there are over seventy different combinations, resulting in an ever‑changing and dynamic website.
LateRooms logo My first contracting role, having been made redundant, days before Christmas. I start the new year joining the team at LateRooms.com to provide UI development support whilst they restructure their online platforms in preparation for internationalisation.
2010
We launch an all‑new booking platform for IHG Meetings, which is still being used to this day.
London 2012 announce Wenlock and Mandeville ‑ their Olympic and Paralympic mascots.
At the same time, the mascots' dedicated social networking platform (which I have been working on alongside Cisco on their Eos platform for the past several months) is launched. This gives LOCOG a way to engage with younger sports fans that has never been attempted at previous games.
It becomes obvious that Adobe Flash is being swiftly superseded by more modern web technologies. In a brief moment of downtime, I start to experiment with developing a Mario clone entirely in HTML, CSS, and JavaScript.
Although it doesn't progress much past the concept phase, it features keyboard control, progressive terrain generation, and parallax movement.
We release an all‑new version of the Yorkshire.com tourist website.
QuidCodes ‑ a voucher website that I had built for a friend‑of‑a‑friend is launched. Over the following months it soars to the top of Google's search results, attracting tens of thousands of visitors a day.
It is later bought out by QuidCo, with my development work making up the bulk of their new website thereafter.
Moving from Oxford to Manchester (this time for a girl, although also to be nearer home), I join McCann Erickson in their 'McCann Metro' office ‑ an innovation space in the heart of the city as a front‑end developer.
Here I work on large social networking and ancillary web applications for the London 2012 Olympic and Paralympic games before being made redundant less than twelve months later.
2009
Chicago Town launches their first 'X Factor Party' competition: an interactive website tied into a FaceBook application where contestants upload images of their parties with the promise of the winner receiving a private party with X Factor contestant Danyl Johnson.
At this time Facebook applications are still in their relative infancy which makes the (PHP) development challenging. I work as part of a team of three developers on this campaign, producing both the front‑end of the application and companion website, as well as the HTML emails sent out to contestants at various points in the competition.
The new Taio Cruz website ‑ which I've been working on for some time ‑ goes live, ready for the start of promotion for his latest studio album: 'Break Your Heart'. This provides a new set of forum, Twitter, and user features which allow his fans to interact with the artist in a way they have never been able to before.
The Ziboo website is launched. A unique and innovative technology company deserves an innovative and creative website.
Every page features an individual theme alongside high‑impact graphics, all very carefully optimised to load quickly at 2009 internet speeds!
Working with an old colleague, we start to release Looop ‑ a new digital printing marketplace which strives to reduce waste in the printing industry by selling print runs within the margin and off‑cut areas of existing print runs.
This is a complex, PHP‑based application with user accounts for both buying and selling, listing and e‑commerce, alongside integration directly into suppliers' print systems.
2008
Moving to Oxford to continue my studies, I join 2degrees (now Manufacture 2030) as their client‑side developer, supporting the redesign and redevelopment of their social networking platform.
Lotus 'Project Eagle' is revealed to the public at the British International Motor Show. Behind the scenes my team and I have been working tirelessly to prepare the website for a simultaneous online launch.
We later find out that we have been beaten to the punch‑line when a national chain of supermarkets places the latest copy of a popular motorist magazine out onto their shelves a day early, with the new Lotus Evora proudly emblazoned across the front.
At WWDC, Apple reveals that they have been using SproutCore ‑ an open‑source JavaScript framework that I have been casually involved in ‑ for web application development. In their schedule they describe SproutCore as "an open source, platform‑independent, Cocoa‑inspired JavaScript framework for creating web applications that look and feel like Desktop applications."
University of Surrey logo I graduate from the University of Surrey with first‑class honours in BSc Computing and Information Technology, having specialised in hypermedia, neural networks, and artificial intelligence.
"John Kavanagh on the Internet" ‑ the very first version of my personal website on johnkavanagh.co.uk goes live. Unsurprisingly, virtually nobody visits it.
I join TMB Marketing as a junior general web developer before swiftly moving into their solo front‑end development position, primarily working with their automotive clients.
I have my first ‑ and only ‑ crash during competition. A single, split‑second misjudgement and over a dozen rolls, followed by months of physiotherapy.
2007
Having obtained my Rally National B Stage Competition Licence from the Bill Gwynne Rally School, I join the safety team at Donnington Park as a part‑time driver around my studies.
BBC Jam is suspended by The BBC Trust following complaints to the European Commission from commercial online companies, claiming that the free educational service damages their business models.
With it, years of work I was involved in with Catalyst Pictures, along with thousands of educational resources for school‑aged children, is removed from the net forever.
The Transporters ‑ a television series designed to help children with autism recognise and understand emotion using a combination of live‑action faces and animated vehicles, and which I worked on as animator and web developer, is nominated for a BAFTA Award.
I join a student‑led project at the University of Surrey as their technical lead to support the development of a social network for current, past, and present placement year students.
2006
The revival of the early‑1990s TV show Biker Mice from Mars starts beaming onto children's TV sets across the world.
In Europe, the version being broadcast is different; with frequent advert breaks removed and audio artefacts corrected. This version of the Biker Mice from Mars is the one that I have personally spent several prior weeks editing.
2005
Alongside working with Catalyst and my studies, I join the university student radio station GU2 as a late‑night DJ.
I imagined that I could use this to help launch my music career and meet girls. In reality, it meant playing the same dozen tracks, from a small room, to an audience that usually consisted of just me or my drunk housemates.
I work on a short 3D animation sequence for a children's concept toy: a transforming, bath‑friendly, ship toy, submarine, and squid. This later becomes Mattel's controversial Mega‑Rig Shark Ship.
2003
I join the team at Catalyst Pictures, firstly as an Animator and Production Assistant before taking on responsibility for the design and development of their client websites and hypermedia.
Amongst many projects is the BAFTA‑nominated 3D TV series The Transporters, specifically developed to teach autistic children about emotions, and interactive educational games based in Flash for the now‑defunct BBC Jam.