Aktuell freie Kapazitäten — Projektstart ab sofort möglich.

Foto: Rsparks3, CC0

← Alle Leistungen

Cloud-native Software auf AWS entwickeln lassen

Ich entwickle cloud-native Anwendungen, Backends und Integrationen auf AWS. Dabei verbinde ich vorhandene Cloud-Dienste mit den individuellen Regeln und Abläufen Ihres Unternehmens – von der ersten nutzbaren Funktion bis zum vereinbarten Betrieb.

01 Der Ansatz

Was Cloud-native Softwareentwicklung bedeutet

Cloud-native Software wird von Beginn an für die Möglichkeiten der Cloud entworfen. Dazu gehören automatisierte Bereitstellung, anpassbare Verarbeitungskapazität und die Nutzung vorhandener Dienste. Auf Amazon Web Services (AWS) lassen sich damit technische Grundfunktionen und individuelle Geschäftsregeln zu einer Anwendung verbinden.

Ein Kundenportal kann beispielsweise Amazon Cognito für die Anmeldung und Amazon S3 für die Dokumentablage nutzen. Ich entwickle die Regeln dafür, welche Unterlagen zu welchem Kunden gehören, wer sie freigibt und wer sie herunterladen darf. So entsteht Software für Ihren Geschäftsprozess auf Grundlage bereits verfügbarer technischer Funktionen.

Vorhandene Dienste können Entwicklungszeit und damit Entwicklungskosten reduzieren. Entscheidend ist, dass ihre Einbindung weniger Aufwand verursacht als die eigene Umsetzung der benötigten Funktionen. Mein Wissensartikel „Cloud-native mit AWS: Vorteile, Kosten und Grenzen“ zeigt dieses Zusammenspiel am Beispiel eines Prüfberichtsportals und erläutert die Voraussetzungen.

02 Das Angebot

Cloud-Anwendungen für Ihren Geschäftsprozess

Für Mittelstand und Industrie konzipiere und entwickle ich Anwendungen auf AWS, die Kunden, Mitarbeitende oder angebundene Systeme bei ihren Aufgaben unterstützen. Sie arbeiten direkt mit mir als Entwickler Ihrer Lösung. Zum Angebot gehören die individuelle Software, ihre Schnittstellen und die Vorbereitung des vereinbarten Betriebs.

Mögliche Vorhaben sind:

  • Kundenportale: Dokumente, Rechnungen oder Bearbeitungsstände für berechtigte Kunden bereitstellen.
  • Backend-Anwendungen: Fachliche Regeln, Freigaben und Berechnungen für eine Anwendung umsetzen.
  • Datenverarbeitung: Betriebs-, Sensor- oder Geschäftsdaten prüfen, aufbereiten und nutzbar machen.
  • Integrationsdienste: Bestehende Softwareprodukte und externe Dienste verbinden, wenn ihre Standardfunktionen den Ablauf nicht ausreichend abdecken.

Wenn Sie vor allem vorhandene Anwendungen verbinden möchten, beschreibt mein Angebot zur Schnittstellenentwicklung den passenden Einstieg.

Eine neue Cloud-Anwendung kann auch einen bestehenden Ablauf ergänzen, etwa indem sie Dokumente bereitstellt oder Daten verarbeitet. So lässt sich eine einzelne Aufgabe umsetzen und erproben. Wie daraus eine schrittweise Modernisierung entstehen kann, erläutert der Artikel zur Ablösung von Altsystemen.

03 Die Architektur

Cloud-Dienste passend zum Ablauf kombinieren

Ich wähle die technischen Bausteine nach den Aufgaben der Anwendung, ihrer erwarteten Nutzung und den vorhandenen Schnittstellen aus. Für eigenen Programmcode kann beispielsweise AWS Lambda infrage kommen: AWS verwaltet dabei die Serverinfrastruktur und die Ausführungsumgebung. Dieser Serverless-Ansatz kann Hintergrundverarbeitung oder einzelne Funktionen eines Backends übernehmen.

Wenn fachliche Bereiche unabhängig weiterentwickelt oder betrieben werden sollen, kann ich das System in Microservices aufteilen und ihr Zusammenspiel entwickeln. Ein Dienst verantwortet dann beispielsweise Aufträge, ein anderer Kundenbenachrichtigungen. Änderungen lassen sich als Ereignisse übermitteln, auf die die beteiligten Dienste reagieren. Der Artikel zu Event-driven und Pub/Sub auf AWS erklärt diesen Nachrichtenaustausch an einem konkreten Beispiel.

Für eine überschaubare Anwendung beginne ich mit wenigen Komponenten. Eine weitere Aufteilung folgt dem Bedarf an unabhängiger Entwicklung, Verarbeitung oder Betrieb. So bleibt der Aufbau der Software auch für Ihr eigenes Team nachvollziehbar.

04 Die Umsetzung

Vom ersten Datenfluss zur betreibbaren Anwendung

  1. Anforderungen eingrenzen. Wir klären Nutzer, Daten, beteiligte Systeme und Anforderungen an Verfügbarkeit, Zugriff und Wiederherstellung. Vorhandene Software und Ihre Betriebsumgebung fließen ein.
  2. Dienste auswählen und Aufwand abschätzen. Ich prüfe, welche Aufgaben vorhandene AWS-Dienste abdecken und welche Funktionen individuell entstehen müssen. Daraus leiten wir Architektur, Entwicklungsumfang und erwartete laufende Kosten ab. Offene technische Fragen lassen sich mit einem kleinen Versuch prüfen.
  3. Einen vollständigen Ablauf entwickeln. Eine erste Ausbaustufe wird durchgängig umgesetzt und mit Ihnen erprobt. Bei einem Dokumentenportal wäre das beispielsweise der Weg von der Anmeldung bis zum berechtigten Download. Weitere Funktionen folgen anhand der dabei gewonnenen Erkenntnisse.
  4. Bereitstellung und Betrieb vorbereiten. Tests, automatisierte Auslieferung, Protokollierung und Überwachung gehören zum vereinbarten Lieferumfang. Wir legen fest, wie Fehler auffallen und wer darauf reagiert.
  5. Übergeben oder weiterbetreuen. Sie erhalten Zugang zu Quellcode, Infrastrukturdefinitionen und Dokumentation. Auf Wunsch übernehme ich Wartung und Weiterentwicklung im vereinbarten Umfang.

Ich dokumentiere fachliche Regeln, technische Abhängigkeiten und die Schritte für Bereitstellung und Betrieb. Damit erhält Ihr Team die Grundlage, die Anwendung zu betreuen und weiterzuentwickeln.

05 Projekterfahrung

AWS-Erfahrung aus produktiven Anwendungen

In meinen Projekten bei MOIA, Jungheinrich und der VTG wurde vollständig cloud-nativ auf AWS entwickelt. Dabei kamen auch Serverless-Technologien wie AWS Lambda zum Einsatz. Die Anwendungen waren Teil von verteilten Systemlandschaften mit Microservices und Event Sourcing. Ich arbeitete an Backend-Diensten, wirkte ich an Architekturentscheidungen mit, stimmte mich mit anderen Teams ab und begleitete den Cloud-Betrieb.

Diese Erfahrung fließt in die Auswahl und das Zusammenspiel der Dienste sowie die Vorbereitung des späteren Betriebs ein.

06 Zusammenarbeit

Aufwand, Betrieb und Zuständigkeiten klären

Wie wird die Entwicklung abgerechnet?

Ich rechne nach tatsächlich geleisteten Stunden ab. Auf Wunsch erhalten Sie vorab eine Aufwandsschätzung für den abgegrenzten Umfang. Anforderungen, verfügbare Schnittstellen, Datenqualität und Betriebsanforderungen beeinflussen den Aufwand. Wenn der Geschäftsprozess noch unklar ist, kann eine Prozessanalyse zum Festpreis den Einstieg bilden.

Wo können Cloud-Dienste Entwicklungsaufwand sparen?

Wenn ein Dienst benötigte Grundfunktionen bereits abdeckt, kann ein Teil der eigenen Umsetzung und späteren Pflege entfallen. Auswahl, Konfiguration, Integration und Tests gehören weiterhin zum Projekt. Ich prüfe deshalb, welche Arbeit tatsächlich eingespart wird. Der Wissensartikel erläutert, wie sich daraus kürzere Entwicklungszeit und geringere Entwicklungskosten ergeben können.

Welche laufenden Kosten entstehen?

Neben der Entwicklung fallen Gebühren für die genutzten AWS-Dienste und gegebenenfalls andere Produkte an. Hinzu kommt der vereinbarte Aufwand für Wartung und Betreuung. Ich berücksichtige diese Kosten bei der Architekturentscheidung anhand der erwarteten Nutzung. Für die Gesamtrechnung sind Entwicklungskosten und laufende Kosten gemeinsam zu betrachten.

Wer trägt die Verantwortung für den Betrieb?

AWS betreibt die vom jeweiligen Dienst abgedeckte Infrastruktur. Für Anwendungscode, Datenzugriffe, Konfiguration und Fehlerbehebung vereinbaren wir konkret, welche Aufgaben ich übernehme und welche bei Ihrer IT liegen. Dazu gehören auch Überwachung, Wartung, Reaktionszeiten und Wiederherstellung. Der Wissensartikel zeigt am Portalbeispiel, welche Betriebsaufgaben bei verwalteten Diensten bleiben.

Bleiben wir technisch handlungsfähig?

Sie erhalten Zugang zu Quellcode, Infrastrukturdefinitionen und Dokumentation. Zur Architektur gehört auch die Entscheidung für AWS-spezifische Funktionen. Wir halten fest, wie Daten exportiert werden können und welche Teile bei einem Anbieterwechsel angepasst werden müssten.

Wie beginnt die Zusammenarbeit?

Für das Erstgespräch reichen eine Beschreibung des gewünschten Ablaufs und ein Überblick über vorhandene Systeme. Gemeinsam klären wir Nutzer, erwartete Nutzung und besondere Anforderungen an Daten und Betrieb. In Hamburg und Umgebung arbeite ich auf Wunsch vor Ort, überregional primär remote; einzelne Vor-Ort-Termine sind nach Absprache möglich.

→ Nächster Schritt

Welche Anwendung brauchen Sie?

Beschreiben Sie mir den Geschäftsprozess, vorhandene Systeme und Ihre Anforderungen an die neue Anwendung. Im kostenlosen, unverbindlichen 30-minütigen Erstgespräch klären wir den Bedarf und einen passenden nächsten Schritt.