Leistungen
Zwischen Website und App gibt es eine dritte Kategorie: Anwendungen, die im Browser laufen oder unsichtbar im Hintergrund arbeiten und eine konkrete Aufgabe im Unternehmen übernehmen. Ein Dashboard für die Verwaltung, ein Planungstool für ein Team, ein Bestellformular, das seine Aufträge direkt ins SAP schreibt, ein Backend, das eine App mit Daten versorgt. Solche Anwendungen plane und entwickle ich seit 2009, mit dem Werkzeug, das zur Aufgabe passt: Symfony für eigenständige Systeme, React für Oberflächen mit viel Interaktion, TYPO3 dort, wo eine fertige Pflegeoberfläche mit Rechteverwaltung mehr wert ist als eine selbst gebaute.
Parkleitsysteme, Entsorgungstouren, Wasserrezepte für Fliesenkleber, Kapazitätsplanung in einer Agentur: Kein Projekt kam aus einem Bereich, in dem ich mich vorher ausgekannt hätte. Das ist der Normalfall in der Anwendungsentwicklung, und ich mag ihn. Bevor ich eine Zeile programmiere, will ich den Ablauf verstehen: wer mit den Daten arbeitet, welche Entscheidung daraus folgt und an welcher Stelle heute jemand etwas abtippt oder nachschlägt. Dieses Reindenken geht bei mir schnell, weil ich es seit vielen Jahren mache und sich die Muster dahinter wiederholen. Daten kommen aus einem Fremdsystem, müssen aufbereitet werden, und am Ende soll jemand auf einen Blick sehen, was zu tun ist. Neu ist jedes Mal nur die Fachlogik, und die lerne ich im Projekt. Über Fliesenkleber weiß ich inzwischen mehr, als ich je erwartet hätte.
Ist der Ablauf klar, plane ich, welche Systeme beteiligt sind, wo welche Daten liegen und wer mit wem spricht: CMS, Schnittstellen, Apps und Fremdsysteme wie ein SAP oder ein Parkleitsystem. Beim Planungstool war das die Entscheidung, TYPO3 ausschließlich als Schnittstelle einzusetzen, statt Rechteverwaltung und Pflegeoberfläche neu zu bauen. Bestehende Architekturen prüfe ich darauf, wie sie in drei Jahren dastehen, wenn mehr Daten oder ein weiteres System dazukommen. Das Ergebnis ist ein Konzept, das ein Team umsetzen kann, mit mir oder ohne mich.
Eine Anwendung ist fertig, wenn sie ohne mich läuft. Deshalb gehören Dinge dazu, die im Konzept selten jemand bestellt: eine Statusseite, die jeden Import mit Zeitpunkt und Ergebnis protokolliert, ein Wartungsmodus, den die Mitarbeitenden selbst schalten, und Fehlermeldungen des Fremdsystems, die als verständlicher Hinweis ankommen. Die Datenmodelle lege ich so an, dass sie auch das nächste große Upgrade überstehen. Und nach dem Start bleibe ich dran, denn aus dem Alltag kommen immer neue Wünsche.
Welche Aufgabe soll die Anwendung übernehmen? Sprechen wir darüber: