Ein neu gegründetes Team übernahm gewachsenen PHP-Legacy-Code für das Revenue-Reporting einer globalen AdTech-Plattform im neunstelligen Umsatzbereich. Auftrag: Modernisierung und Migration in eine skalierbare AWS-Umgebung bei laufendem Betrieb. Laufzeit: 12 Monate.
Ein neu gegründetes Team wurde aus einem bestehenden großen Team ausgegründet und übernahm die Verantwortung für den PHP-Legacy-Code des Revenue-Reportings. Der Code lief produktiv, aber er war über Jahre gewachsen – ohne Testabdeckung, ohne dokumentierte Infrastruktur, ohne Infrastructure as Code.
Revenue-Feeds von externen Partnern wurden täglich importiert und normalisiert, Kampagnen-Reports an interne Teams und externe Partner ausgeliefert. Das System musste täglich korrekte Daten liefern – in einem Umfeld wo Fehler unmittelbare geschäftliche Konsequenzen haben. Jede Änderung war ein Risiko weil niemand wusste was sie auslösen würde.
Keine Testabdeckung bedeutet keine Sicherheit. Jede Änderung am Legacy-Code war ein Blindflug. Incidents passierten regelmäßig, die Ursachen waren schwer zu finden, die Fixes riskant.
Gleichzeitig gab es keine Infrastructure as Code. Die AWS-Infrastruktur war manuell konfiguriert, nicht dokumentiert, nicht reproduzierbar. Was in der Cloud lief war nur dem bekannt der es aufgesetzt hatte. Die Aufgabe war das System zu modernisieren, auf PHP 8 zu migrieren, in eine saubere AWS-Umgebung zu überführen und gleichzeitig täglich korrekte Revenue-Daten zu liefern. Zwölf Monate, laufender Betrieb, kein Ausfall erlaubt.
Legacy-Code analysiert und Testabdeckung von 0 auf über 90% aufgebaut. PHPUnit für Unit Tests, Codeception für Acceptance Tests die das Systemverhalten gegen externe Partner absichern. Erst wenn Änderungen sicher sind kann man modernisieren.
Gesamten Legacy-Code auf PHP 8 migriert inklusive Anpassung aller veralteten Komponenten. Symfony als Framework-Basis modernisiert. Schrittweise, kontrolliert, mit Testabdeckung als Sicherheitsnetz.
Migration in eine skalierbare AWS-Umgebung: ECS für containerisierte Services, EC2 für compute-intensive Workloads, SQS und SNS für asynchrone Verarbeitung, RDS für relationale Daten, Athena und Glue für analytische Abfragen und Datentransformation. Gesamte Infrastruktur in Terraform als Code, versioniert und reproduzierbar. Nichts mehr manuell konfiguriert.
Estimates-Per-Click-Berechnung als eigenständiger Service entwickelt. Die Werte werden täglich berechnet und als Export bereitgestellt damit Media Buyer ihre Kampagnen datenbasiert optimieren können. Budget in hochperformante Channels lenken, schwache Channels reduzieren. Direkte Verbindung zwischen technischer Infrastruktur und messbarem geschäftlichem Outcome.
Revenue-Daten werden über AWS DataZone intern allen Abteilungen bereitgestellt. Kein manuelles Verteilen von Reports mehr, kein Datensilo. Jede Abteilung hat Zugriff auf die Daten die sie braucht.
Incidents
Testabdeckung von 0 auf über 90% erklärt warum die Incidents um 90% gesunken sind.
Testabdeckung
PHPUnit für Unit Tests, Codeception für Acceptance Tests – das Systemverhalten ist vollständig abgesichert.
Infrastructure as Code
Gesamte AWS-Infrastruktur in Terraform – versioniert, reproduzierbar, kein manuelles Klicken mehr.
Ein gewachsener PHP-Legacy-Code ohne Tests, ohne dokumentierte Infrastruktur und mit regelmäßigen Incidents in eine moderne, stabile AWS-Umgebung überführt. Die Testabdeckung von 0 auf über 90% erklärt warum die Incidents um 90% gesunken sind. Die Infrastruktur ist vollständig als Code versioniert. Estimates-Per-Click-Werte werden täglich berechnet und stehen Media Buyern für die Kampagnenoptimierung zur Verfügung. Revenue-Daten stehen über AWS DataZone allen Abteilungen zur Verfügung. Eine Modernisierung bei laufendem Betrieb in einem neunstelligen Umsatzumfeld ohne einen einzigen Tag Ausfall.