Wirtschaftsinformatik in der Praxis

2022 Februar | Wirtschaftsinformatik in der Praxis

Werkstudent im Bereich DevOps bei Bertrandt (3/3)

Hallo zusammen,
willkommen zu meinem dritten Blogeintrag, in dem Docker und Docker Compose vorgestellt werden.

Docker
Die Programme des Projekts sollen in einer CI/CD-Pipeline auf Azure Cloud ausgeführt werden. Das heißt, die Komponenten, die in den Programmen sind, zu differenzieren und in Docker-Containern auszuführen.
Docker ist eine Containertechnologie zur Automatisierung der Bereitstellung von Anwendungen, die in der Cloud oder vor Ort ausgeführt werden können. Bei der Verwendung von Docker wird die Anwendung oder das Service erstellt und gleichzeitig werden die Abhängigkeiten in ein Container-Image verpacket. Das bedeutet, ein Image ist im Grunde eine statische Darstellung der Anwendung oder des Dienstes und ihrer Konfiguration und Abhängigkeiten.
In meiner Arbeit wird Docker auf einer Linux Virtuelle Maschine ausgeführt. Die Aufgabe besteht darin, Docker-Images für Backend, Frontend und Datenbank zu erstellen. Zuerst muss der Entwickler eine Datei namens „Dockerfile“ zum Zweck Konfiguration erstellen. Danach werden alle internen Prozesse, die mit einem bestimmten Dienst zusammenhängen, Schritt für Schritt durch Programmierung im „Dockerfile“ bearbeitet oder konfiguriert. Nach der Konfiguration wird das Image mit dem Befehl „docker build“ im Linux-Console erstellt und mit dem Befehl „docker run“ gestartet. Die erfolgreiche Erstellung der Docker- Containers ist die Vorbereitung für den nächsten Schritt Docker-Compose.

Docker-Compose

Docker-Compose ist ein Werkzeug zur Definition und Ausführung von Multi-Container-Anwendungen. Damit können verschiedene Docker-Images oder Container so orchestriert werden, dass sie als ein einziger Dienst laufen.
Für die Verwendung von Docker-Compose sind im Grunde drei Schritte vorgesehen:

  1. Die einzelnen Docker-Images mit ihrer Konfiguration müssen zunächst zur Verfügung gestellt werden.
  2. Mit Docker-Compose wird eine YAML-Datei namens „docker-compose.yml“ zur Konfiguration der Dienste verwendet.
  3. Schließlich können alle Dienste aus ihrer Konfiguration mit einem einzigen Befehl „docker compose up“ erstellt werden. Dann wird die gesamte Anwendung ausgeführt.

In meiner Arbeit wird am Ende die gesamte Anwendung mit dem Java-Backend-Programm, dem NGNIX-Frontend-Programm und der MongoDB-Datenbank erstellt. Die drei Containers werden als Dienste ausgeführt, ohne dass jeder Container einzeln gestartet werden muss.

Zusammenfassung

Nach meiner Meinung finde ich meine Tätigkeiten im Bereich DevOps bei Bertrandt wirklich hilfreich und sehr praxisnah, vor allem im Umgang mit Docker. DevOps ist derzeit ein bekanntes Thema im Bereich der Softwareentwicklung, da heutzutage in vielen Unternehmen der Übergang zu Agilität betont wird. Und in der Tat ist DevOps einer der besten Wege, um Agilität zu implementieren. Darüber hinaus kann ich nun Bertrandt weiterempfehlen. Es ist eine relativ große AG, die viele Standorte weltweit besitzt. Neben der Arbeit gibt es auch viele Vorteile für Studierende. Jeder hat einen/e Betreuer/in, und mir wurde immer schnell geantwortet, wenn ich mal Fragen hatte. Die Arbeitszeiten sind flexibel planbar und ich habe meist vom Homeoffice ausgearbeitet. Außerdem lerne ich als Wirtschaftsinformatikstudent viel aus der Praxis, was mich gut auf die zukünftige Berufswelt vorbereitet.


Werkstudent im Bereich DevOps bei Bertrandt (2/3)

Hallo zusammen,
willkommen zu meinem zweiten Blogeintrag, der den Git-Flow und die Einführung der SSL-Verbindung beinhaltet.

 

Git-Flow
Git-Flow ist im Grunde ein Modell für Git Branches, das sowohl die Verwendung von Feature-Branches als auch primären Branches umfasst. Git-Flow weist den verschiedenen Branches bestimmte Rollen zu, beispielsweise ist der Main-Branch Master, der immer Quellcodes im produktionsbereiten Zustand repräsentiert. Das Develop-Branch stellt Quellcodes immer mit dem Stand der letzten gelieferten Entwicklungsänderungen für die nächste Version dar. Und die anderen Feature-Branches werden für bestimmte Entwicklungszwecken erzeugt.
In meiner Arbeit wird vor allem ein neues Feature-Branch in der Regel vom Develop-Branch repliziert und erstellt. Daher finden alle Änderungen während der Programmierung in diesem Branch statt. Schließend wird ein Merge-Request vom Entwickler gestellt, das sowohl das Management als auch die Überprüfung der Entwicklung und die Integration des Feature-Branches in primären Branches umfasst.
Es führt den Hauptvorteil von Git-Flow hinaus, dass Codes zwischen den einzelnen Funktionen mit den klaren Branches isoliert sind. Infolgedessen können Entwicklungen oder Tests unabhängig voneinander durchgeführt werden.

 

SSL Implementierung in einer Backend-Komponente
Meine andere Aufgabe bezieht sich auf die Java-Entwicklung, um die SSL-Verbindungen in einer Backend-Komponente zu implementieren, die den Datenaustausch zwischen Server und Client absichert. SSL, nämlich „Secure Sockets Layer“, ist eine Standardtechnologie zur Sicherung von Internetverbindungen. Dies wird dann durch das Netty Framework in Java implementiert. Netty ist ein NIO(Non Blocking Input Output)-Client-Server-Framework, das die Netzwerkprogrammierung wie TCP- und UDP-Socket-Server vereinfacht und rationalisiert.


Werkstudent im Bereich DevOps bei Bertrandt (1/3)

Hallo zusammen,
mein Name ist Tianhua Dai. Ich studiere Wirtschaftsinformatik und war als Werkstudent bei Bertrandt GmbH in Regensburg 7 Monate lang tätig. In den folgenden drei Blogs werde ich euch meine Erfahrungen sowie Ergebnisse aus meinen Tätigkeiten vorstellen.

Vorstellung der Firma
Die Bertrandt Gruppe ist ein führender Lösungspartner entlang technologischen Trends. Das Ziel von Bertrandt ist es, die digitale und elektronische Zukunft mitzugestalten. Im Automotive-Bereich wird Kompetenz standortübergreifend in vier Divisionen eingesetzt: Electronics, Product Engineering, Physical, Production & After Sales. Darüber hinaus werden Kunden aus zahlreichen weiteren Branchen mit umfassendem Know-how unterstützt: vom Energiesektor und der Luftfahrt über den Maschinen- und Anlagenbau bis hin zur Medizintechnik. Täglich setzen sich rund 12.000 Mitarbeiter an mehr als 50 Standorten weltweit dafür ein, die Projekte der Kunden erfolgreich umzusetzen.

Tätigkeiten
Meine Tätigkeiten lassen sich in zwei Bereichen aufteilen, nämlich Dockerisierung in Bezug auf DevOps und Implementierung von SSL in einer Backendkomponente. Bei der Arbeit kommen Tools oder Programme wie die folgenden zum Einsatz: Azure DevOps, Git, Docker, Docker-Compose, Java und Python. Während der Programmierung wurde das Management und die Pflege von Codes durch Git-Flow strikt implementiert. Die DevOps-Aufgaben wurden auf der Azure-Plattform unter Verwendung der entsprechenden Cloud-Dienste und -Tools durchgeführt.

Im nächsten zwei Blogs werde ich meine Tätigkeiten ausführlicher erzählen


Meine Tätigkeit als Prüfungsassistent (3/3)

Für den letzten Teil meines Blogeintrags möchte ich noch einmal auf speziellere Projekte eingehen, die ich im Unternehmen umgesetzt habe/umsetze. Als mittelständisches Unternehmen spielt Digitalisierung natürlich eine immer größere Rolle. Eine Tätigkeit, die im Büro kein Mitarbeiter gerne gemacht hat- die also immer an die Auszubildenden weitergegeben wurde- war das Besorgen von Ordnern aus dem Archiv. Steuerberatungs-/Wirtschaftsprüfungsgesellschaften müssen alle relevanten Daten für mindestens zehn Jahre aufbewahren, sodass sich auf dem Dachboden des Büros eine stattliche Sammlung von Ordnern (rund 6000) aufgebaut hat. Diese Ordnermenge nach den einen benötigten zu durchsuchen war eine langwierige und langweilige Aufgabe. Dieses Problem habe ich 2020 gelöst, indem ich eine verteilte Windows-App mit zugehöriger Datenbank entwickelt habe. Seitdem wurde der Workflow deutlich erleichtert: Mitarbeiter können an ihrem Computer in der Such-App verschiedene Aspekte eingeben (z.B. Mandantennummer, Jahr und Typ) und erhalten eine Excel-Tabelle mit Treffern und den zugehörigen Lagerplätzen. Dazu wurden Regale auf dem Dachboden aufgebaut und in Abteile zu je rund 20 Ordnern aufgeteilt und beschriftet. Der Mitarbeiter muss somit nur noch aus den 20 Ordnern den richtigen heraussuchen und mitnehmen. Nicht mehr benötigte Ordner werden in ein gesondertes Regal gestellt. Einmal pro Woche werden diese Ordner dann wieder in die Regale eingestellt. Dies dauert dann allerding nur wenige Minuten, da ein Computer mit einem weiteren Admin-Programm auf dem Dachboden steht. Bei der Datenübernahme habe ich an jeden Ordner einen individuellen Barcode geklebt und diesen als Primärschlüssel für die Ordner-Datenbank verwendet. Die Lagerplätze haben ebenfalls je einen Barcode erhalten, der der Pimärschlüssel in der Lagerplatz-Datenbank ist. Ein Ordner kann so also einfach mit einem kabellosen Barcodescanner eingescannt werden, dann an einen beliebigen freien Platz gestellt und schließlich der Barcode des Lagerplatzes eingescannt werden. Dieses System hat dem Unternehmen seitdem eine Menge Zeit und vor allem Nerven gespart.
Ein weiteres Projekt, das zur Zeit noch läuft, ist die Ausformulierung von Prozessen im Unternehmen. Dazu wurden Mitarbeiter in Arbeitsgruppen aufgeteilt und gebeten, eine Beschreibung von alltäglichen Aufgaben anzufertigen. So habe ich zum Beispiel von den Mitarbeitern in der Lohnbuchhaltung eine Stichpunktliste erhalten, wie sie im Lohn vorgehen. Diese Strichlisten übersetze ich aktuell in Prozessdiagramme und führe diese in einem Programm zusammen. Der Hintergrund davon ist, dass durch die Expansion des Unternehmens auch mehr neue Mitarbeiter kommen, die bei Fragen zunächst immer einen Kollegen blockieren. Die Prozessdiagramme sollen den neuen Mitarbeiten dagegen ermöglichen, bei Fragen zunächst selbst auf den Prozess zu schauen und diesen so gut es geht umzusetzen, wodurch Zeit gespart wird. Sind die Prozesse ausformuliert, kann dann auch von den Geschäftsführern besser an einer Steigerung der Effizienz der Prozesse gearbeitet werden.


Meine Tätigkeit als Prüfungsassistent (2/3)

Im zweiten Teil meines Blogeintrags möchte ich einen Einblick in reguläre Arbeitsabläufe geben. Da ich in der Wirtschaftsprüfung als Prüfungsassistent angestellt bin, fange ich dazu mit dem Ablauf einer Prüfung an. Für diese Prüfung eines größeren Konzerns aus der Einzelhandelsbranche bin ich mit meiner vorgesetzten Wirtschaftsprüferin für zwei Wochen nach Wiesbaden gereist, wo ich für die Zeit in einem Hotel in der Innenstadt gelebt habe. In Wiesbaden haben wir in den Räumlichkeiten des Steuerberaters des Mandanten gearbeitet. Dieser Standortwechsel hat zwei Hauptgründe: Zum einen ist man bei Nachfragen direkt an der Quelle und kann sich Telefonate etc. sparen. Außerdem ist die Präsenz vor Ort wichtig für Bonding und Networking. Die Prüfung selbst startet mit der Prüfungsvorbereitung, die im Büro am Hauptsitz durchgeführt wird. Die in Unternehmensrechnung im Bachelor kennengelernten Begriffe und Abläufe aus IFRS und HGB sind zum Verständnis dieser mit Sicherheit sinnvoll gewesen. In der Hauptprüfung in Wiesbaden haben wir dann systematisch sämtliche Punkte im Jahresabschluss auf Vollständigkeit und Plausibilität geprüft. Zu den im Jahresabschluss aufgeführten Bankguthaben/-verbindlichkeiten werden dazu zum Beispiel Auszüge von den jeweiligen Banken angefordert und abgeglichen. Grundstücke/Immobilien werden von unabhängigen Gutachtern bewertet- zur Prüfung werden dazu dann zum Beispiel die Zertifikate der Gutachter angeschaut und die Gutachten selbst auf Plausibilität probegelesen. So ergeben sich viele verschiedene Prüfungshandlungen für die Bereiche des Jahresabschlusses, die sich auch von Branche zu Branche unterscheiden. Wird eine Differenz aufgedeckt, wendet man sich zunächst an den zuständigen Steuerberater, um diese zu klären- meistens entstehen die Differenzen durch unterschiedliche Bewertungen. Sind alle Differenzen geklärt und keine schwerwiegenden Fehler aufgedeckt worden, schreibt der Wirtschaftsprüfer ein Testat, in dem er unter anderem die Richtigkeit des Jahresabschlusses bescheinigt.
Als anderes interessantes Beispiel für eine regelmäßige Tätigkeit zählt die Inventurbeobachtung. Dazu fahre ich einmal im Jahr zum entsprechenden Betrieb. Dieser schickt mir im Vorhinein eine bewertete Inventarliste, aus der ich nach bestimmten Modellen eine Stichprobe ziehe. Vor Ort lasse ich mir vom Lagerleiter dann die Artikel auf meiner Stichprobenliste zeigen und zähle diese im Lager von Hand durch. Meine Zählung gleiche ich dann im Nachhinein mit der bei der Inventur gezählten Menge ab. Wenn es dort keine Unterschiede gibt, kann der Inventarbestand für die Prüfung als plausibel angesehen werden. Für diese Tätigkeiten hilft neben guter Vorbereitung und sicherem Auftreten auch zum Beispiel die im Bachelor gelernten Grundbegriffe aus Produktion und Logistik- Stichwort FIFO/LIFO etc. Inventurbeobachtungen sind je nach Branche sehr interessant, da man einen sehr tiefen Einblick in die Produktionsstätten der Mandanten erhält. Auch die tatsächlichen Preise für verbaute Materialien sind unter Umständen sehr spannend.


Meine Tätigkeit als Prüfungsassistent (1/3)

Moin zusammen,
ich bin Jan Malte Hilgefort und studiere Wirtschaftsinformatik im zweiten Mastersemester. In meinen Blogeinträgen möchte ich meine Werkstudententätigkeit der letzten 3 Jahre vorstellen. Nachdem ich 2019 ein Praktikum bei der NIEHAUSPARTNER Treuhand GmbH & Co. KG abgeschlossen habe und dieses von beiden Seiten positiv bewertet wurde, habe ich eine Werkstudentenstelle ebenda als Prüfungsassistent in der Wirtschaftsprüfung angefangen. Diese besteht aus einigen Stunden im Monat und Vollzeitphasen in den Semesterferien, dazu aber im zweiten Blogeintrag mehr.
Die NIEHAUSPARTNER Treuhand GmbH & Co. KG ist eine mittelständische Steuerberatungs- und Wirtschaftsprüfungsgesellschaft mit Hauptsitz in Cloppenburg und beschäftigt ungefähr 40 Arbeitnehmer. Dazu gehören neben Steuerfachangestellten und Prüfungsassistenten auch Berufsträger, also Steuerberater und Wirtschaftsprüfer. Die Steuerberatung gestaltet und berät dabei Unternehmen unterschiedlichster Größe in steuerlichen Belangen und erstellt dazu zumeist einmal im Jahr einen Jahresabschluss und Steuererklärungen. Haben Unternehmen eine gewisse Größe erreicht, sind sie prüfungspflichtig und müssen sich einmal jährlich einer Prüfung des Jahresabschlusses durch einen Wirtschaftsprüfer unterziehen.
Im zweiten Teil des Blogeintrags möchte ich zur Vorstellung meiner Werkstudententätigkeit zunächst regelmäßige Arbeitsabläufe vorstellen und im dritten Teil dann zwei Projekte, die ich im Unternehmen umgesetzt habe. Bei den meisten Aufgaben haben mir Kenntnisse aus dem Bachelorstudium Wirtschaftsinformatik sehr weitergeholfen. Gerade Unternehmensrechnung und Produktion/Logistik haben bei den alltäglichen Aufgaben unterstützt, für die informatiklastigeren Projekte haben mir Programmieren I/II und Relationale Datenbanken wohl am meisten geholfen.
Insgesamt kann ich die Werkstudentenstelle als Prüfungsassistent auf jeden Fall weiterempfehlen, da es sich um eine fordernde Tätigkeit handelt, die viele Schnittstellen mit dem Wirtschaftsinformatikstudium hat. Gerade die Digitalisierung von mittelständischen Unternehmen bietet Wirtschaftsinformatikern in dem Bereich zahlreiche Chancen.