Blog

The Power of Lambda – Pay as you go

December 12, 2023
Erstellt von:
Johannes Schwarz

In einer Welt, in der sich die Möglichkeiten der Technologien ständig weiterentwickeln, stehen Unternehmen oft vor der Frage, ob sie ihre Softwarelösungen selbst entwickeln oder kaufen sollen. Auch wir bei Aclue stehen immer wieder vor dieser Frage. Oft sind es auch Anwendungsfälle die nicht unbedingt einen unnötig kostenintensiven Funktionsumfang brauchen. Wir haben uns dazu entschieden für ein neues Personalverwaltungssystem keine Lösung von der Stange zu wählen. Voraussetzung für die individuelle Umsetzung ist allerdings eine schnelle Projektrealisierung und niedrige laufende Kosten. Begleitet uns auf dem Weg zu einem maßgeschneiderten Personalverwaltungssystem und entdeckt die Kraft der serverlosen Architektur und des “Pay as you go”-Modells.

Office Friday: Wo Innovation auf Kultur trifft

Bevor wir in die technischen Details eintauchen, lasst uns kurz darauf eingehen, was uns dazu bewegt hat, dieses Projekt in Angriff zu nehmen. Bei Aclue ist Innovation nicht nur ein Schlagwort, sondern eine Lebenseinstellung. Unsere Office Friday Sessions finden alle zwei Wochen statt und sind ein wichtiger Teil unserer Kultur – Ein innovativer Raum, in dem Kreativität und technologisches Know-how zusammenfinden. Alle Mitarbeiter können sich an unseren Office Friday Sessions beteiligen und freiwillig Vorträge und Workshops zu spannenden Themen anbieten. Die gemeinsame Zeit außerhalb unserer Kundenprojekte wird aber auch für interne Projekte genutzt. Bei der Wahl der Technologien werden uns keine Grenzen gesetzt und wir genießen volle Freiheit unsere Ideen einzubringen.

Architektur: Ein Überblick

Die Herausforderung bestand darin, eine effiziente Softwarelösung zu entwickeln, die speziell auf die Verwaltung von Personaldaten zugeschnitten ist aber auch auf weitere formularbasierte Produkte angewendet werden kann. Unsere Kriterien waren klar: Bezahlung nur bei Nutzung, extrem schnelle Reaktionszeiten, geringer Verwaltungsaufwand, Anmeldung über MSAL und maximal sicher. Als Cloud Natives lag der Fokus sehr schnell auf Lambda – Ein serverloser und ereignisgesteuerter Dienst von Amazon Web Services (AWS). Entwickler müssen sich nicht um die Administration von Servern kümmern und können sich voll auf die Erstellung der Infrastruktur und  wertvollem Quellcode konzentrieren. Für unser Projekt bildet AWS Lambda das mit TypeScript geschriebene Backend. Neben den genannten Vorteilen, haben wir alle notwendigen CRUD Operationen ohne laufende Serverkosten realisiert. Natürlich gehört noch viel mehr zu einer Software als nur die CRUD Operationen. Die folgende Grafik zeigt einen Gesamtüberblick der gewählten Architektur.

AWS Backend

Frontend

Herausforderungen = Triumphe

Unsere Reise war nicht ohne Hürden. Bei Kundenprojekten geben wir immer unser Bestes und konzentrieren uns ausschließlich auf die Beratung und Umsetzung. So wechselten für unser internes Projekt regelmäßig einzelne Mitglieder des Entwicklerteams. Das führte zu stetigen Unterbrechungen und zeitaufwendigem Wissenstransfer. Also optimierten wir unsere Dokumentationen und führten zur Unterstützung Copilot und Bito als VSCode Extension ein. Zudem wurde ein stabiles Kernteam definiert, das sich über einen
festgelegten Zeitraum vollständig auf das Projekt konzentrierte. Dank dieser Maßnahmen haben wir unsere Ziele einhalten können und in kurzer Zeit ein vollständiges und auf unsere Bedürfnisse maßgeschneidertes Personalverwaltungssystem fertiggestellt.

Fazit: Stärken einer serverlosen Architektur mit AWS Lambda

Die Einführung der serverlosen Architektur und des “Pay as you go”-Modells führte zu einem erfolgreichen und zügigen Abschluss des Projekts. Die Entscheidung, auf Cloud-Native-Lösungen wie AWS Lambda, DynamoDB und API Gateway zu setzen, ermöglichte nicht nur eine effiziente Backend-Entwicklung, sondern auch die Reduzierung laufender Serverkosten und die Anpassungsfähigkeit an individuelle Anforderungen.
Die Frontend-Technologien umfassen ViteJS, React, Material UI und PrimeReact, während die Implementierung von MSAL eine nahtlose Authentifizierung über AD-Accounts ermöglicht. Trotz Herausforderungen und Unterbrechungen bei der Entwicklung gelang es dem Team dank effektiver Optimierungen das Projekt erfolgreich zu realisieren. Die Abrechnung nur für tatsächlich genutzte Ressourcen im “Pay as you go”-Modell ermöglicht eine maximale Kostenkontrolle.

Folge uns auf LinkedIn und verpasse nicht den nächsten Artikel – Eine Schritt für Schritt Anleitung zur Erstellung einer Applikation mit der oben beschriebenen Architektur.

Weitere Blogbeiträge