Wir benutzen seit Neuestem Kotlin für unsere Backend-Entwicklung, lernen und haben Spaß damit neue Lösungen zu bauen. Unser Ursprung liegt in der Java Welt. So bleibt alles in der JVM!
Unsere Entwickler haben sich dazu entschieden den Weg von OOP hin zu funktionaler Programmierung zu gehen. Hierfür gibt es eine Bibliothek, die auf typisierte funktionale Programmierung in Kotlin ausgelegt ist: Arrow
Für unsere Frontend-Anwendungen nutzen wir Javascript, um Designs zum Leben zu erwecken, aber bitte mit Typescript!
In den Herzen der Anwendungen schlagen mongoDB Datenbanken. Es kann eben auch eine dokumentenorientierte NoSQL-Datenbank sein.
Wir betreiben aktuell auch einige Experimente mit der CockroachDB – gerade wenn es um echte Transaktionen und Relationen geht.
Für unsere Frontend-Anwendungen kommt bei uns Vue.js zum Einsatz. Warum nicht React oder Angular? Weil wir damit schnelle Ergebnisse und guten Code produzieren
Warum das Rad neu erfinden, wenn Vuetify viele UI Elemente von Haus aus liefert.
Nach einer Implementierung mit Pulsar, die sich nicht stabil genug anfühlte, setzen wir nun auf RabbitMQ als Messaging Broker zwischen unseren Services.
Unser Code steht unter git Versionskontrolle und wir nutzen Gitlab, aber eben mit all seinen coolen Features, eben auch als CI, um unsere Software zu bauen und zu deployen.
Pipeline as code ist mega und macht Spaß
Fast jedes gebaute Stück Software erhält ein Docker Image und bringen wir somit schnell und überall zum Laufen- vor allem in unseren Kubernetes Clustern.
Wir laden jedes Release, jedes Docker-Images oder verwendete Bibliothek in unser Artifactory hoch.
Bis es halt platzt!
Das Herz unserer IT-Infrastruktur ist Kubernetes. Wer träumt nicht von einem automatisch skalierbaren System? Das System erkennt die Auslastung und unsere Pods skalieren einfach automatisch hoch. Sexy!
Wir unterstützen die Community von Prometheus, denn uns gefällt das Tool Wir sammeln unsere Metriken hier und…
….visualisieren diese mit Grafana. So dass wir über die gesamte Infrastruktur einen guten Überblick zur Laufzeit behalten. Hauptsache alles auf den Dashboards leuchtet grün!
Mit dem Elastic Toolset speichern wir unsere Logs in Elasticsearch, verarbeiten diese mit Beat und können mit graphischer Unterstützung in Kibana in die Loganalyse gehen. Der Fehler findet sich immer.
In Echtzeit überwachen wir Hosts und Dienste im Netzwerk mittels Icinga und lassen uns in Slack informieren.
Kubernetes Cluster in der Amazon Cloud? Kein Problem. Für das Setup nutzen wir kops.
Wir betreiben auch erfolgreich Kubernetes-Cluster in der Google Cloud.
Und auch mit „Blech“ können wir umgehen.