Womit wir bauen
und was wir betreiben.
Ein bewusst überschaubarer Stack aus etablierten Open-Source-Technologien. Nichts, wofür du in drei Jahren keine Entwickler mehr findest — und nichts, das dich an einen Anbieter bindet.
- Open Source zuerst
- Managed Services nur mit offenen Standards (z. B. PostgreSQL)
- Portabel zwischen Anbietern
- Langfristig verfügbare Skills

Entwicklung
Die Anwendungsebene: Backend, Frontend, Datenhaltung und Schnittstellen. Lime markiert, was wir standardmäßig einsetzen — der Rest kommt projektabhängig oder in bestehenden Systemen dazu.
backend
- Kotlin
- Spring Boot
- Java
- Node.js
- NestJS
- Go
Kotlin und Spring Boot sind unser Standard für geschäftskritische Services — typsicher, ausgereift und mit dem gesamten JVM-Ökosystem im Rücken. Java in bestehenden Systemen, Node und Go dort, wo es fachlich passt.
frontend
- React
- TypeScript
- Next.js
- Tailwind CSS
- Ant Design
- Electron
React mit TypeScript für Weboberflächen, Next.js wo Server-Rendering oder SEO zählt, Tailwind CSS für das Styling. Ant Design als Komponentenbasis in datenintensiven Anwendungen, Electron für Desktop-Clients.
daten
- PostgreSQL
- Redis
- REST
- GraphQL
- OpenAPI
PostgreSQL als verlässliche Grundlage für relationale Daten, Redis für Caching und Queues. Schnittstellen liefern wir als REST oder GraphQL — abgestimmt darauf, was das anbindende System braucht. Jede API ist als OpenAPI-Spezifikation dokumentiert, damit dein Team oder ein Drittanbieter sie ohne Rückfragen anbinden kann.
integration
- REST & APIs
- ERP & Warenwirtschaft
- CRM
- Zahlungsanbieter
- Behörden-Schnittstellen
- Legacy-Systeme
Der Aufwand liegt selten in der Technik, sondern im Verstehen des Fremdsystems. Wir arbeiten uns in bestehende Schnittstellen ein — auch in solche ohne brauchbare Dokumentation.
workflows
- Temporal
- Saga-Pattern
- Retry & Timeout
- Event-driven
Langlaufende Geschäftsprozesse über mehrere Systeme hinweg — Freigaben, Abrechnungsläufe, Synchronisation mit Fremdsystemen. Temporal hält den Zustand fest, wiederholt fehlgeschlagene Schritte automatisch und macht jeden Durchlauf nachvollziehbar, statt ihn in Cronjobs und Statusspalten zu verstecken.
identität & zugriff
- Keycloak
- OIDC & SAML
- 2FA
- ID Austria
- Entra ID
- ADFS
Login, Single Sign-On und Rechte zentral in Keycloak — mit eigenen Erweiterungen, wo der Standard nicht reicht, und Anmeldung mit bestehenden Konten.
Betrieb & souveräne Cloud
Die Infrastrukturebene: Plattform, Auslieferung, Überwachung und Sicherheit. Alles auf europäischer Infrastruktur mit Datenstandort in Österreich oder der EU.
infrastruktur
- Kubernetes
- Exoscale
- Pulumi
Containerisierte Workloads auf Kubernetes, betrieben auf Exoscale mit Rechenzentren in Wien. Die gesamte Infrastruktur ist als Code beschrieben — reproduzierbar, versioniert, nachvollziehbar.
delivery
- ArgoCD
- GitOps
- CI/CD-Pipelines
- Infrastructure as Code
Der Git-Stand ist die Wahrheit: Änderungen laufen über Pull Requests, ArgoCD zieht sie automatisiert in den Cluster. Jedes Deployment ist damit nachvollziehbar und zurückrollbar.
observability
- Grafana
- OpenTelemetry
- Prometheus
- Loki
- Tempo
Metriken, Logs und Traces in einer Oberfläche — inklusive Alerting. Das ist nicht nur Betriebskomfort, sondern die Grundlage, um Vorfälle überhaupt innerhalb von Meldefristen zu erkennen.
sicherheit & datenhaltung
- Automatische Backups
- Verschlüsselung
- Zugriffskontrolle
- Restore-Tests
- Security Audits
Backup- und Restore-Konzepte werden geprüft, nicht nur eingerichtet; wie oft, vereinbaren wir mit dir. Security Audits und Penetrationstests übernimmt auf Wunsch Certitude Consulting.
Wie die Schichten zusammenspielen
Entwicklung und Betrieb sind bei uns nicht zwei Angebote, sondern ein durchgehender Stack. Deshalb entstehen zwischen Anwendung und Infrastruktur keine Zuständigkeitslücken.
- Eine Verantwortung von der Anwendung bis zur Infrastruktur
- Jede Schicht containerisiert und dadurch portabel
- Keine proprietären Managed Services als Fundament
- Umzug zu einem anderen Anbieter ohne Neuentwicklung möglich
- Gleiche Werkzeuge über alle Projekte — kein Wissenssilo
Warum das für dich zählt
Wenn Anwendung und Betrieb aus einer Hand kommen, gibt es bei einem Problem keine Diskussion darüber, ob es am Code oder an der Infrastruktur liegt. Es gibt nur einen Ansprechpartner — und der behebt es.
Wie wir Technologien auswählen
Ein Stack ist eine Wette auf die nächsten zehn Jahre. Deshalb entscheiden wir konservativ — und begründen jede Abweichung.
Langlebigkeit vor Neuheit
Wir setzen ein, was seit Jahren produktiv läuft und eine belastbare Community hat. Frameworks, die alle achtzehn Monate ihre Architektur wechseln, kosten dich später mehr, als sie am Anfang sparen.
Verfügbare Fähigkeiten
Für Kotlin, Java, TypeScript und Kubernetes findest du Entwickler — heute und in fünf Jahren. Das ist entscheidend, wenn du ein Projekt später intern übernehmen oder erweitern willst.
Kein Lock-in als Fundament
Proprietäre Managed Services sind bequem und machen einen Anbieterwechsel teuer. Wir bauen auf portablen Open-Source-Bausteinen, damit ein Umzug eine Entscheidung bleibt und kein Projekt wird.
Ein Stack über alle Projekte
Wir arbeiten bewusst mit denselben Werkzeugen. Das macht Wartung, Übergaben und Vertretung möglich — statt für jedes Projekt eine eigene Sonderwelt zu betreiben.
Betrieb von Anfang an mitgedacht
Technologieentscheidungen fallen mit Blick darauf, wer das Ergebnis später betreiben muss. Was sich nicht sauber überwachen, sichern und aktualisieren lässt, kommt nicht in Produktion.
Offen für Bestehendes
Wenn bei dir schon etwas läuft, bewerten wir es, statt es reflexartig zu ersetzen. Eine Modernisierung in Schritten ist meist günstiger und risikoärmer als ein Neuaufbau.
Wie wir mit KI arbeiten
KI-Werkzeuge gehören bei uns zum Entwicklungsalltag — als Werkzeug, nicht als Ersatz für Verständnis. Dafür gelten feste Regeln:
Jede Zeile wird geprüft
Was ein Werkzeug vorschlägt, liest und versteht ein Mensch, bevor es ins Repository kommt. Code, den niemand im Team erklären kann, wird nicht übernommen.
Tests statt Vertrauen
Generierter Code durchläuft dieselben automatisierten Tests, Reviews und Pipelines wie jeder andere. Schneller geschrieben heißt nicht weniger geprüft.
Die Verantwortung bleibt bei uns
Für Qualität, Sicherheit und Wartbarkeit stehen wir ein — unabhängig davon, mit welchem Werkzeug eine Zeile entstanden ist.
Deine Daten bleiben draußen
Produktivdaten und personenbezogene Daten geben wir nicht an KI-Werkzeuge. Ob dein Code mit KI-Unterstützung bearbeitet werden darf, klären wir vorab mit dir.
Der Stack in Produktion
Eine SaaS-Plattform für den Gesundheitsbereich — gebaut und betrieben auf genau diesem Stack, DSGVO-konform mit Datenstandort in Österreich.
- kotlin · spring boot
- react · electron
- kubernetes · exoscale
- argocd · prometheus
Häufige Fragen zum Stack
Können wir Technologien vorgeben?
Ja, solange wir sie verantworten können. Wenn du bereits ein Framework oder eine Datenbank im Haus hast, arbeiten wir damit. Wo wir Bedenken für Betrieb oder Wartbarkeit sehen, sagen wir es vorher — nicht nach dem Launch.
Warum Kotlin und nicht das aktuellste Framework?
Weil geschäftskritische Software zehn Jahre läuft und nicht zwei. Kotlin ist typsicher, hat das JVM-Ökosystem im Rücken und du findest langfristig Entwickler dafür. Wir wählen nach Halbwertszeit, nicht nach Neuigkeitswert.
Passt der Stack zu unserem bestehenden Frontend?
In der Regel ja. Wir liefern die API und halten uns an die Schnittstelle, die dein Frontend oder CMS braucht — ob React, Vue, ein Shop-System oder etwas Eigenes.
Sind wir an Exoscale gebunden?
Nein. Der Stack ist containerisiert und über Infrastructure as Code beschrieben, damit ein Anbieterwechsel machbar bleibt. Wir empfehlen Exoscale wegen Datenstandort Wien und DSGVO-Konformität — nicht, weil ein Umzug technisch unmöglich wäre.
Können wir das später selbst betreiben?
Ja. Wir übergeben Architektur, Betriebsprozesse und Dokumentation vollständig und begleiten den Wissenstransfer. Genau dafür setzen wir auf verbreitete Open-Source-Werkzeuge statt auf Eigenbauten.
Passt das zu dem, was du vorhast?
Wenn du wissen willst, ob unser Stack zu deinem Projekt oder deiner bestehenden Landschaft passt: Wir gehen das im Gespräch konkret durch — technisch, ohne Buzzwords.
Auch für Bestandssysteme: wir bewerten, was bleibt und was ersetzt werden sollte.