Architektur-Überblick
☁️ In der Cloud geboren, für Skalierung gebaut
Tuix-Timesheets basiert auf einer cloud-nativen, ereignisgesteuerten Microservices-Architektur mit serverlosen Komponenten. Die Plattform wird vollständig in der AWS Cloud gehostet, um Skalierbarkeit, hohe Verfügbarkeit und Kosteneffizienz sicherzustellen.
🔁 Echtzeit- und ereignisgesteuerte Kommunikation
Die Plattform nutzt AWS SNS, um Echtzeit- und asynchrone Kommunikation zwischen den Services zu ermöglichen. Egal ob Zeiterfassung, Genehmigungsanfrage oder Rechnungserstellung – Ereignisse werden sofort und zuverlässig im gesamten System verteilt.

🧱 Jede Funktion als eigener Baustein
Jede zentrale Funktion – von der Zeiterfassung bis zur Integrations-Synchronisierung und Benachrichtigungen – ist als eigenständiger Microservice umgesetzt. Diese lose gekoppelten Services ermöglichen schnelle Entwicklung, einfache Wartung und zuverlässige Skalierung.

🛡️ Ein sicheres Gateway ohne direkte Exponierung
Alle Client-Anfragen laufen durch ein zentrales API Gateway, das Routing, Drosselung und Sicherheit übernimmt. Hinter den Kulissen läuft jeder Microservice in einer privaten AWS VPC – kein Service ist öffentlich zugänglich. So entsteht eine „secure-by-design“-Basis für sensible Geschäftsdaten.
⚙️ Flexibel im Design, Low-Ops als Standard
Diese Architektur vereint das Beste aus zwei Welten: Modularität für schnelle Weiterentwicklung und serverlose Einfachheit, um den Betriebsaufwand gering zu halten. Tuix-Timesheets kann sich mit minimalem Reibungsverlust an neue Anforderungen anpassen und nahtlos mit steigender Nutzung skalieren.

Technologiestack
Im Kern von Tuix-Timesheets steht ein sorgfältig ausgewählter Stack moderner Technologien, der Leistung, Skalierbarkeit und einfache Wartung ermöglicht. Hier ein Überblick über die Tools, Frameworks und Infrastrukturen – von der Backend-Logik bis zur Deployment-Automatisierung.
🧩 Backend
Sprachen: Typescript, Golang
Architektur: Microservices als AWS Lambda Functions
Datenbank: Jeder Service nutzt eine eigene isolierte PostgreSQL RDS-Datenbank
🔒 Auth & Sicherheit
Authentifizierung: Auth0
Autorisierung: Rollenbasiert (Admin, Assistant, Employee)
Isolation: Alle Services und Datenbanken in einer AWS VPC
Zugriffskontrolle: Gesamter eingehender Traffic läuft über API Gateway
🌐 Frontend
Hosting: GitHub Pages
DNS: Cloudflare DNS
Assets: Cloudflare CDN für statische Inhalte
🛠️ DevOps / Infrastruktur
IaC: Terraform
CI/CD: CircleCI-Pipeline, ausgelöst beim Merge eines Pull Requests
Deploy-Flow: Lädt Code in S3 hoch, aktualisiert Dokumentation und konfiguriert Routen im API Gateway
☁️ Cloud-Technologien (AWS):
API Gateway – Leitet alle Anfragen und sorgt für Sicherheit
AWS Lambda – Führt serverlose Microservices mit Auto-Scaling aus
Amazon RDS (PostgreSQL) – Schnelle, zuverlässige relationale Datenbanken pro Service
Amazon S3 – Speichert Binärdateien und Deployment-Artefakte
AWS SNS – Ermöglicht ereignisgesteuerte Kommunikation zwischen Services
AWS SES – Versendet System-E-Mails für Benachrichtigungen und Genehmigungen
Warum dieser Stack und diese Architektur
Wir haben uns bewusst für ein Modell aus Microservices + Serverless entschieden, um unsere Anforderungen als wachsendes, verteiltes Softwareunternehmen zu erfüllen:
Microservices teilen Verantwortlichkeiten pro Funktion auf und beschleunigen Entwicklung, Tests und Deployments.
Serverless (AWS Lambda) reduziert Infrastruktur-Overhead und skaliert automatisch mit der Nutzung.
PostgreSQL (RDS) bietet schnelle, relationale Datenspeicherung für Zeiterfassungsdaten – mit optimierten Abfragen und hoher Ausfallsicherheit.
Auth0 ermöglicht schnelle, sichere Authentifizierung mit minimaler Eigenlogik, inklusive rollenbasiertem Zugriff und Multi-Tenant-Support.
Cloudflare + GitHub Pages vereinfachen Frontend-Deployment und stellen sicher, dass die UI weltweit schnell und sicher geladen wird.
Terraform und CircleCI bringen Automatisierung, Reproduzierbarkeit und Sicherheit in jede Deployment-Runde.
Diese Architektur bietet eine Low-Ops-, High-Scalability-Umgebung, die sich sowohl an leichte als auch an hohe Lasten anpasst.
Funktions-Highlights
Hier sind einige technische Funktionen, die zeigen, wie Tuix-Timesheets über die grundlegende Zeiterfassung hinausgeht:
Slack-Zeiteintrag Am Ende jedes Arbeitstages erhalten Entwickler:innen eine vorausgefüllte Slack-Nachricht mit einem Vorschlag für den Zeiteintrag – basierend auf ihrer GitHub- und Jira-Aktivität (Commits, Pull Requests, Kommentare, Ticket-Updates). Diese Nachricht wird automatisch vom System erstellt und über die Slack-Integration versendet. Der:die Mitarbeitende kann sie prüfen, bearbeiten oder zusätzlichen Kontext hinzufügen, bevor sie abgesendet wird. Nach der Bestätigung wird der Eintrag an den Slack-Microservice gesendet und im System gespeichert.
Aktivitäts-Tracking über Jira & GitHub Ereignisse wie Commits, PRs, Kommentare, Ticketänderungen und Reviews werden automatisch gesammelt und für tägliche Zusammenfassungen genutzt. So wird manueller Aufwand reduziert und sowohl Manager:innen als auch Mitarbeitende erhalten wertvolle Einblicke in die Aktivitäten.
-
PDF-Generierungsservice Zeiterfassungen und Rechnungen werden aus HTML-Templates in formatierte PDFs umgewandelt – mit einem dedizierten Lambda-Service. So bleiben Berichte konsistent, exportierbar und professionell.
-
Rollenbasierte Oberflächen Jede Rolle (Admin, Assistant, Employee) sieht nur die für sie relevanten Funktionen – von der Projekteinstellung bis zum Rechnungsdownload und zur Urlaubsverwaltung.
Herausforderungen & Learnings
-
Verteilte Events managen Ein ereignisgesteuertes System erfordert genaue Koordination zwischen Services – besonders bei aufeinanderfolgenden Prozessen wie Erfassung, Genehmigung und Rechnungserstellung. AWS SNS half, diese entkoppelte Kommunikation zu organisieren, erforderte aber strenge Validierung der Nachrichtenstruktur.
-
Balance zwischen Einfachheit und Flexibilität im UI Das Interface musste intuitiv bleiben – auch bei komplexeren Anwendungsfällen wie angepassten Zeiterfassungen oder Mehrprojekt-Übersichten.
Ob Zeiterfassung, Genehmigungsprozesse oder automatisierte Berichte – wir helfen Teams, ihre Abläufe in leistungsstarke digitale Produkte zu verwandeln. Lass uns darüber sprechen, wie wir auch Dein Projekt umsetzen können.


