← All workPHARMACEUTICAL · ENTERPRISE·2020

Pharma Multi-site

Multilingual multisite platform (NDA) — A global pharmaceutical group (under NDA) ran 30+ multilingual commercial and promotional sites across different countries, assembled by a succession of previous vendors. The job was to unify them onto one Acquia Cloud platform, give them a shared component library, and make launching the next site a routine rather than a project.

Drupal 8/9PHP 7/8Acquia BLTAcquia CloudNew RelicDrupal MigrateDockergulp + sass
Pharma Multi-site
Sector
Pharmaceutical · Enterprise
Year
2020
Role
Lead Drupal engineer
Outcome
30+ sites unified on Acquia · 12 more launched · CI/CD via Acquia BLT
The problem

What needed fixing.

Thirty-plus sites built by different vendors means thirty-plus ways of doing the same thing — no shared components, inconsistent code, and a multisite setup that nobody fully owned. Each new market site was a bespoke effort. The platform needed consolidating, a common component vocabulary, and a deployment process that scaled.

The approach

How I built it.

I unified the multisite on Acquia Cloud and introduced CI/CD via Acquia BLT, replacing ad-hoc deploys with a repeatable pipeline. I built a shared custom Paragraph component library so every site spoke the same design language, plus content sync and migration tooling. With that in place, launching a new market site became routine — twelve went live on the platform.

Thirty-plus multilingual sites left by previous vendors, unified onto one Acquia platform with a shared component library — then twelve more launched on the same rails.

Objectives
  • 01Unify 30+ multilingual sites left by previous vendors onto one Acquia platform
  • 02Introduce repeatable CI/CD via Acquia BLT
  • 03Build a shared Paragraph component library for consistency across markets
  • 04Make launching a new market site routine — and launch 12 of them
Key elements built
  • 30+ site multilingual multisite consolidated on Acquia Cloud
  • CI/CD pipeline via Acquia BLT
  • Shared custom Paragraph component library across all sites
  • Content sync and migration tooling
  • 12 new market sites launched on the unified platform

Thirty-odd sites, several vendors, one inheritance

When you inherit a 30-plus-site multilingual estate from a procession of previous vendors, the first job is archaeology, not engineering. A global pharmaceutical and eye-care group's commercial and promotional sites, spread across countries and languages, each carrying a slightly different idea of how things should be done. My job was to migrate the lot onto Acquia and make it behave like one platform instead of thirty arguments.

One component library, many faces

The unlock was a shared custom Paragraph component library — build a content component once, properly, and let every site assemble pages from the same well-made parts. It is the difference between thirty bespoke sites and one platform wearing thirty coats. With the foundation unified, launching the next site stops being a project and starts being a configuration; we added twelve new ones on top of the existing estate.

Deploys you don't have to be brave about

Underneath, the unglamorous discipline: CI/CD via Acquia BLT so deploys stopped being a held breath, content-sync and migration tooling so moving sites onto the platform was repeatable rather than artisanal, and New Relic watching the whole estate so a problem announced itself before a country manager did. Thirty sites is only frightening if you're doing it by hand.

New Relic monitoring
New Relic across the estate: the problem announces itself before a country manager does.
Full stack
Drupal 8/9PHP 7/8Acquia BLTAcquia CloudNew RelicDrupal MigrateDockergulp + sass

Got something with similar shape? I read every message personally.

Start a project →