Meine Projekte
Hier erhalten Sie einen detailierten Einblick in meine Erfahrungen und Fähigkeiten. Mit diesem Zeitstrahl führe ich Sie durch meine größeren Projekte aus den Bereichen Entwicklung, Consulting und Lehre.
Suche
Filter
Rolle
Branche
Kenntnisse
Werkzeuge
Integration von AI-getriebenen Lastprognosen zur Minimierung der Stromkosten bei der Verwendung dynamischer Stromtarife in Hauskraftwerken
Zeitraum 11/2024 - ( offen ) Inhalte | Das übergeordnete Ziel von Hauskraftwerken ist ein möglichst hoher Autarkiegrad. In den Wintermonaten ist dieses Ziel schwer zu erreichen. Zudem sind die Börsenstrompreise bei der Nutzung dynamischer Stromtarife im Winter höher als im Sommer. Zur Minimierung der Stromkosten kann das individuelle historische Lastprofil und weitere Faktoren in eine AI-getriebene Lastprognose einfließen. Diese Lastprognose dient als Grundlage zur Steuerung von Energieflüssen im Hauskraftwerk. Rollen | Software Engineer Branchen | Elektro Kenntnisse | Verteilte Systeme, AMQP, REST, Software Entwicklung Werkzeuge | Java, Eclipse, Git, Maven, OSGI, Jira, Confluence, JUnit |
Konzeption einer generischen Betrachtung von Quellen, Senken und Speichern in einem Energie-Management-System
Zeitraum 11/2024 - ( offen ) Inhalte | Es gibt eine Vielzahl von Komponenten innerhalb eines Hauskraftwerkes, die als Quellen, Senken oder Speicher von Energie betrachtet werden können. Für die Einbindung dieser Komponenten existieren individuelle Implementierungen. Angestrebt wird ein generischer Ansatz um neue Komponenten schneller integrieren zu können und bestehende Komponenten einfacher warten zu können. Das zentrale Energie-Management-System wird dazu ertüchtigt, Quellen, Senken und Speicher anhand allgemeiner Parameter behandeln zu können. Dies ermöglicht dem Endkunden die einfache Priorisierung von Energieflüssen im Haus. Rollen | Software Architect, Requirements Engineer Branchen | Elektro Kenntnisse | Projektmanagement, Reporting, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Anforderungsanalyse, UML Werkzeuge | Jira, Confluence |
Integration einer alternativen Hochvolt-Batterie in Hauskraftwerke
Zeitraum 07/2024 - 10/2024 ( 4 Monate ) Inhalte | Ein neuer Batterie-Typ soll als Quelle und Senke für Energien in Hauskraftwerke eingebunden werden. Die Schnittstelle zu einer Batterie unterscheidet sich je Hersteller und Typ teils stark. Der Zugriff auf die Daten und Sicherungssysteme der Batterie muss daher immer individuell implementiert und getestet werden. Außerdem unterscheiden sich Hoch- und Niedervolt-Batterien in der Zusammensetzung der einzelnen Module (seriell vs. parallel). Dies muss bei der Integration betrachtet werden. Für den entfernten Zugriff auf ein Hauskraftwerk (Visualisierung und Steuerung) nutzen dessen Entwickler und der Support ein internes Steuerungs-System. Diese muss hinsichtlich der neuen Batterie angepasst werden. Rollen | Software Engineer Branchen | Elektro Kenntnisse | Agiles Projektmanagement, Scrum, Design-Patterns, Software Entwicklung, Clean Code (CC), Dependency Injection, Anforderungsanalyse Werkzeuge | Java, Eclipse, Git, Maven, OSGI, Swing, Jira, Confluence |
Etablierung einer eventbasierten Kommunikation in einem verteilten System
Zeitraum 01/2024 - 06/2024 ( 6 Monate ) Inhalte | Austausch der zentralen Komponente eines verteilten Systems. In diesem Rahmen wird auch die Kommunikations-Strategie angepasst. REST-Schnittstellen werden zugunsten einer eventbasierten Kommunikation mittels AMQP ersetzt. Dies bedingt weitere Anpassungen um eine bislang synchrone Kommunikation asynchron abzubilden. Da die einzelnen Subsysteme des verteilten Systems in unterschiedlichen Verantwortungsbereichen auch außerhalb des Unternehmens liegen, bedarf der Prozess einer besonders guten Abstimmung und Dokumentation. Rollen | Software Architect, Software Engineer, Requirements Engineer Branchen | IT Kenntnisse | Agiles Projektmanagement, Scrum, Microservice-Architektur, Integration von Fremd-Systemen, Verteilte Systeme, AMQP, REST, Software Entwicklung, Clean Code (CC), Common Practices, Dependency Injection Werkzeuge | Java, Eclipse, Git, Maven, OSGI |
Reduzierung der Stromkosten im Hausverbrauch durch die Einbindung dynamischer Stromtarife
Zeitraum 12/2023 - 06/2024 ( 7 Monate ) Inhalte | Stündliche Börsen-Strompreise stehen immer für den folgenden Tag zur Verfügung (day-ahead). Diese Strompreise werden verwendet um eine Entscheidung darüber zu treffen, wann Verbraucher mit einer hohen Leistungs- bzw. Energieaufnahme (E-Fahrzeuge, Wärmepumpen, Batterien) mit Strom versorgt werden. Innerhalb mehrerer Iterationsstufen werden dynamische Strompreise integriert. Der zunächst deterministische Algorithmus wird später durch Machine-Learning ergänzt oder ersetzt. Hier fließen dann weitere Parameter ein wie die PV-Prognose, Wetterdaten und die Last-Prognose mit ein. Rollen | Software Engineer Branchen | Elektro Kenntnisse | Agiles Projektmanagement, Scrum, Software Architektur, Design-Patterns, Integration von Fremd-Systemen, Verteilte Systeme, AMQP, REST, Software Entwicklung, Clean Code (CC), Common Practices, Dependency Injection Werkzeuge | Java, Eclipse, Git, Maven, OSGI, RabbitMQ, JUnit |
Design und Implementierung von Oberflächen-Basiskomponenten
Zeitraum 10/2023 - 12/2023 ( 2 Monate ) Inhalte | Design eines einheitlichen Erscheinungsbildes für UI-Komponenten wie z.B. Textfelder, Checkboxes, Comboboxes und Tabellen. Vorgabe von Richtlinien zur Erstellung von Oberflächen. Implementierung wiederkehrender Anforderungen wie z.B. Formatierung, Bearbeitung, Validierung, Events, Export, Filterung, Sortierung sowie die Modell-Bindung. Erstellung von Beispielanwendungen zur Veranschaulichung und Vorlage für die Entwicklung. Rollen | Software Architect, Software Engineer Branchen | IT Kenntnisse | Scrum, Design-Patterns, Framework- und Portal-Entwicklung, Software Entwicklung, Common Practices Werkzeuge | Java, Eclipse, Git, Maven, Swing, Jira |
Konzeption und Entwicklung eines Systems zur Sicherstellung von Qualitätsansprüchen and Endprodukte während der Produktion
Zeitraum 03/2023 - 10/2023 ( 8 Monate ) Inhalte | Die Produktion und Montage des Endproduktes wird von einem Fremddienstleister durchgeführt. Qualitätsansprüche werden durch ein eigens dafür vorgesehenes Test-System sichergestellt. Dieses System besteht einerseits aus einer Hardware-Komponente, die mit dem Endprodukt verbunden wird und andererseits aus einer Software-Komponente, die über die Hardware-Komponente mit dem Endprodukt kommuniziert. Befehle führen zu Signalen die anschließend ausgewertet und dokumentiert werden. Dieses Projekt umfasst die Erfassung und Implementierung der Test-Szenarien, die Implementierung der zentralen Dokumentation, die Entwicklung einer Benutzeroberfläche sowie der Bereitstellung und Inbetriebnahme des Systems. Da sich das Endprodukt zu diesem Zeitpunkt selbst noch in der Entwicklung befindet, werden zudem Unzulänglichkeiten des Prototyps aufgedeckt und behoben. Rollen | Software Architect, Software Engineer, Requirements Engineer Branchen | Elektro Kenntnisse | Agiles Projektmanagement, Scrum, Software Architektur, Design-Patterns, Software Entwicklung, Clean Code (CC), Common Practices, Dependency Injection, Anforderungsanalyse Werkzeuge | Java, Eclipse, Git, Maven, CDI, OSGI, Jira, Confluence |
Betreuung einer Abschlussarbeit an der Hochschule Osnabrück
Zeitraum 02/2023 - 11/2023 ( 10 Monate ) Inhalte | Praxisnahe Betreuung einer Bachelorarbeit im Unternehmen. Ziel des Bacheloranden ist die Konzeption und prototypische Entwicklung eines einheitlichen Oberflächen- und Bedienkonzeptes für eine bestehende Anwendung. Anschließend an die Abschlussarbeit müssen die Ergebnisse verifiziert und übernommen werden. Fehlende Funktionalitäten werden sukzessive ergänzt. Rollen | Betreuer, Prüfer Branchen | IT Kenntnisse | Projektmanagement, Agiles Projektmanagement, Scrum, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Verteilte Systeme, Software Entwicklung, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Lehre, Abschlussarbeiten Werkzeuge | Java, Eclipse, Swing |
Modularisierung eines Frontend
Zeitraum 02/2023 - 11/2023 ( 10 Monate ) Inhalte | Themenspezifische Oberflächen sollen einfach, schnell und einheitlich entwickelt sowie in die Anwendung integriert werden können. Dazu wird eine neue komponentenbasierte Architektur etabliert die auch die Kommunikationsschnittstelle zum Backend vereinfacht. Die Architektur grenzt Verantwortlichkeiten klar voneinander ab und ist durch die Verwendung allgemeiner Entwurfsmuster gut wartbar. Sie kapselt Interna und bietet Entwicklern von Oberflächen-Modulen klar und gut dokumentierte Schnittstellen. Rollen | Software Architect, Software Engineer Branchen | IT Kenntnisse | Agiles Projektmanagement, Scrum, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Framework- und Portal-Entwicklung, Verteilte Systeme, Software Entwicklung, Clean Code (CC), Common Practices, Dependency Injection Werkzeuge | Java, Eclipse, Git, Maven, OSGI, Swing, Jira, Confluence |
Optimierung einer Schnittstelle zum Abruf unternehmenskritischer Daten
Zeitraum 01/2023 - 01/2023 ( 1 Monat ) Inhalte | Abruf und Verarbeitung diverser Daten von mehr als 150.000 Endgeräten in einem verteilten System. Der Datenabruf wird zentral gesteuert und nutzt einen Polling-Ansatz. Die interne Schnittstelle wird dahingehend abstrahiert, dass die Definition von Anfragen und der Verarbeitung zugehöriger Antworten unabhängig von der Durchführung stattfinden. Diese Abgrenzung ermöglicht die Optimierung hinsichtlich der Prozessor- Speicher- und Netzwerk-Last. Als Beispiele dienen die geringe zeitliche Verzögerung von zyklischen Anfragen in einem festen Intervall (Jitter) sowie die Verteilung der Verarbeitung auf mehrere Threads. Rollen | Software Engineer Branchen | IT Kenntnisse | Verteilte Systeme, Software Entwicklung, Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Clean Code (CC), Common Practices, Performance-Optimierung, Multithreading Werkzeuge | Java, Eclipse, Git, OSGI, Netty, Mockito, JUnit |
Bereitstellung anwendungsspezifischer Metriken
Zeitraum 12/2022 - 12/2022 ( 1 Monat ) Inhalte | Bereitstellung von Metriken für das Monitoring. Die KPI werden innerhalb der Anwendung erhoben, über eine HTTP-Schnittstelle bereitgestellt und von Prometheus verarbeitet. Mittels Grafana werden die Metriken dann grafisch aufbereitet und übersichtlich dargestellt. Rollen | Software Engineer Branchen | IT Kenntnisse | Software Entwicklung, IT-Produkte Werkzeuge | Java, Eclipse, Maven, OSGI, Micrometer, Prometheus, Grafana |
Planung und Umsetzung der horizontalen Skalierung einer unternehmenskritischen Anwendung
Zeitraum 05/2022 - 11/2022 ( 7 Monate ) Inhalte | Ermöglichung der horizontalen Skalierung eines monolithischen Systems. Die Besonderheit liegt darin, dass die einzelnen Knoten des Clusters untereinander kommunizieren. Abhängige Systeme verbinden sich immer mit genau einem der Knoten. Ein Knoten kann Anfragen je nach Anwendungsfall entweder selbstständig beantworten oder delegieren, sodass jeder Knoten im Cluster einen Beitrag zur Antwort leistet. Die zugrunde liegende Datenquelle ist dabei kein zentraler Service, sondern derzeit mehr als 150.000 Endgeräte, daher erfüllt ein einfaches Load-Balancing nicht die Anforderungen. Rollen | Software Architect, Software Engineer Branchen | Elektro Kenntnisse | Agiles Projektmanagement, Scrum, Software Architektur, Service Discovery, Verteilte Systeme, MDNS Werkzeuge | Java, Eclipse, Git, Maven, OSGI, Netty |
Lehrauftrag an der Hochschule Osnabrück
Zeitraum 09/2021 - 02/2022 ( 6 Monate ) Inhalte | Übernahme des Lehrauftrags „Grundlagen der Programmierung“ in Java für Studenten der Informatik (B.Sc.) an der Hochschule Osnabrück. Betreuung der Studenten bei der Durchführung des praxisorientierten Praktikums. Rollen | Prüfer, Lehrbeauftragter Branchen | Lehre Kenntnisse | Lehre Werkzeuge | Java, Eclipse |
Neuentwicklung einer Plattform zur Abbildung von Geschäftsprozessen einer Fahrzeug-Vermietung
Zeitraum 05/2021 - 10/2023 ( 2,5 Jahre ) Inhalte | Der Fokus liegt auf der technischen Optimierung des Buchungs-Prozesses von Mietfahrzeugen. Aufbau als Microservice-Architektur mit einem Web-Frontend. Verwaltung verschiedener Entitäten (Kunden, Fahrzeuge, Buchungen, etc.). Schnittstelle zur Synchronisation mit dem externen Buchungs-Frontend. Entwicklung workflowbasierter Freigabeprozesse (Zustandekommen von Mietverträgen). Vereinfachung der Kommunikation mit Kunden (Generierung und Versandt von Emails). Dynamische Erzeugung von Mietverträgen und Berichten in verschiedenen Formaten. Funktionalität zur Planung von Service-Personal. Authentifizierung und Autorisierung verschiedener Benutzergruppen (Geschäftsführung, Verwaltungs-Personal, Service-Personal). Rollen | Software Architect, Software Engineer, Requirements Engineer, Business Analyst Branchen | Tourismus Kenntnisse | Projektmanagement, Agiles Projektmanagement, Kanban, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Microservice-Architektur, Framework- und Portal-Entwicklung, Integration von Fremd-Systemen, Service Discovery, Verteilte Systeme, AMQP, REST, Software Entwicklung, Continuous Integration (CI), Continuous Delivery (CD), Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Clean Code (CC), Common Practices, Dependency Injection, Performance-Optimierung, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Beratung, IT-Produkte, Prozess-Management, BPMN, Gitflow, Administration, Berechtigungsmanagement, OAuth2 Werkzeuge | Java, Javascript, Typescript, Eclipse, VS Code, Git, Birt, Jenkins, Jenkins Pipelines, Artifctory, Nexus, Docker, Maven, npm, PostgreSQL, H2, JDBC, Spring Boot, Spring Cloud Gateway, Spring Cloud Config Server, Spring Cloud OpenFeign, Resilience4j, Micrometer, Angular, TestNG, Mockito, RabbitMQ, Prometheus, Grafana, nginx, Keycloak, Flowable |
Planung und Umsetzung von Qualitätssicherungs-Maßnahmen für sensible Systeme
Zeitraum 04/2021 - 04/2021 ( 1 Monat ) Inhalte | Test-Automatisierung der Software auf verschiedenen Ebenen (Unit-Tests, Modul-Tests, Schnittstellen-Tests und Integrations-Tests). Integration in den CI/CD-Prozess. Bereitstellung von Guidelines und Tools zur einfachen Reproduktion bei Erweiterung der Software. Schulung der Team-Mitglieder / Softwareentwickler. Rollen | Software Engineer Branchen | IT Kenntnisse | Continuous Integration (CI), Continuous Delivery (CD), Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Clean Code (CC), Lehre, Beratung Werkzeuge | Java, Eclipse, Git, Jenkins, Jenkins Pipelines, Artifctory, Docker, Maven, H2, JDBC, Spring Boot, TestNG, Mockito, Confluence, MS Office |
Prognose des Ladeverhaltens für elektrische Busse im öffentlichen Nahverkehr
Zeitraum 01/2021 - 03/2021 ( 3 Monate ) Inhalte | Erweiterung einer Planungs- und Steuerungs-Komponente für E-Busse im öffentlichen Nahverkehr. Der Energiebedarf und der potenzielle Energiezugewinn an Ladestationen werden in Zusammenhang gebracht. Somit kann das System prognostizieren, wann ein Fahrzeug unter Berücksichtigung bestimmter Schwellenwerte geladenen werden muss. Die prognostizierten Werte werden grafisch aufbereitet, sodass sie im Leitstand zur Verfügung stehen. Rollen | Software Architect, Software Engineer Branchen | Verkehr und Mobilität Kenntnisse | Agiles Projektmanagement, Scrum, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Integration von Fremd-Systemen, Verteilte Systeme, Software Entwicklung, Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Clean Code (CC), Common Practices, Dependency Injection, Performance-Optimierung, Anforderungsanalyse Werkzeuge | Java, Git, Nexus, Gradle, CDI, JMS, Swing, IntelliJ |
Lehrauftrag an der Hochschule Osnabrück
Zeitraum 09/2020 - 02/2021 ( 6 Monate ) Inhalte | Übernahme des Lehrauftrags „Grundlagen der Programmierung“ in Java für Studenten der Informatik (B.Sc.) an der Hochschule Osnabrück. Betreuung der Studenten bei der Durchführung des praxisorientierten Praktikums. Rollen | Prüfer, Lehrbeauftragter Branchen | Lehre Kenntnisse | Software Entwicklung, Lehre Werkzeuge | Java, Eclipse |
Visualisierung des Energieverbrauches elektrischer Busse im öffentlichen Nahverkehr
Zeitraum 09/2020 - 12/2020 ( 3 Monate ) Inhalte | Entwicklung einer Planungs- und Steuerungs-Komponente für E-Busse im öffentlichen Nahverkehr. Ermittlung der Ladezustände von elektrischen Bussen für einen Tag. Darstellung des zeitlichen Verlaufes: Zu jedem Fahrzeug werden die zugehörigen Touren mit den jeweiligen Ladezuständen dargestellt. Rollen | Software Architect, Software Engineer Branchen | Verkehr und Mobilität Kenntnisse | Agiles Projektmanagement, Scrum, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Integration von Fremd-Systemen, Verteilte Systeme, Software Entwicklung, Software Test (Unit, Integration, End2End), Clean Code (CC), Common Practices, Dependency Injection, Performance-Optimierung, Anforderungsanalyse Werkzeuge | Java, Git, Nexus, Gradle, CDI, JMS, Swing, IntelliJ |
Betreuung einer Abschlussarbeit an der Hochschule Osnabrück
Zeitraum 09/2019 - 02/2020 ( 6 Monate ) Inhalte | Praxisnahe Betreuung einer Bachelorarbeit im Unternehmen. Ziel des Bacheloranden ist die prototypische Entwicklung einer Komponente für eine Business Applikation. Definition der Rahmenanforderungen. Hilfestellung bei Fragen und Problemen. Rollen | Betreuer, Prüfer Branchen | IT Kenntnisse | Projektmanagement, Agiles Projektmanagement, Scrum, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Verteilte Systeme, Software Entwicklung, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Lehre, Abschlussarbeiten Werkzeuge | Java, Eclipse, Git, Jenkins, Maven, PostgreSQL, Spring Boot, SmartGWT, Jira, Confluence |
Lehrauftrag an der Hochschule Osnabrück: Grundlagen der Programmierung
Zeitraum 09/2019 - 02/2020 ( 6 Monate ) Inhalte | Übernahme eines Lehrauftrags „Grundlagen der Programmierung“ in Java für Studenten der Informatik (B.Sc) an der Hochschule Osnabrück. Betreuung der Studenten bei der Durchführung des praxisorientierten Praktikums. Rollen | Prüfer, Lehrbeauftragter Branchen | Lehre Kenntnisse | Software Entwicklung, Lehre Werkzeuge | Java, Eclipse |
Neuaufbau einer Entwicklungs- und Deployment-Umgebung zur Implementierung einer Business Applikation
Zeitraum 08/2019 - 06/2020 ( 10 Monate ) Inhalte | Refactoring eines monolithischen Systems hinsichtlich der Projektstruktur. Umstellung der Versionsverwaltung von Subversion nach Git. Implementierung von Release-Prozessen mittels Gitflow und Maven. Vereinheitlichung des Deployment-Prozesses für verschiedene Zielumgebungen (On Premise / Cloud, Windows / Linux, Staging). Schulung der Team-Mitglieder / Software-Entwickler Rollen | Software Architect, Software Engineer, DevOps Engineer, Requirements Engineer, Project Manager Branchen | IT Kenntnisse | Software Architektur, Domain-Driven-Design (DDD), Continuous Integration (CI), Continuous Delivery (CD), Beratung, Gitflow, Administration, Berechtigungsmanagement Werkzeuge | Java, Eclipse, Git, SVN, Jenkins, Jenkins Pipelines, Artifctory, ANT, Docker, Maven, Jira, Confluence |
Ausgliederung einer Reporting Komponente als Microservice
Zeitraum 04/2019 - 07/2019 ( 3 Monate ) Inhalte | Auslagerung verschiedener Reporting-Komponenten aus einem monolithischen System hin zu flexiblen Einzelkomponenten. Rollen | Software Architect, Software Engineer, Requirements Engineer Branchen | IT Kenntnisse | Reporting, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Microservice-Architektur, Integration von Fremd-Systemen, Verteilte Systeme, REST, Software Entwicklung, Continuous Integration (CI), Continuous Delivery (CD), Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Clean Code (CC), Common Practices, Dependency Injection, Anforderungsanalyse, UML Werkzeuge | Java, Eclipse, SVN, Birt, Jenkins, Artifctory, Maven, Guice, TestNG, Mockito, Jira, Confluence |
Begleitung der Digitalisierung eines KMU: Beratung und Umsetzung
Zeitraum 04/2019 - 08/2019 ( 5 Monate ) Inhalte | Ist-Aufnahme der Unternehmensprozesse. Analyse des Verbesserungspotenzials durch die Digitalisierung. Konzepterstellung unter Berücksichtigung der Akzeptanz (Nutzen vs. Veränderung). Vorstellung beim Kunden. Gemeinsame Entwicklung einer Strategie (langfristiges Ziel) und eines Lastenheftes (kurzfristige Umsetzung). Umsetzung einer zentralen Dateiablage, Einbindung einer Backup-Lösung, Einrichtung eines VPN, rechtskonforme Archivierung von Dokumenten und Emails. Rollen | Requirements Engineer, Business Analyst, Consultant Branchen | Tourismus Kenntnisse | Projektmanagement, Anforderungsanalyse, Beratung, IT-Produkte, Prozess-Management, Administration, Berechtigungsmanagement Werkzeuge | Windows, Linux, ZFS, Proxmox, Samba, Bareos, UrBackup, PfSense, OpenVPN, Mailstore |
Einführung von Scrum als Vorgehensmodell in der Softwareentwicklung
Zeitraum 01/2019 - 01/2020 ( 12 Monate ) Inhalte | Einführung von Scrum mit der Rolle „Scrum-Master“. Schulung der Team-Mitglieder und des Product Owners. Rollen | Business Analyst, Consultant, Scrum Master Branchen | IT Kenntnisse | Projektmanagement, Agiles Projektmanagement, Scrum, Beratung, Prozess-Management Werkzeuge | Jira, Confluence |
Migration einer Business Applikation von Java 8 nach Java 11
Zeitraum 01/2019 - 03/2019 ( 2 Monate ) Inhalte | Migration eines monolithischen Systems (ca. 2 Mio Zeilen Code) von Java 8 nach Java 11. Umstellung bezüglich Java 9 Modularisierung. Umstellung von Oracle JDK auf Adopt OpenJDK. Rollen | Software Architect, Software Engineer Branchen | IT Kenntnisse | Software Architektur, Framework- und Portal-Entwicklung, Software Entwicklung, Continuous Integration (CI), Continuous Delivery (CD), Java Modul-System (JPMS) Werkzeuge | Java, Eclipse, SVN, Jenkins, Jenkins Pipelines, Artifctory, Maven |
Pflege und Weiterentwicklung eines Frameworks für die Erstellung einer Business Applikation
Zeitraum 01/2018 - 12/2018 ( 12 Monate ) Inhalte | Weiterentwicklung eines Frameworks zur Vereinfachung von wiederkehrenden Entwicklungsaufgaben, sowie zur Vereinheitlichung von User-Experience. Integration der Anwendungskomponenten. Gesamte Abbildung des Entwicklungsstack vom Domain Model bis hin zur Verarbeitung und Darstellung im Browser. Rollen | Software Architect, Software Engineer, DevOps Engineer Branchen | IT Kenntnisse | Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Microservice-Architektur, Framework- und Portal-Entwicklung, Verteilte Systeme, REST, Software Entwicklung, Continuous Integration (CI), Continuous Delivery (CD), Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Clean Code (CC), Common Practices, Dependency Injection, Performance-Optimierung, Multithreading, Annotation Processing, Berechtigungsmanagement Werkzeuge | Java, Javascript, Eclipse, SVN, Jenkins, Jenkins Pipelines, Artifctory, Docker, Maven, Guice, Spring, Spring Boot, Annotation Processing, GWT, SmartGWT, TestNG, Mockito, Jira, Confluence |
Entwicklung eines flexiblen Berechtigungsmanagementsystems in einer Business Applikation
Zeitraum 02/2018 - 06/2018 ( 3 Monate ) Inhalte | Entwicklung eines rollenbasierten, konfigurierbaren Berechtigungsmanagement in eine bestehende Business Applikation. Konzeption, Anforderungsanalyse und Implementierung. Performance-Analyse und -Optimierung. Rollen | Software Architect, Software Engineer, Requirements Engineer, Project Manager Branchen | IT Kenntnisse | Projektmanagement, Klassisches Projektmanagement, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Framework- und Portal-Entwicklung, Software Entwicklung, Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Clean Code (CC), Common Practices, Dependency Injection, Performance-Optimierung, Multithreading, Annotation Processing, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Berechtigungsmanagement Werkzeuge | Java, Eclipse, SVN, Jenkins, Maven, PostgreSQL, Guice, Spring, Spring Boot, Annotation Processing, GWT, SmartGWT, TestNG, Mockito, Jira, Confluence |
Betreuung einer Abschlussarbeit an der Fachhochschule Bielefeld
Zeitraum 09/2017 - 02/2018 ( 6 Monate ) Inhalte | Praxisnahe Betreuung einer Bachelorarbeit im Unternehmen. Ziel des Bacheloranden ist die prototypische Entwicklung einer Komponente für eine Business Applikation. Definition der Rahmenanforderungen. Hilfestellung bei Fragen und Problemen Rollen | Betreuer, Prüfer Branchen | Lehre Kenntnisse | Projektmanagement, Klassisches Projektmanagement, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Verteilte Systeme, Software Entwicklung, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Lehre, Abschlussarbeiten Werkzeuge | Java, Eclipse, VS Code, SVN, Jenkins, Maven, PostgreSQL, GWT, SmartGWT, Confluence |
Integration einer bestehenden Open Source Lösung zur BPMN-basierten Steuerung von Geschäftsprozessen in ein Projektmanagement-System
Zeitraum 11/2016 - 12/2017 ( 13 Monate ) Inhalte | Integration des Business Process Management Systems (BPM) „Flowable“ in ein bestehendes Projektmanagementsystem. Definition der Anforderungen, Architektur der zu implementierenden Lösung. Führung der Entwickler hinsichtlich Coding Guidelines und Umsetzung der Anforderungen. Integration einer Komponente zur grafischen Bearbeitung von BPMN-Modellen. Entwicklung einer Komponente zur dynamischen Konfiguration von Formularen zur Erfassung von Benutzereingaben innerhalb der Geschäftsprozesse. Rollen | Software Architect, Software Engineer, Requirements Engineer, Project Manager Branchen | IT Kenntnisse | Projektmanagement, Klassisches Projektmanagement, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Framework- und Portal-Entwicklung, Integration von Fremd-Systemen, Verteilte Systeme, Software Entwicklung, Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Clean Code (CC), Common Practices, Dependency Injection, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Prozess-Management, BPMN, Berechtigungsmanagement Werkzeuge | Java, Javascript, Eclipse, SVN, Jenkins, Maven, PostgreSQL, Guice, GWT, SmartGWT, TestNG, Mockito, Jira, Confluence, Flowable |
Betreuung einer Abschlussarbeit an der Hochschule Osnabrück
Zeitraum 09/2016 - 05/2017 ( 9 Monate ) Inhalte | Praxisnahe Betreuung einer Bachelorarbeit im Unternehmen. Ziel des Bacheloranden ist die prototypische Entwicklung einer Komponente für eine Business Applikation. Definition der Rahmenanforderungen. Hilfestellung bei Fragen und Problemen Rollen | Betreuer, Prüfer Branchen | Lehre Kenntnisse | Projektmanagement, Klassisches Projektmanagement, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Verteilte Systeme, Software Entwicklung, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Lehre, Abschlussarbeiten Werkzeuge | Java, Eclipse, SVN, Jenkins, Maven, PostgreSQL, Swing, Confluence |
Implementierung einer Lösung zur Prognose von Fertigstellungskosten
Zeitraum 01/2016 - 10/2016 ( 9 Monate ) Inhalte | Entwicklung eines Moduls zur Bestimmung und Prognose von projektspezifischen Fertigungskosten. Etablierung der Komponente in das konzernweite Multiprojekt Controlling. Workshops mit Key-Usern (Projektleitung, Projektcontrolling, PMO) beim Endkunden zur Anforderungsanalyse und Abnahme. Vorstellung und Schulung im Rahmen der Einführung. Rollen | Software Architect, Software Engineer, Requirements Engineer, Consultant, Project Manager Branchen | Elektro, High-Tech Kenntnisse | Projektmanagement, Klassisches Projektmanagement, Projektcontrolling, Multiprojektcontrolling, Reporting, Software Architektur, Domain-Driven-Design (DDD), Design-Patterns, Software Entwicklung, Software Test (Unit, Integration, End2End), Test-Driven-Development (TDD), Dependency Injection, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Beratung, Berechtigungsmanagement Werkzeuge | Java, Eclipse, SVN, Jenkins, Maven, PostgreSQL, Guice, Swing, TestNG, Mockito, Jira, Confluence |
Entwicklung von Funktionen zum Projektcontrolling
Zeitraum 05/2015 - 12/2015 ( 7 Monate ) Inhalte | Entwicklung von Komponenten zur Gegenüberstellung und Auswertung von Plan- und Istwerten (Material, Personalkosten). Beachtung unterschiedlicher Zielgruppen (Projektleitung, Projektcontrolling) und deren Anforderungen. Einführung von Prognosemöglichkeiten anhand von kumulierten Schätzungen der einzelnen Projektteam Mitglieder. Rollen | Software Engineer, Requirements Engineer Branchen | Elektro, High-Tech Kenntnisse | Projektcontrolling, Software Entwicklung, Dependency Injection, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Berechtigungsmanagement Werkzeuge | Java, Eclipse, SVN, Jenkins, Maven, PostgreSQL, Guice, Swing, TestNG, MS Office |
Entwicklung von Berichten für das Projektmanagement
Zeitraum 02/2015 - 05/2015 ( 3 Monate ) Inhalte | Entwicklung von parametrisierbaren und kundenspezifischen Berichten zur Auswertung von Projektinformationen. Der Datenzugriff erfolgt über Rest und eine proprietäre Schnittstelle. Das Ausgabeformat (Excel, PDF, Word) ist flexibel vom Benutzer wählbar. Rollen | Software Engineer Branchen | Elektro, High-Tech Kenntnisse | Projektmanagement, Projektcontrolling, Reporting, REST, Software Entwicklung, Relationale Datenbanken, Berechtigungsmanagement Werkzeuge | Java, Eclipse, SVN, Birt, Jenkins, Maven, PostgreSQL, H2, JDBC, ApachePOI, MS Office |
Integration von SAP-Beschaffungsanträgen in eine Projektmanagement-Software
Zeitraum 10/2014 - 01/2015 ( 3 Monate ) Inhalte | Anforderungsanalyse und Lastenhefterstellung in Zusammenarbeit mit dem Kunden. Erstellung des Pflichtenheftes auf der Grundlage des Lastenheftes. Entwicklung, Dokumentation und Test Rollen | Software Engineer, Requirements Engineer, Consultant Branchen | Elektro, High-Tech Kenntnisse | Projektmanagement, Klassisches Projektmanagement, Integration von Fremd-Systemen, Software Entwicklung, Relationale Datenbanken, Normalisierung, Anforderungsanalyse, UML, Beratung, Berechtigungsmanagement Werkzeuge | Java, Eclipse, SVN, Birt, Jenkins, PostgreSQL, SAP JCo, Swing, TestNG, Confluence, MS Office |
Verbesserung der Projektmanagementfunktionalitäten einer Business Anwendung in Hinblick auf Projektmanagement Standards
Zeitraum 03/2014 - 09/2014 ( 6 Monate ) Inhalte | Ist-Aufnahme der Funktionalitäten und Prozesse einer bestehenden Softwarelösung für konzernweites Projektmanagement. Erarbeitung von Verbesserungen in Bezug auf die Ausrichtung auf Standards (DIN 69900, PM3, PMBOK, Prince2). Erstellung von Anforderungsdokumentationen (Lastenheft). Vorstellung der Ergebnisse beim Produktmanagement. Rollen | Requirements Engineer, Business Analyst Branchen | IT Kenntnisse | Projektmanagement, Klassisches Projektmanagement, Projektcontrolling, Portfoliomanagement, Reporting, Anforderungsanalyse Werkzeuge | MS Office |