Schlagwörter
Skills
- Automotiv
- Videoüberwachung -/ Sicherheitssysteme
- Öffentlicher Bereich
- IOT
- KI (NLU,NLP,NLG)
- Java, Git, Maven, Gradle, Jenkins, Docker, Kubernetes, Microsoft-Azure, Heroku, Relationale DB (Oracle, PostgreSQL), NoSQL (Cassandra, Mongo, Azure Cosmos), Linux, Spring-Boot
- Angular
WER WIR SIND
CTREAM ist Ihr Partner für die Digitalisierung Ihrer Unternehmensprozesse.
IT-Beratung, ganzheitliche Konzepte, Software-Entwicklung, Digitalisierung von Gesamtprozessen bis hin zur steten Optimierung – mit CTREAM erhalten Sie alles aus einer Hand.
WAS UNS AUSMACHT
Unsere Vision ist es, für jedes Unternehmen ganz individuelle digitale Lösungen zu erschaffen. Wir helfen Ihnen, Ihre ganz eigene digitale Zukunft zu kreieren. Eine Zukunft, die sich intuitiv anfühlen wird – als wären sie schon immer Teil Ihrer Arbeitsprozesse. Smart wird Ihr Arbeiten bereichern und angenehmer gestalten.
WIE WIR ARBEITEN
Effizient. Innovativ. Gemeinsam.
Wir sprechen am liebsten durch Taten. Überzeugen Sie sich selbst.
Projekthistorie
Entwurf/Design der μ-Service Systemarchitektur für das Backend. Entwicklung mehrerer μ-Services mit RESTful APIs (Spring-Boot), über diese die mobilen Applikationen (iOS, Android) die, durch den Anwender erzeugten, Daten synchronisieren.
Die API kann nur durch berechtigte Clients aufgerufen werden, sodass für die Authentifizierung/Autorisierung Spring- Security eingesetzt wurde.
Die Daten wurden in einer PostgreSQL sowie in einer MongoDB persistiert.
Die μ-Services wurden mittels GitLab CI/CD gebaut und deployed. Entwicklung der einzelnen Pipelines sowie die Installation/Konfiguration von GitLab Runners.
Weitere Tools:
Java-17, JUnit, Maven, JPA(Hibernate), Swagger, Postman, Linux, SCRUM, JIRA, OAuth2, Keycloak
Entwickelt wurde eine RESTful API mittels Spring-Boot(Java17), über diese Versicherungsdaten durch interne Applikationen/Prozesse verwaltet werden. Die Daten wurden in der Oracle DB aufbewahrt und durch definierte StoredProcedures zu weiteren Prozessen weiteregegeben.
Die API konnte nur durch berechtigte Clients aufgerufen werden, hierzu wurde OAuth2 und Keycloak eingesetzt.
Die Applikation wurde in der GitLab CI/CD als Docker Images gebaut und mittels Helmcharts auf OpenShift deployed.
Weitere Tools:
Swagger, OpenAPI, Junit, Maven, Postman
Auswertung von natürlich sprachlicher Informationen die von Benutzern durch Dateien über die REST APIs (Spring-Boot- MVC/Java11) zur Verfügung gestellt werden. Anschließende Extrahierung und (semantische, syntaktische und inhaltliche) Validierung dieser Dateien.
Anlegen und Kenntlichmachung von Skills durch Anbindung von NLU-Cloud Anbietern (IBM-Watson-Cloud). Verwaltung und Persistieren der Skills in der MongoDB. Bereitstellung einer REST API für das Inferencing der vom Benutzer eingegebene Information. Automatisierte API Tests via Postman (Newman).
Neben den typischen Entwickler Aufgaben war ich sehr stark im Anforderungsmanagement und in Architektur-Entscheidungen involviert. Anforderungen wurden an das Team über das JIRA Board als Storys angebracht. Die Architektur sowie die APIs wurden nach dem Paradigma DDD (Domain-Driven-Design) angegangen.
Entwicklung diverser Microservices mittels Spring-Boot/Cloud (Java11) für das Konsumieren von Events die anhand von diversen Protokollen wie MQTT, Chain2 und DECT an dedizierte Plattformen (Event Hub, Chain2Gate) publiziert werden. Verantwortlichkeit für das Deployment via Helm-Charts (CI/CD Azure Pipelines, Docker) sowie der Überwachung der einzelnen Pods (K8s).
Konvertieren und interpretieren der Events sowie das Persistieren der Daten in einer relationalen Datenbank (PostgreSQL, Flyway).
Provisionierung der interpretierten Daten mittels einer RESTful API. Unit sowie Regressionstests mittels Junit5. Visualisierung von Daten via Grafana.
Konsumieren und Interpretation von eBus-Telegramen aus Apache-Kafka Topics mittels Kafka-Streams. Hierbei werden die einzelnen Microservices (Spring-Boot/Java11) die für das Konsumieren sowie Transformieren der eBus-Telegrame in im AKS von Microsoft- Azure gehostet.
Absicherung der REST APIs mittels Anbindung zu CRM-System (Salesforce) und Spring- Security. Verwaltung der Geschäftsdaten innerhalb einer MongoDB (Cloud-Atlas). Entwicklung von funktionalen Abnahmetests mit WireMock.
Ableitung fachlicher Microservices mittels Domain-Driven-Design (DDD) vom bestehenden Monolithen.
Tools:
Spring-Boot, Java11, Jenkins, Docker, PostgreSQL, JPA, Flyway, Scrum
Entwicklung und Absicherung einer RESTful API mittels Spring-Boot-MVC (Java11) und Spring-Boot-Security, für die Verwaltung der Registrierungen. Aufnahme und Umsetzung von funktionalen Anforderungen sowie Programmfehler innerhalb eines Kanban Prozesses
Aufsetzen, Verwalten und Warten eines IAM Systems mit Keycloak. Verwaltung der Daten mittels Microsoft SQL Server und lesen/schreiben in die Datenbank via JPA(Hibernate).
Konsumieren und Interpretation von eBus-Telegramen aus Apache-Kafka Topics mittels Kafka-Streams. Hierbei werden die einzelnen Microservices (Spring-Boot/Java11) die für das Konsumieren sowie Transformieren der eBus-Telegrame in im AKS von Microsoft- Azure gehostet.
Absicherung der REST APIs mittels Anbindung zu CRM-System (Salesforce) und Spring- Security. Verwaltung der Geschäftsdaten innerhalb einer MongoDB (Cloud-Atlas). Entwicklung von funktionalen Abnahmetests mit WireMock.
Auswertung von natürlich sprachlicher Informationen die von Benutzern durch Dateien über die REST APIs (Spring-Boot- MVC/Java11) zur Verfügung gestellt werden. Anschließende Extrahierung und (semantische, syntaktische und inhaltliche) Validierung dieser Dateien.
Anlegen und Kenntlichmachung von Skills durch Anbindung von NLU-Cloud Anbietern (IBM-Watson-Cloud). Verwaltung und Persistieren der Skills in der MongoDB. Bereitstellung einer REST API für das Inferencing der vom Benutzer eingegebene Information. Automatisierte API Tests via Postman (Newman).
Neben den typischen Entwickler Aufgaben war ich sehr stark im Anforderungsmanagement und in Architektur-Entscheidungen involviert. Anforderungen wurden an das Team über das JIRA Board als Storys angebracht. Die Architektur sowie die APIs wurden nach dem Paradigma DDD (Domain-Driven-Design) angegangen.
Entwurf (Swagger) und Implementierung einer Mehrmandantenfähigen Webanwendung für die Benutzung der APIs des Smart-Lockers.
Authentifizierung und Autorisierung von REST APIs (Spring-Boot-MVC/Java8) mittels Spring- Security. Anbindung von diversen 3’rd Party Funktionalitäten.
Konzeption und Entwicklung von automatisierten Integrationstests mittels Cucumber nach BDD (Behavior Driven Development).
Persistieren und Verwalten der Locker sowie der Benutzer
Entwicklung von Testaufgaben mit Templates (HTML5 + CSS3) für alle modernen Browser. Testaufgaben von Benutzern ausfüllen und diese an dedizierte Angular-Komponenten übertragen sowie für die Auswertung (im JSON-Format) an das Backend übermitteln.
Testaufgaben Templates aus XML generieren und in einer geschützten API zu Verfügung stellen. Datenmigration von einer relationalen Datenbank auf eine NoSQL (Apache- Cassandra) Datenbank. Automatisierung der fachlichen Abnahmetests mittels Cucumber. (Spring-Boot-MVC/Java8)
Entwickeln Microservices (Spring-Boot- MVC/Java8) die Events konsumieren, die von den Kameras in die einzelnen ActiveMQ-Topics produziert wurden. In Abhängigkeit zu deinem eintreffenden Event, vorbestimmte Geschäftsprozesse mittels einer Rule-Engine (Groovy) ausführen. Aus der Rule-Engine ausgegangene Daten in einer mit Spring- Security und dem ACL Konzept geschützten API zur Verfügung stellen.
Pflege und Weiterentwicklung von Smart- Services. Fachliche Abnahme Tests mittels JUnit.
Entwicklung einer Android Applikation für die Visualisierung sowie Disposition der Dienstpläne der Mitarbeiter der Bodenverkehrsdienste der Fraport AG. Mitarbeiter können über die Android Applikation ihre Jahrespläne der App zur Verfügung stellen. Die App senden diese Datei der frarota-service Webapplikation, die auf Heroku gehostet wird. Der Service extrahiert den Inhalt und sendet diese in der Form einer JSON Datei wieder an die App zurück. Die App übertragt den Inhalt der JSON in den Kalender des Smartphones. Die Daten werden in der SQLite Datenbank anschließend für History Zwecke persistiert.