Die Serie Evolutionary Architectures, Teil 1

Wie war dieser Inhalt?

„Ich habe da eine großartige Idee!“

Jedes Startup beginnt mit einer Idee. Bevor Sie sich Gedanken über die Finanzierung, das Personal, den Vertrieb oder andere Dinge machen, haben Sie eine frische, neue Idee – ein Produkt oder einen Service von der Sie glauben, dass sie Potenzial hat.

Wenn Ihre Idee auf die Cloud angewiesen ist, benötigen Sie eine Cloud-Architektur. Diese Vorlage wird Ihnen helfen, Ihre großartige Idee in die Realität umzusetzen und kann, wenn sie gut aufgebaut ist, mit Ihrem Unternehmen mitwachsen.

Um Ihnen dabei zu helfen, eine solide Vorlage für Ihre Idee zu erstellen, zeigen wir Ihnen in dieser vierteiligen Serie, Evolutionary Architectures, wie ein Unternehmen, das treffend genannte Beispiel Startup, seine Idee in die Praxis umsetzt. In Teil 1 werden wir sehen, wie sie ein Minimum Viable Product (MVP) entwickeln, um das Kundeninteresse und die Marktfähigkeit zu testen. Im weiteren Verlauf der Serie werden wir uns ansehen, wie sich ihre Entwürfe und Entscheidungen im Laufe des Startup-Lebenszyklus weiterentwickeln, um eine vollwertige, skalierbare, sichere, hochverfügbare und ausfallsichere Lösung bereitzustellen.

Ein erstes MVP erstellen

Die ersten Produktentwicklungen eines Startups verlaufen in der Regel in mehreren Phasen. Sie werden von der Finanzierung, der Zeit, den Ressourcen, der Größe des Teams sowie dem Wissen und der Erfahrung bestimmt.

In dieser Phase ist es äußerst wichtig, dass das Perfekte dem Guten nicht in die Quere kommt und dass Sie einfache, aber funktionale Lösungen liefern. Um dies zu erreichen, müssen Sie wissen, wie Sie 1- und 2-Wege-Entscheidungen erkennen, schnell scheitern und bei Bedarf umschwenken, Kosten verwalten und die Markteinführung beschleunigen.

Schauen wir uns das Beispiel Startup an und sehen wir uns an, wie sie diesen Prozess angehen.

Die Idee
Beispiel Startup's Idee ist es, eine „Fantasie-Börse“ zu schaffen. Sie haben Fantasy-Sportligen als Grundlage genommen und die Idee der Aktienmarktinvestitionen angewendet. Sie planen, im Laufe eines Jahres vier „Turniere“ zu veranstalten.

Zu Beginn eines jeden Quartals startet eine neue Gruppe von Anlegern mit demselben Betrag. Die Fantasie-Börse ermöglicht es diesen Anlegern, ihre Anlageentscheidungen (auf der Grundlage von Unternehmen und Symbolen aus realen Aktienmärkten) in den folgenden 3 Monaten zu treffen. Am Ende des Quartals wird eine Rangliste der Teilnehmer erstellt und die Gewinner werden bekannt gegeben.

Die Vorbereitung
Um ihre Idee in die Tat umzusetzen, haben die beiden Gründer ihr Startup per Bootstrapping finanziert: Sie sammelten ihre Ersparnisse und liehen sich Geld von Freunden und Familie.

Eine Gründerin, eine erfahrene Entwicklerin, wurde für 3 Monate von ihrem Job freigestellt. Dies ermöglicht es ihr, sich auf die technische Lösung zu konzentrieren, was hilfreich ist. Allerdings wird dadurch auch der Zeitplan für ihre erste Lieferung festgelegt.

Jetzt, in nur drei Monaten, müssen sie und ihr Mitgründer, der aus dem Finanzbereich kommt, entscheiden, welche Funktionen in das MVP aufgenommen werden sollen und ihr Produkt bauen. Zu Beginn entscheiden sie, 1) welche Funktionen für ein brauchbares Produkt absolut notwendig sind und 2) welche Funktionen es ihnen ermöglichen, die Markttauglichkeit und das Kundeninteresse zu messen.

Sie entscheiden über Folgendes:

  • Einen Importprozess für reale Börsensymbole/Unternehmen, mit denen Anleger handeln können
  • Einen täglichen Marktpreis-Feed
  • Einen Anmeldemechanismus für Benutzer
  • Portfoliomanagement-Benutzeroberfläche (UI)
  • Einen täglichen Prozess für Portfoliokalkulationen zum Tagesabschluss
  • Einen täglichen Prozess, der Rankings berechnet

Der Build
Nachdem Sie den Rahmen definiert haben, ist es an der Zeit, einige technische Entscheidungen darüber zu treffen, welche Technologien und Komponenten die Fantasie-Börse benötigt. Anschließend erstellen Sie einen Implementierungsplan mit Meilensteinen für den Start des MVP.

Framework
Als Entwicklerin hat eine Gründerin von Beispiel Startup Erfahrung mit React, einer JavaScript-Bibliothek zur Erstellung von Benutzeroberflächen. In Anbetracht der Tatsache, dass ein großer Teil der MVP-Lieferungen die Entwicklung von Benutzeroberflächen beinhaltet, ist sie der Meinung, dass AWS Amplify eine gute Wahl ist. Mit Amplify erhält das Team integrierte Unterstützung für die Erstellung und das Hosting von React.js-Anwendungen mit vielen wiederverwendbaren Komponenten. Amplify kann auch beim Backend helfen. Es kann verschiedene Datenbanken wie Amazon DynamoDB verwalten, eine großartige flexible Option für den Anfang, und es kann AWS AppSync verwenden, um das Frontend einfach mit Datenquellen zu verbinden und die Geschäftslogik weiterzuentwickeln.

Domain
Jetzt, wo das Gerüst steht, ist es an der Zeit, sich einen Domainnamen zuzulegen. Amazon Route 53 hilft Beispiel Startup bei der Konfiguration eines DNS-Service (Domain Name System), der gut mit den bereits genutzten Service sowie mit dem Prozess der Domainregistrierung integriert ist.

Experimente und Kostenmanagement
Das Team ist in der Lage, die meisten seiner anfänglichen Bedürfnisse zu erfüllen, indem es einfach einen AWS-Service auswählt, der zu seinem Anwendungsfall passt. Das breite Angebot an AWS-Services ermöglicht es Beispiel Startup, schnell mit mehreren Optionen zu experimentieren und Entscheidungen auf der Grundlage der gemachten Erfahrungen zu treffen.

Obwohl viele der AWS-Services ein kostenloses Kontingent haben, sind einige der Experimente von Beispiel Startup vielleicht etwas zu enthusiastisch. Als die erste Monatsrechnung eintrifft, merkt das Team, dass es mehr auf die Kosten achten muss. Wie in vielen anderen Fällen gibt es auch dafür eine AWS-Lösung: Sie beginnen, den kostenlosen Service AWS Budgets zu nutzen. Er hilft dem Team, seine Planung und sein Kostenmanagement zu verbessern und Warnungen zu definieren, die es bequem auf alles aufmerksam machen, was nicht mit seinen Erwartungen übereinstimmt.

Daten
Nach einem Monat hat Beispiel Startup bereits einen großen Teil der Benutzeroberfläche und einige damit verbundene Funktionen mit Beispieldaten zum Laufen gebracht. Als Nächstes brauchen sie Batch-Prozesse, die mit echten Daten die Hauptarbeit leisten.

Nachdem das Team Datenquellen gefunden hat, aus denen die benötigten Informationen gewonnen werden können, möchte es die Daten automatisch einlesen. Da JavaScript die Programmiersprache ihrer Wahl ist, möchten sie es mit einer Lösung betreiben, die den operativen Aspekt so einfach wie möglich macht.

Dies führt sie zu AWS Lambda. Das Team möchte sich keine Gedanken über den Betrieb von Servern und die Skalierung machen, daher verfolgt es einen Serverless-Ansatz und verwendet dazu das Tutorial AWS-Lambda-Funktionen mit EventBridge planen.

Damit verfügen sie, wie im anfänglichen Architekturdiagramm dargestellt, über ein Design für die datenbezogenen Service, die sie ausführen müssen.

Testen
Das Team macht große Fortschritte. Ihre Architektur wächst und sie haben ein gutes Gefühl, was die Einhaltung der 3-monatigen Deadline angeht.

Doch als die Zahl der Personen, die die Lösung testen, wächst, bemerken sie ein Problem. Jemand aus dem Team fragte: „Wie viele Personen sind aktive Nutzer und wie hoch ist die durchschnittliche Anzahl der Transaktionen pro Nutzer?“ Aber sie konnten keine wirklich aussagekräftige Antwort finden. Sie einigen sich darauf, vorübergehend Abfragen direkt in der DynamoDB-Konsole auszuführen und eine „Wunschliste“ für die nächste Iteration zu erstellen.

Die Markteinführung
Beispiel-Startup hat seine Frist eingehalten und das MVP gestartet. Schon bald sieht das Team eine riesige Anmeldeliste. Sie erkennen, dass sie etwas auf der Spur sind, benötigen aber Hilfe, um ihr Produkt zu verbessern und ihr Geschäft zu skalieren.

Ein Freund eines Freundes erwähnt AWS Activate, ein Programm, das Startups eine Reihe von Vorteilen bietet, darunter AWS-Guthaben, AWS-Supportplan-Guthaben und Architekturberatung.

Sie bewerben sich bei AWS Activate, um die Hilfe zu erhalten, die sie für die nächste Phase ihrer Reise benötigen.

Zusammenfassung

In nur wenigen Monaten ist bei Beispiel Startup eine Menge passiert. Während der Entwicklung des ersten MVP stehen viele Startups vor ähnlichen Herausforderungen wie die von Beispiel Startup gemeisterten.

Wir werden ihre Reise in den nächsten Blogs der Serie Evolutionary Architecture fortsetzen. Erfahren Sie, wie sich ihre Bedürfnisse, Herausforderungen und Ziele ändern, während das Unternehmen wächst und skaliert.

Zoran Nakev

Zoran Nakev

Zoran ist Senior Solutions Architect bei AWS, arbeitet hauptsächlich mit FinTech-Startups zusammen und hilft ihnen bei der Entwicklung von Lösungen auf der AWS-Plattform. Er nutzt seine Erfahrung und Leidenschaft für Technologie, um Startups dabei zu unterstützen, ihre Ziele zu erreichen. Er lebt mit seiner Familie in New Jersey und verbringt seine Freizeit gerne damit, Filme zu schauen, Musik zu hören und lange Spaziergänge mit seinem Familienhund zu unternehmen.

Aayzed Tanweer

Aayzed Tanweer

Aayzed ist Solutions Architect bei AWS und arbeitet mit Startup-Kunden im FinTech-Bereich zusammen, wobei der Schwerpunkt auf Analytics-Services liegt. Ursprünglich aus Toronto stammend, ist er vor Kurzem nach New York City gezogen, wo er sich gerne seinen Weg durch die Stadt bahnt und ihre vielen eigenartigen Ecken und Winkel erkundet.

Justin Plock

Justin Plock

Justin ist Principal Solutions Architect bei AWS und konzentriert sich auf Fintech-Startups. Er trifft sich regelmäßig mit Fintech-Gründern, um sicherzustellen, dass ihr Unternehmen sicher ist und den Branchenvorschriften entspricht. Vor seiner Zeit bei AWS war er Direktor für Cloud-Enablement bei einem Fortune-200-Versicherungsträger und Director of Engineering bei einem Cybersicherheitsunternehmen. Seine Leidenschaft ist es, Startups dabei zu helfen, sich sicher und effizient in AWS zu entwickeln. Er lebt mit seiner Frau und zwei Töchtern in Connecticut.

Wie war dieser Inhalt?