Zum Inhalt springen

Legacy-Neuschreibung

Softwaremodernisierung: neu geschrieben und live in 30 Tagen

In Ihrem Haus steht ein Server, den niemand neu zu starten wagt, und jeder weiß, welcher. Wir übernehmen ihn, Ingenieure mit über 25 Jahren im Produktivbetrieb schreiben ihn auf Go, Rust und TypeScript um, und nach 30 Tagen sind Sie live.

Schicken Sie heute den Stack. Innerhalb von 48 Stunden meldet sich ein Ingenieur mit Festpreis und Starttermin.

Heute

PHP 5.6, ein VB6-Client, ein Java-Kern, den nur ein einziger Laptop bauen kann, und der Server, den keiner neu startet.

  • app.phpPHP 5.6
  • legacy.dllVB6
  • reports.cfmColdFusion
  • crystal reportsunsupported
  • ftp-dropplaintext

30 Tage, und an jedem davon bedient das alte System die Produktion

Tag 30

Go im Kern, TypeScript vorne, Postgres darunter, die alten Server abgeschaltet.

  • coreGo
  • reportingGo · read replica
  • webTypeScript
  • transferSFTP · signed
Den toten Code messen wir zuerst und löschen ihn. Das ist die billigste Arbeit im Projekt, und sie senkt den Preis, bevor wir eine Zeile schreiben.

Von Ihrem Repository in die Produktion in 30 Tagen

Ein Modul bekommt echten Traffic erst, wenn es auf Ihrem eigenen aufgezeichneten Traffic dasselbe liefert wie das alte. So halten wir den Termin im Vertrag.
  1. 01Tag 1–4

    Das ganze System kartieren

    Die Plattform liest jede Zeile: Aufrufgraph, geplante Jobs, externe Schnittstellen und den toten Code, gemessen. An Tag 4 haben Sie eine Modulkarte und einen Plan mit Termin für jede Phase.

  2. 02Tag 3–7

    Die Naht einziehen

    Eine Grenze, durch die der Produktivtraffic läuft, damit alter und neuer Code nebeneinander laufen und wir sie vergleichen können. Ihre Nutzer merken davon nichts.

  3. 03Tag 6–25

    Modul für Modul neu schreiben

    Jedes Modul geht hinter der Naht live, spielt Ihren aufgezeichneten Traffic ab und übernimmt, wenn die Ausgaben übereinstimmen. Ihr Team liefert die ganze Zeit weiter Features.

  4. 04Tag 24–30

    Das alte System abschalten

    Wir löschen den alten Code, kündigen die Lizenzen und fahren die Server herunter. Ab Tag 30 pflegen Sie ein einziges System, und die Rechnungen für das alte hören auf.

Unsere Plattform übersetzt, unsere Ingenieure entscheiden

Unsere feinabgestimmten Modelle übersetzen in Maschinentempo. Was der Code bedeuten soll, entscheiden Ingenieure mit 25+ Jahren Produktionspraxis.
  • Die ganze Codebasis lesen und den Aufrufgraphen bauen

    Plattform

    Auch den Dialekt, den niemand mehr unterstützt, und die Datei, die seit 2009 generiert wird.

  • Toten Code messen

    Plattform

    Statische Erreichbarkeit plus Ihre Produktions-Traces. Was nie läuft, wird gelöscht, und der Preis sinkt mit.

  • Jedes Modul in idiomatisches Go übersetzen

    Plattform

    Maschineller erster Durchgang, geprüft als Pull Request, von Hand neu geschrieben, wo ein Reviewer nicht mehr folgen kann.

  • Entscheiden, welches Verhalten ein Bug ist und welches eine Regel

    Ingenieur

    Das System rundet seit zwölf Jahren auf dieselbe Weise, und irgendwer weiter hinten hat darauf gebaut. Wir finden diesen Irgendwer.

  • Parity-Harness und Datenabgleich

    Gemeinsam

    Mitschnitt, Wiedergabe und Abgleich auf Zeilenebene übernehmen wir. Ihre Seite zeichnet ab, welche Differenzen gewollt sind.

  • Umstellung und Rollback

    Ingenieur

    Wir wählen die Nacht, tragen den Pager und schreiben den Rollback, bevor ihn jemand braucht.

Jedes Modul geht durch die Hände eines erfahrenen Ingenieurs, bevor es eine einzige Anfrage bekommt. An Tag 31 gehört Ihrem Team Code, den es lesen kann.

Die besten Ingenieure für dieses System

Unsere Ingenieure schreiben seit über 25 Jahren Produktivcode, und bessere Leute für dieses System finden Sie nicht. VB6- und Delphi-Desktops, Classic ASP und ColdFusion, PHP-4-Monolithen, Perl-Cronjobs, PL/SQL-Pakete, Oracle Forms, Java aus der Zeit vor Maven: Dutzende Migrationen, alle auf Go, Rust und TypeScript gelandet. Ihren Dialekt haben sie schon einmal neu geschrieben.

Festpreis vor Beginn, Go-live-Termin im Vertrag, und der Code gehört Ihnen. Eine Phase, die auf Ihrem eigenen aufgezeichneten Traffic keine Parität erreicht, wird nicht abgenommen.

Was CTOs vor der Unterschrift fragen

Kann mein Team während der Neuschreibung weiter Features liefern?

Ja. Features gehen in das alte Modul bis zu dem Tag, an dem es portiert wird, und der Parity-Harness fängt alles ab, was sich unter uns geändert hat. Ihr Release-Kalender bleibt, wie er ist. Schicken Sie heute den Stack, und der Plan zeigt, welches Modul an welchem Tag umzieht.

Warum neu schreiben, wenn wir das Bestehende refaktorisieren könnten?

Refactoring behält die Runtime ohne Support, die Toolchain, die auf einer einzigen Maschine lebt, und das Rekrutierungsproblem, das beide mitbringen. Eine Neuschreibung räumt das ab, in 30 Tagen. Schicken Sie heute den Stack, und nach 48 Stunden legen Sie unseren Festpreis neben ein weiteres Jahr Flickarbeit.

Ist maschinell übersetzter Code überhaupt wartbar?

Ja. Jedes Modul entsteht als idiomatisches Go, wird wie jeder Pull Request geprüft und von Hand neu geschrieben, wo ein Reviewer nicht mehr folgen kann. Das erste Modul prüfen Ihre Ingenieure selbst, bevor wir weitermachen. Fordern Sie ein Angebot an und wählen Sie das Modul, an dem Sie uns messen.

Unser System hat weit über eine Million Zeilen. Gelten die 30 Tage trotzdem?

Ja. Die Plattform liest eine Million Zeilen in einem Durchgang, und wir teilen die Arbeit in Phasen, die jeweils an einem festen Datum landen. Die Größe bestimmt, wie viele Ingenieure wir einsetzen. Die 30 Tage bleiben. Schicken Sie heute die Zeilenzahl, und in 48 Stunden haben Sie den Phasenplan mit einem Preis für jede Phase.

Wie können Sie einen Preis für Code festlegen, den Sie kaum gesehen haben?

Die Plattform misst Modulgrößen, Kopplung und wie viel vom Code noch läuft, und der Preis ergibt sich aus diesen Zahlen. Ingenieure mit 25+ Jahren Produktionspraxis prüfen sie, bevor die Summe an Sie geht. Schicken Sie heute das System, und Preis und Starttermin sind innerhalb von 48 Stunden in Ihrem Postfach.

Schicken Sie uns heute das System

Nennen Sie Stack, Größe und den Termin, der Sie unter Druck setzt. Nach 48 Stunden haben Sie Festpreis und Starttermin. Nach 30 Tagen läuft das neue System produktiv, und das alte ist abgeschaltet.

Angebot anfordern

Zehn Minuten zum Ausfüllen. Ein Ingenieur mit über 25 Jahren Produktionserfahrung liest es und schreibt zurück.