Context
Ecotrust's ocean data portals — the West Coast and Mid-Atlantic Ocean Data Portals, both built on the Madrona platform — had each grown its own deployment. The applications were tightly coupled to legacy development and deployment infrastructure, which made them difficult to maintain, reproduce, and extend. Every portal was a separate act of remembering.
Decision
I chose a reusable base image with thin project overlays over the alternative of fixing each portal in place. Fixing in place is faster once and slower forever. The overlay approach costs more up front and requires deciding, explicitly, which concerns belong to the platform and which belong to a portal — which is exactly the decision that had never been written down.
Contribution
I redesigned the platform around a shared Docker base image and runtime layer, with each portal keeping a lightweight project-specific overlay. Alongside it: modernized authentication, containerized services, database backup and restoration tooling, multi-architecture container builds, continuous integration, health checks, and REST endpoints replacing the legacy XML-RPC paths in the map-group and drawing services.
Result
Delivered and merged: the West Coast container overlay, the Mid-Atlantic production container work, the API replacements, and the CI and operational tooling. In progress: the shared base-platform migration and the larger Mid-Atlantic overlay, both open pull requests as of August 2026.
What this already provides is reproducible development environments, automated container publishing, standardized configuration, and documented cloud deployment. What it does not yet provide is a measured organization-wide reduction in deployment time, downtime, or onboarding effort — that claim needs data the migration has not finished producing.
Learning
Splitting a platform from its products forces every implicit decision into the open, and some of them turn out to be disagreements rather than conventions. The technical work was the smaller half. Getting agreement on what a portal is allowed to override was the part that determined whether the architecture would survive.