Jenkins

Jenkins ist eine quelloffene CI/CD-Server-Software zur kontinuierlichen Integration und Bereitstellung von Anwendungen und Services.

In Jenkins lassen sich CI/CD-Pipelines sowohl über Formulare als auch über Code mithilfe der Programmiersprache Groovy in einer webbasierten Benutzeroberfläche definieren. Die Benutzeroberfläche von Jenkins ermöglicht zudem die Kontrolle und Überwachung der konfigurierten Automatisierungsaufgaben. Jenkins unterstützt verteiltes Bauen über Master-Agent-Architekturen und bietet eine Vielzahl von Plugins, um die Funktionalität zu erweitern, die Integration mit anderen Systemen zu erleichtern und die Benutzeroberfläche zu verbessern.

Jenkins ist eine quelloffene Software und wurde primär in Java implementiert. Die Software wurde ursprünglich von Kohsuke Kawaguchi entwickelt und 2005 unter dem Namen Hudson als Open-Source-Projekt veröffentlicht. Ab 2011 führte Kawaguchi die Entwicklung von Hudson als Software-Fork unter dem Namen Jenkins weiter, zuletzt als technischer Leiter bei der Firma CloudBees. Im Jahr 2020 verließ er sowohl CloudBees als auch das Jenkins-Projekt. Mitarbeiter der Softwarefirma CloudBees treiben die Weiterentwicklung von Jenkins weiterhin voran.

Jenkins zählt zu den ältesten und einflussreichsten CI/CD-Systemen und ist weiterhin sehr beliebt, insbesondere in selbst gehosteten Infrastrukturen. Einige populäre Alternativen finden Sie auf der Seite Continuous Integration & Delivery.

Jenkins Projekte

Entwicklung einer cloud-nativen Incentive-Anwendung mit AWS

Versicherungskonzern

07/2018 - 04/2019 · Remote

Entwicklung und Betrieb einer cloud-nativen Anwendung für die dezentrale unternehmensinterne Erfassung, zentrale Verwaltung und steuerliche Behandlung von vertrieblichen Incentives und geldwerten Vorteilen einschließlich CI/CD auf Basis von Kubernetes und Diensten in Amazon Web Services

Tätigkeiten

  • Planung und Einrichtung der Umgebungen für Entwicklung, Integration, Test, Schulung und Produktion auf Basis von Docker, Kubernetes und verschiedenen AWS-Diensten
  • Entwicklung der CI/CD-Pipelines für Frontend und Backend-Dienste
  • Erweiterung des API Gateways um Authentifizierung und Autorisierung auf Basis von Tokens
  • Mitwirkung an der Entwicklung der Geschäftslogik im Backend und der RESTful API einschließlich Test und Dokumentation
  • Mitwirkung an der Entwicklung des Datenmodells für die PostgreSQL-Datenbank
  • Mitwirkung an Planung und Entwicklung von Schnittstellen und Batch-Prozessen zum Austausch von Daten mit SAP Gateway, PostgreSQL, Redis und S3 mit Testdaten zum Zweck der lokalen Frontend- und Backend-Entwicklung
  • Dokumentation der Softwarearchitektur einschließlich Betrieb, Schnittstellen und Prozessen
  • Einarbeitung der Betriebsveranwortlichen bei der Übergabe der Anwendung in den dauerhaften Betrieb
  • Projektsprachen: Deutsch, Englisch

Software-Typ

Web-Anwendung · Backend-Service · API · Datenbank-Lösung

Zielplattformen

AWS · Amazon Web Services · Kubernetes · Webbrowser

Entwicklung und Betrieb einer mobilen App mit Backend

Dienstleistungen

10/2016 - 07/2021 · Köln

Entwicklung und Betrieb einer nativen mobilen App für iPhone und iPad zur Berechnung von Anwalts- und Gerichtskosten mit In-App-Käufen (Abonnements) mit einem mobilen Backend auf Basis von Swift, Java, PostgreSQL und REST

Tätigkeiten

  • Entwicklung einer mobilen App für iOS und iPadOS zur Unterstützung von Juristinnen und Juristen bei der Bewertung wirtschaftlicher Prozessrisiken
    • Spezialisierte Rechner zur schnellen und präzisen Berechnung von Anwalts- und Gerichtskosten nach dem deutschen Rechtsanwaltsvergütungsgesetz (RVG) und dem Gerichtskostengesetz (GKG)
    • Berechnung der Kosten von Mahn- und Klageverfahren über mehrere Instanzen im Arbeits- und Zivilrecht
    • Berechnung von Kosten für außergerichtlichen Verfahren im Arbeits- und Zivilrecht
    • Berechnung der Verteilung der Kosten auf die Parteien des Verfahrens und des Kostenrisikos für Mandanten
    • Berücksichtigung der kostenrechtlichen Unterschiede bei Beendigung des Klageverfahrens durch Urteil oder Vergleich
    • Berücksichtigung verschiedener Umsatzsteuersätze
    • Die App ermöglichte es den Anwendern, ein Premium-Abonnement abzuschließen.
  • Entwicklung eines skalierbaren, sicheren Backend-Systems für die mobile App
    • Verwaltung der Premium-Abonnements mit REST API zum Abruf durch die mobile App
    • Verwaltung von Werbeanzeigen mit REST API zum Abruf der geschalteten Anzeigen durch die mobile App
    • Authentifizierung und Autorisierung über OAuth 2.0
    • Integration mit dem App Store
    • CI/CD-Pipelines auf Basis von Jenkins, GitLab und Artifactory
  • Entwicklung einer Website mit Informationen über die mobile App

Software-Typ

Mobile App · Backend-Service · API · Datenbank-Lösung

Zielplattformen

iPhone · iPad · Linux Server · Webbrowser

Headless CMS, Continuous Deployment & Kubernetes

Dienstleistungen

01/2015 - 05/2018 · Köln

Entwicklung einer Web-Anwendung zur Content-Aggregation aus einem Headless CMS mit vollständiger CI/CD-Pipeline-Automatisierung über Jenkins, Docker und Kubernetes für kontinuierliches Software-Deployment.

Tätigkeiten

  • Konzeption und Implementierung einer Web-Anwendung zur Aggregation von Content (Texte, Bilder, Links) über REST API aus einem Headless CMS
  • Integration und Anreicherung von CMS-Content mit zusätzlichen Daten aus externen Datenquellen für eine einheitliche Website-Darstellung
  • Aufbau einer vollautomatisierten Continuous Integration, Delivery & Deployment Pipeline mit Jenkins, Bitbucket und Maven für optimierte Entwicklungsprozesse
  • Einrichtung einer Git-basierten Trigger-Mechanik für automatische Build- und Deployment-Prozesse bei Code-Commits
  • Migration der bestehenden VM-basierten Cloud-Infrastruktur zu einer containerisierten Kubernetes-Architektur im Jahr 2018
  • Implementierung einer containerisierten Deployment-Strategie mit Docker-Image-Erstellung und automatischem Upload in Docker Registry
  • Konfiguration und Betrieb von Kubernetes-Clustern für automatisierte Deployment-Prozesse auf Test-, Stage- und Produktionsumgebungen
  • Betrieb und Wartung der gesamten Infrastruktur mit kontinuierlicher Optimierung der Deployment-Pipeline für häufige Release-Zyklen
  • Integration von Security-Komponenten und TLS-Verschlüsselung für sichere Content-Auslieferung

Software-Typ

Web-Anwendung · API

Zielplattformen

Kubernetes · Hetzner Cloud