DevOps

Unter DevOps (Wikipedia) verstehen wir eine Sammlung von Techniken und Technologien sowohl in der Entwicklung von Software als auch in der Administration von IT-Systemen, die folgende Ziele verfolgen:

  • Verkürzung der Entwicklungszyklen
  • Häufigeres Rollout von Features und Bugfixes mit verbesserter Unterstützung der Geschäftsziele

Ein gemeinsames Merkmal vieler betroffener Bereiche ist dabei ein starker Fokus auf Automation:

Die Definition ist insgesamt nicht ganz eindeutig, zur Erreichung der genannten Ziele kommen aber in den Bereichen typischerweise folgende Techniken und Technologien zum Einsatz:

  • Source Code Verwaltung
  • Continuous Integration (zum Beispiel Jenkins)
  • Continuous Testing (auch Jenkins)
  • Automatisches Packaging und Release-Erstellung
  • Automatisches Deployment oder Continuous Deployment
  • Monitoring

Daneben ist ein zentraler Punkt beim Thema DevOps ein organisatorischer Umbau im Unternehmen, um eine bessere Integration erzielen zu können. Die strikte Rollentrennung zwischen Entwicklung und Betrieb wird dabei teilweise aufgelöst. Dies bedeutet nicht, dass technische keine Trennung zwischen Entwicklung und Betrieb existiert.

Wir bieten in diesem Bereich Unterstützung insbesondere in den folgenden Bereichen:

  • organisatorischer Umbau
  • Einführung von git als Source Code Verwaltung
  • Automation des Java-Build-Prozesses mit maven und gradle
  • CI/CD-Systeme mit Jenkins
  • Qualitätssicherung mit SonarQube
  • Verwaltung von Paketen mit Nexus
  • Verwendung von Ansible zur Automation im Rechenzentrum