Senior Java Entwickler: Java EE, Sencha/ExtJS, JavaScript, SOA, Web Services, SW-Design und -Konzeption, Datenbankmodellierung
Aktualisiert am 21.02.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.07.2024
Verfügbar zu: 100%
davon vor Ort: 100%
Deutsch
Muttersprache
Englisch
fachlich und thematisch verhandlungssicher
Französisch
Fortgeschritten

Einsatzorte

Einsatzorte

Schweiz
möglich

Projekte

Projekte

1 Jahr 1 Monat
2019-11 - 2020-11

Implementierung einer Single Sign On

Java/Jakarta EE 8 EJB 3 Spring Boot 2.3 ...

Softwareentwicklung unter JavaEE, Java Spring Boot ReactJS, Android, Single Sign On, Docker (compose), Kubernetes

  • Implementierung einer Single Sign On (SSO) Einführung von JavaEE und Spring Boot Backend- und ReactJS Frontend Applikationen auf Basis des „Keycloak“ SSO Wildfly Application Servers. Auslieferung aller Backend- und Frontend Applikationen als Docker Images in einer TLS gesicherten Kubernetes Umgebung.

  

Aufgaben und Tätigkeiten:

  • Aufsetzen und Konfigurieren eines auf dem Wildfly JEE Application Servers basierenden Keycloak SSO Servers mit Security/Login Realms und zugeordneten SSO Realm Clients für den einheitlichem einmaligen Login aller Frontend und Backend Applikationen in der Warenwirtschaft
  • Entwicklung eines Keycloak JEE Enterprise Application Moduls für einen Storage Provider zur Anbindung der Oracle DB mit der Benutzer-, Rollen- und Berechtigungsverwaltung
  • Entwicklung eines Keycloak JEE Enterprise Application Moduls für einen mehrstufigen Login Prozess (Keycloak Authentication Flow) der Frontend und Backend Warenwirtschaftshauptanwendung. Spätere Erweiterung dieses Moduls um einen Authentication Flow ohne Loginmaske zur Unterstützung einer automatisierten Anmeldung von SAP OCI Schnittstellen
  • Entwicklung eines Keycloak JEE Enterprise Application Moduls für die Anreicherung des SSO Json Web Token (JWT) mit zusätzlich fachlich benötigten Daten aus der Warenwirtschafts Oracle DB
  • SSL Konfiguration der Frontend und Backend Applikations - Docker Container in Kubernetes mit SSL und CA Zertifikaten unter Verwendung einer firmeninternen Cartificate Authority
  • SSO Security Konfiguration der REST Resource URLs auf Frontend, spring-boot, JEE Backend Seite hinsichtlich Authentisierung (Bearer JWT) und Authorisierung (Benutzerrollen und Rechte)
  • Auslieferung des Keycloak SSO Servers mit allen Keycloak JEE Enterprise Application Modulen als e i n  Docker Image für alle Stages Entwicklung, Test und Produktion
  • Konfigurierbarkeit aller Umgebungsvariablen für Datenbanken, technische Anwendungsparameter und die (De)Aktivierbarkeit des Logins über SSO mit Docker Container ENV Parametern aller Frontend und Backend Applikations-Images
  • Verwendung und Einbau des
    • Keycloak JEE Client Adapters in das Wildfly JEE Warenwirtschafts Backend
    • Keycloak Javascript Client Adapters in das ReactJS Warenwirtschafts Frontend
    • Keycloak Spring Framework Maven Dependencies in ein spring-boot Warenverkauf Anwendungsbackend
    • Keycloak Javascript Client Adapters in eine ReactJS Warenverkauf Anwendungfrontend
    • Android SSO Client Moduls "appauth" in zwei Android Apps. Schreiben eines Gradle Library Plugins zur Kapselung der SSO Standard Login Flowphasen/Aufrufe/URLs "authorize" und "token".
      Erweiterung von "appauth" um die noch nicht offiziell standardisierte OpenID Connect Logout Funktionalität, die Keycloak proprietär unterstützt à Realisierung einer einheitlichen (funktional und visuell) Login Flow HTML Benutzeroberfläche für mehrere Frontendtypen und Backends
  • Auslagerung von Keycloak Adminfunktionalität, hier "Passwort Reset" per REST API für ein JEE Backend, in einen spring-boot Docker Microservice.
    Entwicklung eines Client .jar Moduls zur Kapselung eines einheitlichen Zugriff auf die "Passwort Reset" Adminfunktionalität für das JEE Backend oder auch andere Consumer
  • Schreiben von Kubernetes Helm Charts für das Deployment aller dockerisierten Frontend und Backend Applikations-Images
  • Schreiben von Jenkins Jobs vom Bau der Frontend und Backend Applikationen, über die Docker Image Erstellung bis zum Kubernetes Deployment mittels der Kubernetes Helm Charts
  • Schreiben von Jenkins Jobs zum Erstellen von produktionsbereiten Release Builds und Branches der entwickelten Frontend- und Backend Anwendungen, sowie Hotfix Release Builds und Branches für Korrekturen der im Produktiv-betrieb befindlichen Releases unter Nutzung von Maven Versionierungs Techniken/Plugins
  • Preview 2-Knoten-Test-Cluster Umgebung vor Kubernetes als Plattform:
    ENV Variablen Konfiguration, Deployment und Netzwerk Connectivity des Frontend und der Backend Applikations Docker Images/Container der Waren-wirtschaftshauptanwendung und einem nginx Docker Image/Container als reverse proxy mittels
    • docker-compose: Kopie auf beide Testclusterknoten und je manuelles Hochfahren aller docker-compose Services/Container
    • Ansible Templates/Playbooks: automatisiertes Starten der Docker Container auf beiden/allen Testclusterknoten
Java/Jakarta EE 8 EJB 3 Spring Boot 2.3 Keycloak 8-11 Wildfly 19-20 Docker 19.03 Kubernetes 1.16 docker-compose 1.18 Ansible 2.8 AWX 6.1 Nginx Android 4|8|9 ReactJS 16 JaxRS RestEasy SSO OpenID Connect JWT TLS-SSL SAP OCI Maven 3.6 Gradle 6.5 Git JIRA IntelliJ Android Developer Studio Jenkins
Prodega/Transgourmet
Schweiz
7 Monate
2019-03 - 2019-09

Weiterentwicklung der Virtualisierungsplattform SAIL

Java 8/12 Spring Framework 4 und 5 Spring Data ...

Softwareentwicklung unter Java Spring (Boot), WireMock, ElasticSearch, CloudFoundry, MongoDB, Angular

  • Weiterentwicklung der Virtualisierungsplattform SAIL für unternehmensweite SOAP und REST Businessservices.
  • Entwicklung von Spring Backend Services und REST API Schnittstellen zum Erstellen, Updaten, Lesen, Löschen von WireMock Service Virtualisierungsschnittstellen und weitere Funktionalitäten des Schnittstellen Simulator/Mock Servers für die Swisscom SOAP und REST Businessservices.
  • Anpassung und Erweiterung des Angular Virtualisierungsplattform UIs für die neuen Funktionalitäten

  

Aufgaben und Tätigkeiten:

  • Entwicklung von Spring Backendservices und REST Api Schnittstellen für die CRUD Operationen der WireMock Virtualisierungsschnittstellen/StubMappings (sail-server BE Modul)
  • Backend Service zur Persistierung von Protokollierungsdatenobjekten erfolgreicher und fehlgeschlagener StubMapping Aufrufe in ElasticSearch (sail-wind BE Modul)
  • Backend Service für vereinfachte, non JSON Dokument basierte ElasticSearch Server Abfragen. Nutzung der ElasticSearch internen REST basierten URL Requestparameter Syntax zum Auslesen von Protokollierungsdatenobjekten erfolgreicher und fehlgeschlagener StubMapping Aufrufe (sail-server)
  • Schreiben von spring-data Java Interface Methoden für MongoDB Suchabfragen für die Spring Backendservices
  • Schreiben von MongoDB syntaxspezifischen Queries und ElasticSearch DB Abfrage JSON Queries für Debuging und Supportzwecke
  • Backend Service für das massenhafte Löschen von WireMock StubMappings mit Java Schnittstelle für Java Clients unter Verwendung einer Schreib- und Leserechte Prüfung auf Ebene des sail-server MongoDB Datenmodells unter Erweiterung des WireMock Java APIs (sail-wind)
  • Backend Service für das massenhafte Auslesen von WireMock StubMappings unter Verwendung von Suchkriterien der BE MongoDB
  • Erweiterung des MongoDB Datenmodells für die Spring Backendservices (sail-server)
  • Weiterentwicklung der WireMock Java API Extension „webhooks“ zum asynchronen Aufruf einer Response Web REST Resource eines WireMock StubMappings (sail-wind) als Alternative zur standardmäßigen synchronen HTTP Response
  • Schreiben eines WireMock „webhooks“ Response Transformers zum Auflösen von „Handlebars“ Template Eingine Expressions aus HTTP Request und StubMapping Daten
  • Migration der sail-server BE spring-boot Applikation von Version 1 auf 2
  • Migration der sail-wind Standalone Applikation auf spring-boot Version 2
  • Schreiben von „Karate“ Framework Integrationstests zum Testen aller neu entwicklelten Backend Services
  • Schreiben von Deployment Skripten der Backend und AngularJS Applikationen für CloudFoundry Test und Produktionsinstanzen
  • Entwicklung einer spring-boot OAuth2 Authorisierungsserver Applikation zum Ausstellen von JWTs für die lokale Entwicklung der „sail-server“ Authorisierungs Client Applikation als Alternative für eine externe OAuth2 Authorisierungsserver Testinstanz
  • Weiterentwicklung des zentralen AngularJS WireMock StubMapping Verwaltungs Views des sail-web UIs um die Funktionalität der asynchronen Webhooks Callback Response und Schreiben einer Anwendungsdokumentation
  • Refactoring und Modularisierung einzelner, ausgewählter zu grosser AngularJS UI Komponenten in mehrere wiederverwendbare, kleinere Komponenten
Java 8/12 Spring Framework 4 und 5 Spring Data Spring Boot 1 und 2 MongoDB 3 und 4 WireMock ? WSDL REST Schnittstellen Simulator/Mock Server WireMock ? Webhooks Handlebars Templating Engine OAuth2 Authorisierungsserver Bearer JSON Web Tokens (JWT) ElasticSearch ? Analyse- und Suchmaschine Kibana ? ElasticSearch UI ?Karate? Integrationstest Framework testcontainers docker-compose JSON JaxRS/Jackson WSDL
Swisscom
Schweiz
9 Monate
2018-06 - 2019-02

Weiterentwicklung der JavaEE Services

Java 7/8 JEE EJB 3.1 ...

Softwareentwicklung unter JavaEE, Java Spring, JMS, Hazelcast, OpenShift 

  • Weiterentwicklung der JavaEE Services und Module der zentralen Kundeninformations-Backendapplikation für Anzeigetafeln- und Bildschirme von Zugankunfts- und Abfahrtszeiten, sowie die Behandlung von Zugausfällen- und Verspätungen beim Bahnbetrieb. Anbindung von Bahn und Bus Partnerunternehmen über REST Schnittstellen zum Datentransfer von Fahrt-, Zug-, und Fahrplandaten.
  • Migration der JavaEE Backend Services und Module in eine Spring Boot basierte, Microservice-Cloud Architektur für eine OpenShift PAAS Umgebung.

 

Aufgaben und Tätigkeiten:

  • Analyse technischer Aufgaben und fachlicher Themen zur Erstellung von JIRA Stories und Tasks als Vorbereitung und Gestaltung von Scrum Sprints
  • Erstellen neuer und erweitern bestehender Oracle DB Tabellen mit Liquibase unter Berücksichtigung von Performance Features wie Tabellenpartitionierung und Indexierung
  • Schreiben neuer und Erweiterung bestehender EJB 3 Komponenten mit den Architekturschichten WebService|MessageDriven – Service – Business – DAO (alte Architektur). Ein WebService oder ein JMS MessageDrivenBean definiert hierbei eine Modulgrenze der Gesamtarchitektur
  • Schreiben von Mockito jUnit Tests für jede EJB dieser Schichten zur Testabdeckung von 80% und Einhaltung der Sonar Clean Code Regeln
  • Erstellen von Integrationstests mithilfe eines vorhandenen teamintern selbstentwickelten Testtools. Schreiben von XML Testsuiten zum Aufruf der WebService|JMS MessageDrivenBean Schnittstellen zum Aufruf der EJBs aller zu testenden Schichten eines Feature Tasks sowie der Verarbeitung und Weitergabe der Input und Output Daten jeder Servicekomponente an die nächste bis zum Testszenarioende
  • Anfertigung von Architekturskizzen zur Berücksichtigung von Datenmengen-grenzen von JMS Queues und der Dokumentierung des Applikationsflusses zwischen den Architekturmodulschichten vor der Implementierung der Business-logik
  • Migration von Features eines Hauptmoduls der alten Architektur (siehe Punkt 3) auf die neue cloudbasierte Mikroservice Architektur. Ersetzung von relationalen Tabellen durch Hazelcast bei Echtzeitdatenentitäten, EJB DAOs zu Hazelcast Spring Repositories. Stammdaten Tabellen weiterhin relational. Ersetzung von EJB 3 Services durch Spring Bean Components und Java 8 Streams. Verschlankung der alten Architektur durch Zusammenführung der Service und Businessschicht und Ersetzung interner JMS Modulgrenzen durch Microservice Modularisierung
  • Schreiben von Datenformatierungskonvertern zwischen den Architekturschichten und Partnerschnittstellen
  • Deployment der Microservice Module der neuen Architektur auf die OpenShift Plattform mittels OpenShift Docker Builder Images
  • Die Integrationstests über das XML Testszenariotool sind unabhängig von der neuen und alten Architektur
  • Erweiterung des Fahrten Moduls der SBB Angular Mobile App der Zugbegleiter. Visuelle Unterscheidung/Anzeigefälle von Plan- und Realankunftszeiten der Züge/Fahrten je Bahnhof mithilfe zusätzlicher Backenddatenfelder
  • Protractor Test für die Anwendungsfälle der Darstellung der Plan- und Real-zeiten
Java 7/8 JEE EJB 3.1 JMS Spring Framework 5 Spring Data Spring Boot 2 OpenJPA Hibernate 5 JSON JaxRS/Jackson XML JaxB Liquibase JUnit 4 Mockito   Oracle 12 DB IBM Web Application Server 8.5 Tomcat (spring-boot)   Hazelcast OpenShift JMS IBM mQueue   Angular 6 Protractor Jasmine Testframework   IntelliJ 2018 Git
SBB
Schweiz
8 Monate
2017-11 - 2018-06

Neuentwicklung eines Inventar Backends

Java 8 Spring Framework 4 Spring Data ...

Softwareentwicklung unter Java Spring, JMS docker, docker-compose

  • Neuentwicklung eines Inventar Backends zur Administration einer Swisscom Netzwerkinfrastruktur und seiner Komponenten.Validierungs- und Verfügbarkeits-prüfungen, Synchronisierungsfunktionen von Netzwerkinfrastruktur Komponenten-entitäten zwischen Swisscom internen Applikationen und Softwaresystemen der Vmware Produktfamilie.
  • Einführnug einer skalierbaren Anwendungsarchitketurdesigns zur Stabilisierung und Erweiterbarkeit des ursprünglichen Inventar Applikationsprototypen. Aufteilung der Inventar Applikation in unabhängige, lose gekoppelte Teile mittels docker images/containern und REST Schnittstellen und Integration mit den Swisscom Applikationen und den VMware Softwaresystemen.

Aufgaben und Tätigkeiten:

  • Redesign, Weiterentwicklung des Datenbankdesigns unter JPA von Vertrags-, Organisations-, Netzwerk Infrastruktur Technikkomponenten-, Netzwerk VMware Technikkomponentenentitäten
  • Einführung von flyway zur stufenweise Erweiterung und Modifizierung des Datenmodells
  • Schreiben von Datenbank DAOs auf Basis von spring-data repositories. Verwendung von Spring-JPAQL Queries und der spring-data Methodennamen-konvention zur Realisierung der Datenbankabfragen
  • Entwicklung und Einführung eines JPA Testdatengenerierungsfranmeworks auf Basis gängiger Designpatterns für das Inventar Backend Datenmodell
  • Schreiben von JMS/RabbitMQ Listenern zur asynchronen Anbindung eines zentralen VMware Backendsystems zur Synchronisierung der Inventar DB Entitäten. Verarbeitung von XML JMS Payload über JaxB
  • Entwicklung von Java Spring Backendservices zur Abbildung der Applikations-logik der Inventar Backendanwendung unter Verwendung der Java APIs für die VMware Umsysteme
  • Entwicklung von Java Spring REST Schnittstellen zur Verfügungstellung der Inventar Backenddaten an die VMware und Swisscom Umsysteme
  • Schreiben von automatisierten jUnit Integrations- und Unit Mockitotests mithilfe der generierten Testdaten für die Java Spring Backendservices
  • Erstellen von docker images/containern verschiedener Inventar Backend-anwendungsteile und Koordinierung über docker-compose
  • Unterstützung bei Integration und Deployment der Inventar Backendanwendung docker container in die "concourse" Continuous Integration Server build jobs
  • Integration der docker container in die Swisscom Netzwerk- und Systemland-schaft über ein proxy docker container mittels varnish und nginx
  • Einführung einer logging correlation für die Zuordnungsbarkeit der synchron und asynchron erhaltenen Daten und Nachrichten der VMware und Swisscom Umsysteme der Inventar Backendanwendung
  • Verwendung der VMware Produktfamilien Softwaresysteme zur Testdaten-erstellung für Anwendungsintegrationstests
    • Cloud Director - Deployment, Automatisierung und Verwaltung von virtueller Infrastrukturresourcen
    • Sphere - Servervirtualisierung in cloud Umgebungen
    • VRA-VRO - vRealize orchestrator/automation Provisionierung und Lifecycle Management von (virtuellen) Netzwerk-, Hardware-, Applikations- und IT Serviceinfrastruktur und Prozessorchestrierung von Services in cloud Umgebungen
Java 8 Spring Framework 4 Spring Data Spring Boot JPA JSON JaxRS/Jackson XML JaxB flyway VMware Java APIs und Softwaresysteme vCloud Director|vSphere|VRA/VRO JUnit 4 Mockito docker docker-compose JMS/RabbitMQ varnish (HTTP reverse proxy) nginx (load balancer reverse proxy) concourse (Continuous Integration) IntelliJ 2017 Git Gradle 4
Swisscom
Schweiz
8 Monate
2017-03 - 2017-10

Entwicklung von Back-End Services

Java 8 Spring Framework 4 Spring Data ...

Softwareentwicklung unter Java Spring, docker, docker-compose, Dojo JS

  • Entwicklung von Back-End Services und Front-End UIs für eine neue Verwaltungs-software für Steuer -Rückerstattung, -Deklaration und -Unterstellung Geschäftsprozessen zur automatisierten Verarbeitung von Eingangsformularen steuerpflichtiger Personen, Firmen und Institutionen in einer verteilten, komplexen Systemlandschaft. Mitarbeit bei der Sicherstellung eines geordneten GoLives.

Aufgaben und Tätigkeiten:

  • Entwicklung von Java Spring Backend Services mit Spring Annotationen (ohne Spring XML Konfiguration) im Steuer -Rückerstattung, -Deklaration und -Unterstellung Projekt (45% Anteil) und im SOA/WS Zentralsystem und Buchung Projekt (10% Anteil)
  • Implementierung der Persistenz mit Spring Data
    • Einfache SQL Queries durch automatisch generierte Spring DAO Implementierungen über die entspr. Spring Data DAO Interfaces
    • Komplexere SQL Queries durch Schreiben von Spring Data QL Statements über die entspr. Spring Data Query Annotation
    • Dynamische SQL Queries über das Spring Data API in den Java Spring Backend Services
  • Entwicklung von REST/JSON Schnittstellen zu den Backend Services für das UI
  • Schreiben von JUnit Mockito und Integration Tests für das Steuer -Rückerstattung, -Deklaration und -Unterstellung Projekt und JUnit Mockito Tests für das SOA/WS Zentralsystem und Buchung Projekt
  • Erstellen von JSON und XML Testdaten für die Formulare und deren Prozessierung im gesamten Verarbeitungsprozess der beiden Softwareprojekte und der angeschlossenen Systeme SAP Buchung und Risikobeurteilung über einen WSO2 ESB. IBM FileNet als Dokumentenverwaltung mit dünner Workflow Schicht beim Dokumenteingang waren weitere Systemlandschaftskomponenten
  • Entwicklung von Dojo UIs für die Bearbeitung der Steuer -Rückerstattung, -Deklaration und –Unterstellung Formulardaten unter Verwendung der REST Schnittstellen (45% Anteil)
  • Definition von Dateneingangsvalidierungsregeln für eine Formulardatenplausi-bilisierung und Einbettung als code ausgelagerte Entscheidungsmatrix über die Camunda DMN (decision matrix notation) im Steuer -Rückerstattung, -Deklara-tion und -Unterstellung Projekt
  • Erstellen eines docker images für die Oracle-XE Datenbank als Microservice des Steuer -Rückerstattung, -Deklaration und -Unterstellung Projekts. Einbindung des docker images in das Maven Projektsetup über docker-compose
Java 8 Spring Framework 4 Spring Data Spring Boot JaxWS JaxRS JUnit 4 Mockito Dojo JS 1.9.6/1.11 docker docker-compose Camunda DMN IntelliJ 2017 Git JIRA BitBucket Maven 3.5 Soap UI 5.3 VMware 12 XML JSON Oracle DB 11g
Bundesamt für Informationstechnik ? Eidgenössisches Finanzdepartement
Schweiz
8 Monate
2016-07 - 2017-02

Beschaffungs- und Auftragsmanagement Geschäftsprozess Webanwendung

BPMN und AngularJS
BPMN und AngularJS

Softwareentwicklung unter JavaEE, BPMN und AngularJS

  • Entwicklung einer für Beschaffungs- und Auftragsmanagement Geschäftsprozess Webanwendung im Bereich Kontoverwaltung, Kontodatenqualitätssicherung und Kundenaufträgen in einer verteilten Systemlandschaft

Aufgaben und Tätigkeiten:

  • Entwicklung und Erweiterung von technischen aus fachlichen BPMN Geschäfts(teil)prozessen
  • Entwicklung von JavaEE BPM und UI Backend Services
  • Entwicklung von AngularJS und TypeScript UIs für die BPM Geschäftsprozesse
  • Schreiben von Camel Routings zum Aufruf der JavaEE Backend Services und UIs in den technischen BPMN Workflows
  • Entwicklung von JUnit Tests für die JavaEE Backend Services
  • Entwicklung von Protractor Unit und Smoke End-2- End Tests für die AngularJS und TypeScript Uis
  • Integration von Umsystemen über JaxWS WebService Mock Schnittstellen
  • Erstellung von XML Mock Daten für verschiedene Anwendungsfälle der Mock WebServices
  • Entwicklung von JaxRS Schnittstellen für den UI Zugriff auf die JavaEE UI Backend Services
  • Analyse von fachlichen Anforderungsdefinitionen in BPMN und Ablaufdiagrammen im Enterprise Architect
  • Erstellung von technischen XSD Schnittstellen auf Basis fachlicher XSD Schnittstellen
Carnot/Sunguard BPMN Infinity Process Platform (IPP) 9.3 AngularJS 1.5 TypeScript 2 nodeJS 6.9 JavaScript Promises Selenium WebDriver Protractor 5 Jasmin 2 Java 8 JEE JaxWS - Apache CXF JaxRS - RestEasy TomcatEE Apache Camel Junit 4 Mockito IntelliJ 2016 Eclipse Mars Git JIRA Bamboo BitBucket Maven 3 Enterprise Architect
PostFinance
Schweiz
1 Jahr 7 Monate
2015-01 - 2016-07

Softwareentwicklung unter Java EE

Entwicklung von Java Softwarekomponenten- und Services für ein zentrales Personalstammdatensystem in einer verteilten SOA Systemlandschaft unter IBM MDM (CBT – Core Banking Transactions)

Aufgaben und Tätigkeiten:

  • Modellierung von IBM MDM Java Komponenten- und Services im RAD Application Developer auf Basis des MDM Datenmodells. Applikationsdomänen: Rechtestammdaten für andere Applikationsdomänen und Adressstammdaten
  • Ausimplementierung der codegenerierten MDM Java Services nach einem applikationsdomänenspezifischen Fachkonzept und Absprache von Änderungen mit dem Fachbereich
  • Integration und Verfügbarmachung der MDM Java Services in die System- landschaft über Web Serivces (JAXWS)
  • Entwicklung von Web Service Datenmapping- und Transformationsmodulen
  • Entwicklung von Integration Tests zur Sicherung der Qualität und Anforderungs- abdeckung des Fachkonzepts
  • Entwicklung von Mockito JUnit Tests von kleineren Subkomponenten der MDM Java Services
  • Entwicklung von JUnit Tests für die Datenmapping- und Transformationsmodule
  • Schreiben eines technischen Konzepts und Entwicklung eines MDM Prototyp- moduls für eine asynchrone, dynamische Massendatenverarbeitung von Adressstammdaten auf IBM MDM - JMS Basis im zentralen Personalstamm- datensystem (dynamisch: Datenmenge nicht vor Laufzeit des Prototypmoduls bekannt)
IBM MDM 10 Weblogic 10.3.6 und 12.1.1 JAXWS JOOQ 2.6 Oracle 11g Mockito JUnit 4 Eclipse 4 Maven 3 Ant SVN
PostFinance
Schweiz
11 Monate
2014-02 - 2014-12

Softwareentwicklung unter Java Spring und ExtJS

Backend und Frontend Java, JavaScript Entwickler bei einem Portfoliomanagement Softwareprodukt im Banken Privatkundenbereich

Aufgaben und Tätigkeiten:

  • Aufsetzen einer SAML SSO Testumgebung bestehend aus
    • OpenAM SSO Server als Identity Provider (IdP)
    • Test Java Webapplikationen als Service Provider (SP) in einem Circle of Trust
  • Konfiguration des IdP Servers und der SP-Webapplikationen zur zentralen SSO Authentifizierung mittels SAML Tokens
  • SAML (Security Association Markup Language) Single-Sign- On (SSO) Einführung in eine ExtJS, Java Spring Framework und BPM basierte Mehrschichten Portfolio- management Anwendung und Integration in die OpenAM IdP SSO Authentifizierungs- umgebung
  • Konfiguration der SAML Token XML Payload Verschlüsselung und Signierung
  • Beratung des Kunden und dessen Projektmitarbeiter und Problemlösungen bei der SAML Integration der Portfoliomanagement Anwendung in eine IBM produktbasierte Systemarchitektur aus WebSeal Reverse Proxies, einem Tivoli Federated Identity Manager (TFIM) und dem "backbase" Portal Server auf WebSphere Basis.
  • Entwicklung eines Prototypmodells für JavaScript basierte BPM Action Komponenten als Ersatz für Java BPM Prozess Action Komponenten und Integration in das Schichtenmodell der Portfoliomanagement Anwendung bestehend aus
    • ExtJS Front End mit AJAX Aufrufen
    • BPM Prozess Schicht
    • Spring Bean Business Logic Service Schicht
    • Spring Bean Hibernate DAO Schicht
  • Evaluierung von JavaScript Dependency Injection (IoC) und Promises als neues Paradigma asynchroner Client-Server Aufrufe für ein späteres ExtJS Versionsupgrade der Portfoliomanagement Anwendung
  • Entwicklung von Portfolioanalyse Charts mit JFreeChart und Erweiterung um dynamische Skalen- und Messwertkoordinaten mit dem Java Graphics2D API
  • Entwicklung neuer und Weiterentwicklung bestehender Spring Backend-, BPM Prozess- sowie ExtJS Frontend Module und Funktionalität für die Portfoliomanagement Anwendung
  • Schreiben eines Portfoliowertberechnungs-Jasper Reports für zukünftige Erträge zinstragender Wertpapiere
  • Schreiben von SCRUM User Stories als Grundlage für die JIRA Issues und die Sprintplanung
Spring Framework 3.1 Spring Security Spring OpenSAML OpenSSO/OpenAM Single-Sign- On Identity Provider (IdP) BPM Prozess Engine (Eigenentwicklung des Portfoliomanagement Softwareproduktanbieters) JFreeChart ExtJS 3 DeftJS JavaScript Dependency Injection DeftJS JavaScript Promises Oracle DB Tomcat Jasper Reports JSON XML Mozilla Rhino JavaScript Engine Maven SVN Hudson Eclipse JIRA
Bethmann Bank
6 Monate
2013-07 - 2013-12

Softwareentwicklung unter Java EE

Entwicklung von Business Services mit JavaEE im Bereich von industriellen Fertigungsprozessen von Leiterplatten, elektrotechnischen Schaltkreisen, deren Bauteilen, Produktionsmaschinen und Fertigungsstrassen. Methode: 10 Personen Scrum Team mit JIRA Agile

Aufgaben und Tätigkeiten:

Erarbeitung und Einführung von neuen Technologien für das Team

  • Sonar und JaCoCo als Erweiterung einer Jenkins Continuous Integration Umgebung
  • und Einbindung in Maven Java Projekte
  • Arquillian als Application Server und EJB Integrationstest Framework
    • Entwickeln von Mavenprojektvorlagen verschiedener Komplexitätsstufen.
    • Vom einfachen EJB Modul bis hin zur EAR Anwendung mit mehreren EJB Modulen,
    • WebService und JCA Adapter Modulen, bzw. Application Server Modul-
    • Dependencies
    • Einbeziehung mehrerer Data Sources und aller Arten von JNDI Resourcen
    • und Berücksichtigung von XA Datenbanktransaktionen in Arquillian Tests
    • Betrieb dieser Mavenprojektvorlagen in den Application Servern WebSphere
    • und JBoss
    • Verfassen von Dokumentationen und Vorträgen für das Team

Entwicklung von Business Services mit Java EE 6: EJB, CDI, JPA und WebServices

  • Entwicklung von Geschäftslogik Bausteinen für eine Mehr-Schichtenarchitektur:
  • Datenbank – Business Logik – Integration mit Web Services – Web GUI
  • Anbindung mehrerer Datenbanken in die EJB3 Geschäftslogik Bausteine über XA
  • Transaktionen
  • Schreiben von Testfällen für jede Schicht, außer der Web GUI Schicht, unter
  • Verwendung der oben genannten Testframeworks als Funktionsnachweis und
  • Abnahmekriterium einer „Definition of Done“
  • Sicherung von Codequalität und des Einhaltens von Dokumen-tationsrichtlinien
  • mittels Sonar, JaCoCo, Jenkins und Checkstyle
  • Migration von EJB Business Service Applikationen von WebSphere 8.5 nach JBoss 7

Integration eines Legacy Systems für industrielle Fertigung (MES - Manufacturing Execution System) in JBoss7

  • Konfiguration von JBoss und eines MES Java Client APIs
  • Bewältigung technischer Herausforderungen in deutlich weniger Zeit als erwartet.
  • Herausforderungenen waren:
  • Java Security Aspekte, konkurrierende Logging Frameworks,
  • Debugging ohne Quelltext
  • Durchführen von Versionsupdates des MES Client APIs im JBoss und Sicherstellen
  • der Kompatibilität der entwickelten Business Services

Erstellen, Aufbereiten und Nutzung von Testdaten

  • Transformation von XML, CSV und Excel Datenquellen in (andere) XML Strukturen u.a. mit Groovy Skripten und XML APIs
  • Integrationstests mit SoapUI und Lasttests mit LoadUI mithilfe der transformierten Testdaten
Java EE6 EJB3 CDI JTA JTS DeltaSpike JPA/EclipseLink SOAP WebServices WebSphere 8.5 JBoss 7 Maven CDI-Unit DB-Unit jUnit Arquillian Sonar JaCoCo Jenkins Checkstyle SoapUI LoadUI Groovy XML GIT Stash SourceTree
Heidenhain
1 Jahr 8 Monate
2011-11 - 2013-06

Softwareentwicklung unter Java EE und ExtJS

Entwicklung einer Administrationsanwendung für ITIL Configuration-, IT-Security-und Compliance Management. Überführung eines monolitischen Prototyps in eine modulare Anwendungsarchitektur

Funktionsumfang der Anwendung:

ITIL Configuration Management

  • Administration, d.h. Suche, Neuanlage, Bearbeitung und Löschen von Configuration Items (CIs)
  • Abbilden der räumlichen sowie Hardware und Software Infrastruktur im Bayer Konzern auf CI Strukturen
  • Verknüpfung von CIs zur Abbildung von Gesamtinfrastrukturhierarchien von Bayer- Standorten über die Hardware- und Systemarchitektur bis zur Anwendung
  • Zuordnung und Konfiguration von Kontakten auf Benutzer- und Gruppenebene aufgrund eines Rollen- und Berechtigungskonzepts

IT-Security Management

  • Konfiguration eines Bayer-internen IT Security Konzepts für CIs
  • Technische Konfiguration IT-Security- Massnahmen (Controls) für CIs nach IT- Grundschutz anhand von IT-Security- Gruppen und -Vorlagen

Compliance Management

  • Compliance-Erklärung des CI-Eigentümers zu allen einzelnen Controls am CI
  • Wirtschaftlichkeitsbeurteilungen im Falle eines kostenkritischen Controls am CI
  • Zugriff auf den originalen textlichen Inhalt jedes Controls
Java EE5 JPA/Hibernate JDBC ExtJS 3.4 JBoss 5.1 Oracle DB Microsoft Active Directory LDAP SOAP und REST Web Services Integration von PL/SQL Funktionen und Prozeduren Eclipse SVN
Bayer
11 Monate
2010-11 - 2011-09

Softwareentwicklung unter Java und SOA

Entwicklung von Softwarebausteinen als Teil von Geschäftsfällen für die Provi

Aufgaben und Tätigkeiten:

  • Entwicklung serverseitiger Java-Komponenten
  • Entwicklung von SOA Prozessfragmenten
  • Orchestrierung der Java-Services in Prozessfragmente
  • Definition umfangreicher Testfälle für Java-Services und Prozessfragmente vor der Implementierung (TDD)
  • Implementierung der Testfälle als Nachweis für das Funktionieren der Java-Services und Prozessfragmente
  • Simulation von Services, Prozessfragmenten und Datenbanken über Mocks bei der Implementierung der Testfälle

Systemlandschaft:

  • Generierung von Java DTOs aus XML Schemata via Castor
  • Nutzung der Java DTOs durch Java Business Logik Service Remote Proxys und Umwandlung der Input und Output Objektdatenstrukturen in XML Messages
  • Aufruf mehrerer Java Services innerhalb von SOA Prozessen
  • Aufruf mehrerer SOA Prozesse innerhalb von SOA Prozessketten
  • Zusammenfassung von SOA Prozessketten zu Geschäftsfällen
  • XML Input und Output Datenstrukturen in JMS Text Messages über WebSphere MQ als technische Basis für die Anbindung und prozess- orientierte Kapselung von Umsystemen
  • Datenbankzugriffslogik als transparentes JDBC Servicemodul
  • Umsetzung von technischen Konzepten: Verstehen von UML Activity Diagrammen zur Implementierung der Java Business Logik Services und SOA Prozesse
Java UML SOA Process Engine WebSphere WebSphere MQ JMS basierter ESB Eclipse SVN ANT Hudson
Dell Services/Telekom
2 Monate
2010-10 - 2010-11

Softwareentwicklung unter Java EE

Entwicklungsunterstützung bei der letzten SCRUM-Iterartion vor Projektende für eine Retail Werkbank-Anwendung für das Management von Zins- und Flow- Zertifikat-Finanzprodukten

Aufgaben und Tätigkeiten:

  • Entwicklung einer UI Komponente für das Zusammen-setzen von Textbausteinen für die PDF Generierung von Dokumenten mit den Eigenschaften eines Zertifikat-Finanzprodukts
  • Erweiterung des Datenbankmodells sowie Entwicklung und Erweiterung von Seam Backend Services
Java EE5 Seam 2.2 JPA/Hibernate IceFaces JBoss 5.1 ANT
DZ Bank
5 Monate
2010-05 - 2010-09

Softwareentwicklung unter Java EE und ExtJS

Design und Entwicklung einer Prognosebörse und eines automatischen Börsenhandelssystems auf Basis der Anwendungsplattform (s.u.)

 Aufgaben und Tätigkeiten:

  • UML Use Case Diagramme für Anwenderszenarien
  • UML Klassendiagramme zur Darstellung der MVC basierten GUI Architektur und verwendeter gängiger Desgin Patterns: Factory, Mediator
  • GUI Entwicklung zur Umsetzung der Use Cases mit UI Tabellen, Charts und Eingabeelementen unter Verwen-dung von UI Layout Managern zur Platzaufteilung der Maskeninhalte
  • Implementierung des Börsenhandelssystems via EJB3
Java EE6 Rest WS JPA/Hibernate ExtJS 4 Glassfish Sparx Enterprise Architect NetBeans Maven ANT
ENPASOS GmbH
1 Monat
2010-04 - 2010-04

Softwareentwicklung unter Java EE und ExtJS

Java EE5 Seam 2.2 ExtJS 3.4 ...

Design und Entwicklung eines Web 2.0 Fragebogens auf Basis der Anwendungsplattform (s.u.) zum Thema Einsatz von Open Source Software in Unternehmen

Aufgaben und Tätigkeiten:

  • GUI Entwicklung eines Wizards mit Fragen und Schiebereglern als Anwortmöglichkeiten unter Verwen-dung von UI Layout Managern zur Platzaufteilung der Maskeninhalte
  • Entwicklung eigener kleiner ExtJS UI Komponenten zur Verbesserung der User Experience
  • Seam Business Logic Services zur Speicherung der Antwortdaten jedes Umfrageteilnehmers unter Anbindung der zuvor entwickelten Anwendungsplattform
  • Modul zur PDF Generierung eines mit den gegebenen Antworten des Fragebogens
Java EE5 Seam 2.2 ExtJS 3.4 iReport/JasperReports Glassfish NetBeans Maven ANT
ENPASOS GmbH, Uni Mainz
Mainz
7 Monate
2009-09 - 2010-03

Softwareentwicklung unter Java EE und ExtJS

Entwicklung einer Anwendungsplattform zur Verwaltung von Daten-Collections

Aufgaben und Tätigkeiten:

  • Entwicklung von UI Masken zum Lesen und Bearbeiten von Daten- Collections
  • Navigation durch die Baumstruktur einer Daten-Collection mit Drag And Drop Operationen und Backend Plausibilitätsprüfung
  • Entwicklung von Seam Services für die Datenbank-operationen der Daten- Collection Inhalte über das GUI
  • Entwicklung einer SQL ähnlichen Domain Specific Language (DSL) zum Abfragen von Daten-Collection Inhalten
Java EE5 JPA/Hibernate Seam 2.2 ExtJS 3.4 Glassfish ANTLR JAXB Quartz Maven Apache Continuum
ENPASOS GmbH, Raab Photonik GmbH, Uni Potsdam gefördert vom BMWi
2 Jahre 10 Monate
2006-11 - 2009-08

Implementierung von technischen PI/XI Integrationsprozessen

SAP XI/PI Integration Repository und Directory NWDI Eclipse ...

Softwareentwicklung unter SAP XI/PI und SAP Java EE

  • Implementierung von technischen PI/XI Integrationsprozessen (BPEL) zur turnusmäßigen Verarbeitung von Mitarbeiter Timesheet Daten bei Kunden
  • Anbindung von internen SAP und externen Third Party Systemen über ABAP Proxies und Web Services
  • Erweiterung des SAP XI Mail Adapters zur Verarbeitung von Dateiattachments mit Timesheet Daten mit einer EJB 2.1 Session Bean
  • Entwicklung einer SAP Java Web Dynpro Anwendung zum Monitoring von Sende-, Benachrichtigungs- und Verabeitungsstatus über die Timesheet Daten aller Kunden. Anwendung der in der Diplomarbeit erworbenen Java Web Dynpro Kompetenzen
  • SAP Portal Java iViews zur technischen Administration von XI/PI Integrationsprozessszenarien (Start, Stop, Status)
  • Sicherstellen eines reibungslosen Betriebsablaufs der PI/XI Integrationsprozesse mit den angebundenen Systemen
  • Untersützung der Fachabteilungen
SAP XI/PI Integration Repository und Directory NWDI Eclipse ABAP (OO) Java Web Dynpro SAP Portal Java iViews J2EE 1.4 EJB 2.1 Java Proxy Runtime (JPR) ABAP Proxy ABAP)
Randstad Deutschland

Aus- und Weiterbildung

Aus- und Weiterbildung

2005 ? 2006:

Institution: Fachhochschule Furtwangen

Ausbildung: Fachbereich: Allgemeine Informatik

Abschluss: Master of Science (M.Sc.)

Master Thesis: Gerne auf Anfrage

2000 ? 2005:

Institution: Fachhochschule Furtwangen      

Ausbildung: Fachbereich: Wirtschaftsinformatik

Abschluss: Diplom-Informatiker (FH)

Diplomarbeit: Gerne auf Anfrage

1999:

Abschluss: Abitur

Zertifikate:

  • "Sun Certified Programmer" Java SE 6
  • "Advanced English for Professionals" (Stufe C1 des europäischen Referenzrahmens)

Kompetenzen

Kompetenzen

Produkte / Standards / Erfahrungen / Methoden

Application Server:

  • JBoss
  • Glassfish
  • Tomcat

Java Frameworks und Standards:

  • JSF
  • IceFaces
  • Struts
  • Spring
  • JAX-WS
  • JAX-RS
  • JPA
  • Hibernate
  • OpenJPA
  • BPM(N)
  • SAML

UML:

  • Sparx Enterprise Architect
  • Together

Code-Management:

  • SVN
  • GIT

Build-Tools:

  • ANT
  • Maven
  • Hudson / Jenkins

IDE:

  • Eclipse
  • NetBeans
  • SQL Developer

Betriebssysteme

Debian Linux
Expertenkenntnisse
Solaris
gute Kenntnisse
Windows
Expertenkenntnisse

Programmiersprachen

C/C++
gute Kenntnisse
CSS
sehr gute Kenntnisse
Groovy
sehr gute Kenntnisse
HTML
sehr gute Kenntnisse
Java
Expertenkenntnisse
JavaScript/AngularJS
Expertenkenntnisse
JavaScript/Dojo
sehr gute Kenntnisse
JavaScript/ExtJS
Expertenkenntnisse
Node.JS
gute Kenntnisse
Python
Grundkenntnisse
Scala
Grundkenntnisse

Datenbanken

MS SQL Server
gute Kenntnisse
MySQL
gute Kenntnisse
NoSQL
mongodb, redis, Grundkenntnisse
Oracle
sehr gute Kenntnisse
PostgreSQL
sehr gute Kenntnisse

Branchen

Branchen

  • Chemie, Pharma
  • Bank
  • Personalwesen
  • IT-Beratung
  • Telekommunikation

Einsatzorte

Einsatzorte

Schweiz
möglich

Projekte

Projekte

1 Jahr 1 Monat
2019-11 - 2020-11

Implementierung einer Single Sign On

Java/Jakarta EE 8 EJB 3 Spring Boot 2.3 ...

Softwareentwicklung unter JavaEE, Java Spring Boot ReactJS, Android, Single Sign On, Docker (compose), Kubernetes

  • Implementierung einer Single Sign On (SSO) Einführung von JavaEE und Spring Boot Backend- und ReactJS Frontend Applikationen auf Basis des „Keycloak“ SSO Wildfly Application Servers. Auslieferung aller Backend- und Frontend Applikationen als Docker Images in einer TLS gesicherten Kubernetes Umgebung.

  

Aufgaben und Tätigkeiten:

  • Aufsetzen und Konfigurieren eines auf dem Wildfly JEE Application Servers basierenden Keycloak SSO Servers mit Security/Login Realms und zugeordneten SSO Realm Clients für den einheitlichem einmaligen Login aller Frontend und Backend Applikationen in der Warenwirtschaft
  • Entwicklung eines Keycloak JEE Enterprise Application Moduls für einen Storage Provider zur Anbindung der Oracle DB mit der Benutzer-, Rollen- und Berechtigungsverwaltung
  • Entwicklung eines Keycloak JEE Enterprise Application Moduls für einen mehrstufigen Login Prozess (Keycloak Authentication Flow) der Frontend und Backend Warenwirtschaftshauptanwendung. Spätere Erweiterung dieses Moduls um einen Authentication Flow ohne Loginmaske zur Unterstützung einer automatisierten Anmeldung von SAP OCI Schnittstellen
  • Entwicklung eines Keycloak JEE Enterprise Application Moduls für die Anreicherung des SSO Json Web Token (JWT) mit zusätzlich fachlich benötigten Daten aus der Warenwirtschafts Oracle DB
  • SSL Konfiguration der Frontend und Backend Applikations - Docker Container in Kubernetes mit SSL und CA Zertifikaten unter Verwendung einer firmeninternen Cartificate Authority
  • SSO Security Konfiguration der REST Resource URLs auf Frontend, spring-boot, JEE Backend Seite hinsichtlich Authentisierung (Bearer JWT) und Authorisierung (Benutzerrollen und Rechte)
  • Auslieferung des Keycloak SSO Servers mit allen Keycloak JEE Enterprise Application Modulen als e i n  Docker Image für alle Stages Entwicklung, Test und Produktion
  • Konfigurierbarkeit aller Umgebungsvariablen für Datenbanken, technische Anwendungsparameter und die (De)Aktivierbarkeit des Logins über SSO mit Docker Container ENV Parametern aller Frontend und Backend Applikations-Images
  • Verwendung und Einbau des
    • Keycloak JEE Client Adapters in das Wildfly JEE Warenwirtschafts Backend
    • Keycloak Javascript Client Adapters in das ReactJS Warenwirtschafts Frontend
    • Keycloak Spring Framework Maven Dependencies in ein spring-boot Warenverkauf Anwendungsbackend
    • Keycloak Javascript Client Adapters in eine ReactJS Warenverkauf Anwendungfrontend
    • Android SSO Client Moduls "appauth" in zwei Android Apps. Schreiben eines Gradle Library Plugins zur Kapselung der SSO Standard Login Flowphasen/Aufrufe/URLs "authorize" und "token".
      Erweiterung von "appauth" um die noch nicht offiziell standardisierte OpenID Connect Logout Funktionalität, die Keycloak proprietär unterstützt à Realisierung einer einheitlichen (funktional und visuell) Login Flow HTML Benutzeroberfläche für mehrere Frontendtypen und Backends
  • Auslagerung von Keycloak Adminfunktionalität, hier "Passwort Reset" per REST API für ein JEE Backend, in einen spring-boot Docker Microservice.
    Entwicklung eines Client .jar Moduls zur Kapselung eines einheitlichen Zugriff auf die "Passwort Reset" Adminfunktionalität für das JEE Backend oder auch andere Consumer
  • Schreiben von Kubernetes Helm Charts für das Deployment aller dockerisierten Frontend und Backend Applikations-Images
  • Schreiben von Jenkins Jobs vom Bau der Frontend und Backend Applikationen, über die Docker Image Erstellung bis zum Kubernetes Deployment mittels der Kubernetes Helm Charts
  • Schreiben von Jenkins Jobs zum Erstellen von produktionsbereiten Release Builds und Branches der entwickelten Frontend- und Backend Anwendungen, sowie Hotfix Release Builds und Branches für Korrekturen der im Produktiv-betrieb befindlichen Releases unter Nutzung von Maven Versionierungs Techniken/Plugins
  • Preview 2-Knoten-Test-Cluster Umgebung vor Kubernetes als Plattform:
    ENV Variablen Konfiguration, Deployment und Netzwerk Connectivity des Frontend und der Backend Applikations Docker Images/Container der Waren-wirtschaftshauptanwendung und einem nginx Docker Image/Container als reverse proxy mittels
    • docker-compose: Kopie auf beide Testclusterknoten und je manuelles Hochfahren aller docker-compose Services/Container
    • Ansible Templates/Playbooks: automatisiertes Starten der Docker Container auf beiden/allen Testclusterknoten
Java/Jakarta EE 8 EJB 3 Spring Boot 2.3 Keycloak 8-11 Wildfly 19-20 Docker 19.03 Kubernetes 1.16 docker-compose 1.18 Ansible 2.8 AWX 6.1 Nginx Android 4|8|9 ReactJS 16 JaxRS RestEasy SSO OpenID Connect JWT TLS-SSL SAP OCI Maven 3.6 Gradle 6.5 Git JIRA IntelliJ Android Developer Studio Jenkins
Prodega/Transgourmet
Schweiz
7 Monate
2019-03 - 2019-09

Weiterentwicklung der Virtualisierungsplattform SAIL

Java 8/12 Spring Framework 4 und 5 Spring Data ...

Softwareentwicklung unter Java Spring (Boot), WireMock, ElasticSearch, CloudFoundry, MongoDB, Angular

  • Weiterentwicklung der Virtualisierungsplattform SAIL für unternehmensweite SOAP und REST Businessservices.
  • Entwicklung von Spring Backend Services und REST API Schnittstellen zum Erstellen, Updaten, Lesen, Löschen von WireMock Service Virtualisierungsschnittstellen und weitere Funktionalitäten des Schnittstellen Simulator/Mock Servers für die Swisscom SOAP und REST Businessservices.
  • Anpassung und Erweiterung des Angular Virtualisierungsplattform UIs für die neuen Funktionalitäten

  

Aufgaben und Tätigkeiten:

  • Entwicklung von Spring Backendservices und REST Api Schnittstellen für die CRUD Operationen der WireMock Virtualisierungsschnittstellen/StubMappings (sail-server BE Modul)
  • Backend Service zur Persistierung von Protokollierungsdatenobjekten erfolgreicher und fehlgeschlagener StubMapping Aufrufe in ElasticSearch (sail-wind BE Modul)
  • Backend Service für vereinfachte, non JSON Dokument basierte ElasticSearch Server Abfragen. Nutzung der ElasticSearch internen REST basierten URL Requestparameter Syntax zum Auslesen von Protokollierungsdatenobjekten erfolgreicher und fehlgeschlagener StubMapping Aufrufe (sail-server)
  • Schreiben von spring-data Java Interface Methoden für MongoDB Suchabfragen für die Spring Backendservices
  • Schreiben von MongoDB syntaxspezifischen Queries und ElasticSearch DB Abfrage JSON Queries für Debuging und Supportzwecke
  • Backend Service für das massenhafte Löschen von WireMock StubMappings mit Java Schnittstelle für Java Clients unter Verwendung einer Schreib- und Leserechte Prüfung auf Ebene des sail-server MongoDB Datenmodells unter Erweiterung des WireMock Java APIs (sail-wind)
  • Backend Service für das massenhafte Auslesen von WireMock StubMappings unter Verwendung von Suchkriterien der BE MongoDB
  • Erweiterung des MongoDB Datenmodells für die Spring Backendservices (sail-server)
  • Weiterentwicklung der WireMock Java API Extension „webhooks“ zum asynchronen Aufruf einer Response Web REST Resource eines WireMock StubMappings (sail-wind) als Alternative zur standardmäßigen synchronen HTTP Response
  • Schreiben eines WireMock „webhooks“ Response Transformers zum Auflösen von „Handlebars“ Template Eingine Expressions aus HTTP Request und StubMapping Daten
  • Migration der sail-server BE spring-boot Applikation von Version 1 auf 2
  • Migration der sail-wind Standalone Applikation auf spring-boot Version 2
  • Schreiben von „Karate“ Framework Integrationstests zum Testen aller neu entwicklelten Backend Services
  • Schreiben von Deployment Skripten der Backend und AngularJS Applikationen für CloudFoundry Test und Produktionsinstanzen
  • Entwicklung einer spring-boot OAuth2 Authorisierungsserver Applikation zum Ausstellen von JWTs für die lokale Entwicklung der „sail-server“ Authorisierungs Client Applikation als Alternative für eine externe OAuth2 Authorisierungsserver Testinstanz
  • Weiterentwicklung des zentralen AngularJS WireMock StubMapping Verwaltungs Views des sail-web UIs um die Funktionalität der asynchronen Webhooks Callback Response und Schreiben einer Anwendungsdokumentation
  • Refactoring und Modularisierung einzelner, ausgewählter zu grosser AngularJS UI Komponenten in mehrere wiederverwendbare, kleinere Komponenten
Java 8/12 Spring Framework 4 und 5 Spring Data Spring Boot 1 und 2 MongoDB 3 und 4 WireMock ? WSDL REST Schnittstellen Simulator/Mock Server WireMock ? Webhooks Handlebars Templating Engine OAuth2 Authorisierungsserver Bearer JSON Web Tokens (JWT) ElasticSearch ? Analyse- und Suchmaschine Kibana ? ElasticSearch UI ?Karate? Integrationstest Framework testcontainers docker-compose JSON JaxRS/Jackson WSDL
Swisscom
Schweiz
9 Monate
2018-06 - 2019-02

Weiterentwicklung der JavaEE Services

Java 7/8 JEE EJB 3.1 ...

Softwareentwicklung unter JavaEE, Java Spring, JMS, Hazelcast, OpenShift 

  • Weiterentwicklung der JavaEE Services und Module der zentralen Kundeninformations-Backendapplikation für Anzeigetafeln- und Bildschirme von Zugankunfts- und Abfahrtszeiten, sowie die Behandlung von Zugausfällen- und Verspätungen beim Bahnbetrieb. Anbindung von Bahn und Bus Partnerunternehmen über REST Schnittstellen zum Datentransfer von Fahrt-, Zug-, und Fahrplandaten.
  • Migration der JavaEE Backend Services und Module in eine Spring Boot basierte, Microservice-Cloud Architektur für eine OpenShift PAAS Umgebung.

 

Aufgaben und Tätigkeiten:

  • Analyse technischer Aufgaben und fachlicher Themen zur Erstellung von JIRA Stories und Tasks als Vorbereitung und Gestaltung von Scrum Sprints
  • Erstellen neuer und erweitern bestehender Oracle DB Tabellen mit Liquibase unter Berücksichtigung von Performance Features wie Tabellenpartitionierung und Indexierung
  • Schreiben neuer und Erweiterung bestehender EJB 3 Komponenten mit den Architekturschichten WebService|MessageDriven – Service – Business – DAO (alte Architektur). Ein WebService oder ein JMS MessageDrivenBean definiert hierbei eine Modulgrenze der Gesamtarchitektur
  • Schreiben von Mockito jUnit Tests für jede EJB dieser Schichten zur Testabdeckung von 80% und Einhaltung der Sonar Clean Code Regeln
  • Erstellen von Integrationstests mithilfe eines vorhandenen teamintern selbstentwickelten Testtools. Schreiben von XML Testsuiten zum Aufruf der WebService|JMS MessageDrivenBean Schnittstellen zum Aufruf der EJBs aller zu testenden Schichten eines Feature Tasks sowie der Verarbeitung und Weitergabe der Input und Output Daten jeder Servicekomponente an die nächste bis zum Testszenarioende
  • Anfertigung von Architekturskizzen zur Berücksichtigung von Datenmengen-grenzen von JMS Queues und der Dokumentierung des Applikationsflusses zwischen den Architekturmodulschichten vor der Implementierung der Business-logik
  • Migration von Features eines Hauptmoduls der alten Architektur (siehe Punkt 3) auf die neue cloudbasierte Mikroservice Architektur. Ersetzung von relationalen Tabellen durch Hazelcast bei Echtzeitdatenentitäten, EJB DAOs zu Hazelcast Spring Repositories. Stammdaten Tabellen weiterhin relational. Ersetzung von EJB 3 Services durch Spring Bean Components und Java 8 Streams. Verschlankung der alten Architektur durch Zusammenführung der Service und Businessschicht und Ersetzung interner JMS Modulgrenzen durch Microservice Modularisierung
  • Schreiben von Datenformatierungskonvertern zwischen den Architekturschichten und Partnerschnittstellen
  • Deployment der Microservice Module der neuen Architektur auf die OpenShift Plattform mittels OpenShift Docker Builder Images
  • Die Integrationstests über das XML Testszenariotool sind unabhängig von der neuen und alten Architektur
  • Erweiterung des Fahrten Moduls der SBB Angular Mobile App der Zugbegleiter. Visuelle Unterscheidung/Anzeigefälle von Plan- und Realankunftszeiten der Züge/Fahrten je Bahnhof mithilfe zusätzlicher Backenddatenfelder
  • Protractor Test für die Anwendungsfälle der Darstellung der Plan- und Real-zeiten
Java 7/8 JEE EJB 3.1 JMS Spring Framework 5 Spring Data Spring Boot 2 OpenJPA Hibernate 5 JSON JaxRS/Jackson XML JaxB Liquibase JUnit 4 Mockito   Oracle 12 DB IBM Web Application Server 8.5 Tomcat (spring-boot)   Hazelcast OpenShift JMS IBM mQueue   Angular 6 Protractor Jasmine Testframework   IntelliJ 2018 Git
SBB
Schweiz
8 Monate
2017-11 - 2018-06

Neuentwicklung eines Inventar Backends

Java 8 Spring Framework 4 Spring Data ...

Softwareentwicklung unter Java Spring, JMS docker, docker-compose

  • Neuentwicklung eines Inventar Backends zur Administration einer Swisscom Netzwerkinfrastruktur und seiner Komponenten.Validierungs- und Verfügbarkeits-prüfungen, Synchronisierungsfunktionen von Netzwerkinfrastruktur Komponenten-entitäten zwischen Swisscom internen Applikationen und Softwaresystemen der Vmware Produktfamilie.
  • Einführnug einer skalierbaren Anwendungsarchitketurdesigns zur Stabilisierung und Erweiterbarkeit des ursprünglichen Inventar Applikationsprototypen. Aufteilung der Inventar Applikation in unabhängige, lose gekoppelte Teile mittels docker images/containern und REST Schnittstellen und Integration mit den Swisscom Applikationen und den VMware Softwaresystemen.

Aufgaben und Tätigkeiten:

  • Redesign, Weiterentwicklung des Datenbankdesigns unter JPA von Vertrags-, Organisations-, Netzwerk Infrastruktur Technikkomponenten-, Netzwerk VMware Technikkomponentenentitäten
  • Einführung von flyway zur stufenweise Erweiterung und Modifizierung des Datenmodells
  • Schreiben von Datenbank DAOs auf Basis von spring-data repositories. Verwendung von Spring-JPAQL Queries und der spring-data Methodennamen-konvention zur Realisierung der Datenbankabfragen
  • Entwicklung und Einführung eines JPA Testdatengenerierungsfranmeworks auf Basis gängiger Designpatterns für das Inventar Backend Datenmodell
  • Schreiben von JMS/RabbitMQ Listenern zur asynchronen Anbindung eines zentralen VMware Backendsystems zur Synchronisierung der Inventar DB Entitäten. Verarbeitung von XML JMS Payload über JaxB
  • Entwicklung von Java Spring Backendservices zur Abbildung der Applikations-logik der Inventar Backendanwendung unter Verwendung der Java APIs für die VMware Umsysteme
  • Entwicklung von Java Spring REST Schnittstellen zur Verfügungstellung der Inventar Backenddaten an die VMware und Swisscom Umsysteme
  • Schreiben von automatisierten jUnit Integrations- und Unit Mockitotests mithilfe der generierten Testdaten für die Java Spring Backendservices
  • Erstellen von docker images/containern verschiedener Inventar Backend-anwendungsteile und Koordinierung über docker-compose
  • Unterstützung bei Integration und Deployment der Inventar Backendanwendung docker container in die "concourse" Continuous Integration Server build jobs
  • Integration der docker container in die Swisscom Netzwerk- und Systemland-schaft über ein proxy docker container mittels varnish und nginx
  • Einführung einer logging correlation für die Zuordnungsbarkeit der synchron und asynchron erhaltenen Daten und Nachrichten der VMware und Swisscom Umsysteme der Inventar Backendanwendung
  • Verwendung der VMware Produktfamilien Softwaresysteme zur Testdaten-erstellung für Anwendungsintegrationstests
    • Cloud Director - Deployment, Automatisierung und Verwaltung von virtueller Infrastrukturresourcen
    • Sphere - Servervirtualisierung in cloud Umgebungen
    • VRA-VRO - vRealize orchestrator/automation Provisionierung und Lifecycle Management von (virtuellen) Netzwerk-, Hardware-, Applikations- und IT Serviceinfrastruktur und Prozessorchestrierung von Services in cloud Umgebungen
Java 8 Spring Framework 4 Spring Data Spring Boot JPA JSON JaxRS/Jackson XML JaxB flyway VMware Java APIs und Softwaresysteme vCloud Director|vSphere|VRA/VRO JUnit 4 Mockito docker docker-compose JMS/RabbitMQ varnish (HTTP reverse proxy) nginx (load balancer reverse proxy) concourse (Continuous Integration) IntelliJ 2017 Git Gradle 4
Swisscom
Schweiz
8 Monate
2017-03 - 2017-10

Entwicklung von Back-End Services

Java 8 Spring Framework 4 Spring Data ...

Softwareentwicklung unter Java Spring, docker, docker-compose, Dojo JS

  • Entwicklung von Back-End Services und Front-End UIs für eine neue Verwaltungs-software für Steuer -Rückerstattung, -Deklaration und -Unterstellung Geschäftsprozessen zur automatisierten Verarbeitung von Eingangsformularen steuerpflichtiger Personen, Firmen und Institutionen in einer verteilten, komplexen Systemlandschaft. Mitarbeit bei der Sicherstellung eines geordneten GoLives.

Aufgaben und Tätigkeiten:

  • Entwicklung von Java Spring Backend Services mit Spring Annotationen (ohne Spring XML Konfiguration) im Steuer -Rückerstattung, -Deklaration und -Unterstellung Projekt (45% Anteil) und im SOA/WS Zentralsystem und Buchung Projekt (10% Anteil)
  • Implementierung der Persistenz mit Spring Data
    • Einfache SQL Queries durch automatisch generierte Spring DAO Implementierungen über die entspr. Spring Data DAO Interfaces
    • Komplexere SQL Queries durch Schreiben von Spring Data QL Statements über die entspr. Spring Data Query Annotation
    • Dynamische SQL Queries über das Spring Data API in den Java Spring Backend Services
  • Entwicklung von REST/JSON Schnittstellen zu den Backend Services für das UI
  • Schreiben von JUnit Mockito und Integration Tests für das Steuer -Rückerstattung, -Deklaration und -Unterstellung Projekt und JUnit Mockito Tests für das SOA/WS Zentralsystem und Buchung Projekt
  • Erstellen von JSON und XML Testdaten für die Formulare und deren Prozessierung im gesamten Verarbeitungsprozess der beiden Softwareprojekte und der angeschlossenen Systeme SAP Buchung und Risikobeurteilung über einen WSO2 ESB. IBM FileNet als Dokumentenverwaltung mit dünner Workflow Schicht beim Dokumenteingang waren weitere Systemlandschaftskomponenten
  • Entwicklung von Dojo UIs für die Bearbeitung der Steuer -Rückerstattung, -Deklaration und –Unterstellung Formulardaten unter Verwendung der REST Schnittstellen (45% Anteil)
  • Definition von Dateneingangsvalidierungsregeln für eine Formulardatenplausi-bilisierung und Einbettung als code ausgelagerte Entscheidungsmatrix über die Camunda DMN (decision matrix notation) im Steuer -Rückerstattung, -Deklara-tion und -Unterstellung Projekt
  • Erstellen eines docker images für die Oracle-XE Datenbank als Microservice des Steuer -Rückerstattung, -Deklaration und -Unterstellung Projekts. Einbindung des docker images in das Maven Projektsetup über docker-compose
Java 8 Spring Framework 4 Spring Data Spring Boot JaxWS JaxRS JUnit 4 Mockito Dojo JS 1.9.6/1.11 docker docker-compose Camunda DMN IntelliJ 2017 Git JIRA BitBucket Maven 3.5 Soap UI 5.3 VMware 12 XML JSON Oracle DB 11g
Bundesamt für Informationstechnik ? Eidgenössisches Finanzdepartement
Schweiz
8 Monate
2016-07 - 2017-02

Beschaffungs- und Auftragsmanagement Geschäftsprozess Webanwendung

BPMN und AngularJS
BPMN und AngularJS

Softwareentwicklung unter JavaEE, BPMN und AngularJS

  • Entwicklung einer für Beschaffungs- und Auftragsmanagement Geschäftsprozess Webanwendung im Bereich Kontoverwaltung, Kontodatenqualitätssicherung und Kundenaufträgen in einer verteilten Systemlandschaft

Aufgaben und Tätigkeiten:

  • Entwicklung und Erweiterung von technischen aus fachlichen BPMN Geschäfts(teil)prozessen
  • Entwicklung von JavaEE BPM und UI Backend Services
  • Entwicklung von AngularJS und TypeScript UIs für die BPM Geschäftsprozesse
  • Schreiben von Camel Routings zum Aufruf der JavaEE Backend Services und UIs in den technischen BPMN Workflows
  • Entwicklung von JUnit Tests für die JavaEE Backend Services
  • Entwicklung von Protractor Unit und Smoke End-2- End Tests für die AngularJS und TypeScript Uis
  • Integration von Umsystemen über JaxWS WebService Mock Schnittstellen
  • Erstellung von XML Mock Daten für verschiedene Anwendungsfälle der Mock WebServices
  • Entwicklung von JaxRS Schnittstellen für den UI Zugriff auf die JavaEE UI Backend Services
  • Analyse von fachlichen Anforderungsdefinitionen in BPMN und Ablaufdiagrammen im Enterprise Architect
  • Erstellung von technischen XSD Schnittstellen auf Basis fachlicher XSD Schnittstellen
Carnot/Sunguard BPMN Infinity Process Platform (IPP) 9.3 AngularJS 1.5 TypeScript 2 nodeJS 6.9 JavaScript Promises Selenium WebDriver Protractor 5 Jasmin 2 Java 8 JEE JaxWS - Apache CXF JaxRS - RestEasy TomcatEE Apache Camel Junit 4 Mockito IntelliJ 2016 Eclipse Mars Git JIRA Bamboo BitBucket Maven 3 Enterprise Architect
PostFinance
Schweiz
1 Jahr 7 Monate
2015-01 - 2016-07

Softwareentwicklung unter Java EE

Entwicklung von Java Softwarekomponenten- und Services für ein zentrales Personalstammdatensystem in einer verteilten SOA Systemlandschaft unter IBM MDM (CBT – Core Banking Transactions)

Aufgaben und Tätigkeiten:

  • Modellierung von IBM MDM Java Komponenten- und Services im RAD Application Developer auf Basis des MDM Datenmodells. Applikationsdomänen: Rechtestammdaten für andere Applikationsdomänen und Adressstammdaten
  • Ausimplementierung der codegenerierten MDM Java Services nach einem applikationsdomänenspezifischen Fachkonzept und Absprache von Änderungen mit dem Fachbereich
  • Integration und Verfügbarmachung der MDM Java Services in die System- landschaft über Web Serivces (JAXWS)
  • Entwicklung von Web Service Datenmapping- und Transformationsmodulen
  • Entwicklung von Integration Tests zur Sicherung der Qualität und Anforderungs- abdeckung des Fachkonzepts
  • Entwicklung von Mockito JUnit Tests von kleineren Subkomponenten der MDM Java Services
  • Entwicklung von JUnit Tests für die Datenmapping- und Transformationsmodule
  • Schreiben eines technischen Konzepts und Entwicklung eines MDM Prototyp- moduls für eine asynchrone, dynamische Massendatenverarbeitung von Adressstammdaten auf IBM MDM - JMS Basis im zentralen Personalstamm- datensystem (dynamisch: Datenmenge nicht vor Laufzeit des Prototypmoduls bekannt)
IBM MDM 10 Weblogic 10.3.6 und 12.1.1 JAXWS JOOQ 2.6 Oracle 11g Mockito JUnit 4 Eclipse 4 Maven 3 Ant SVN
PostFinance
Schweiz
11 Monate
2014-02 - 2014-12

Softwareentwicklung unter Java Spring und ExtJS

Backend und Frontend Java, JavaScript Entwickler bei einem Portfoliomanagement Softwareprodukt im Banken Privatkundenbereich

Aufgaben und Tätigkeiten:

  • Aufsetzen einer SAML SSO Testumgebung bestehend aus
    • OpenAM SSO Server als Identity Provider (IdP)
    • Test Java Webapplikationen als Service Provider (SP) in einem Circle of Trust
  • Konfiguration des IdP Servers und der SP-Webapplikationen zur zentralen SSO Authentifizierung mittels SAML Tokens
  • SAML (Security Association Markup Language) Single-Sign- On (SSO) Einführung in eine ExtJS, Java Spring Framework und BPM basierte Mehrschichten Portfolio- management Anwendung und Integration in die OpenAM IdP SSO Authentifizierungs- umgebung
  • Konfiguration der SAML Token XML Payload Verschlüsselung und Signierung
  • Beratung des Kunden und dessen Projektmitarbeiter und Problemlösungen bei der SAML Integration der Portfoliomanagement Anwendung in eine IBM produktbasierte Systemarchitektur aus WebSeal Reverse Proxies, einem Tivoli Federated Identity Manager (TFIM) und dem "backbase" Portal Server auf WebSphere Basis.
  • Entwicklung eines Prototypmodells für JavaScript basierte BPM Action Komponenten als Ersatz für Java BPM Prozess Action Komponenten und Integration in das Schichtenmodell der Portfoliomanagement Anwendung bestehend aus
    • ExtJS Front End mit AJAX Aufrufen
    • BPM Prozess Schicht
    • Spring Bean Business Logic Service Schicht
    • Spring Bean Hibernate DAO Schicht
  • Evaluierung von JavaScript Dependency Injection (IoC) und Promises als neues Paradigma asynchroner Client-Server Aufrufe für ein späteres ExtJS Versionsupgrade der Portfoliomanagement Anwendung
  • Entwicklung von Portfolioanalyse Charts mit JFreeChart und Erweiterung um dynamische Skalen- und Messwertkoordinaten mit dem Java Graphics2D API
  • Entwicklung neuer und Weiterentwicklung bestehender Spring Backend-, BPM Prozess- sowie ExtJS Frontend Module und Funktionalität für die Portfoliomanagement Anwendung
  • Schreiben eines Portfoliowertberechnungs-Jasper Reports für zukünftige Erträge zinstragender Wertpapiere
  • Schreiben von SCRUM User Stories als Grundlage für die JIRA Issues und die Sprintplanung
Spring Framework 3.1 Spring Security Spring OpenSAML OpenSSO/OpenAM Single-Sign- On Identity Provider (IdP) BPM Prozess Engine (Eigenentwicklung des Portfoliomanagement Softwareproduktanbieters) JFreeChart ExtJS 3 DeftJS JavaScript Dependency Injection DeftJS JavaScript Promises Oracle DB Tomcat Jasper Reports JSON XML Mozilla Rhino JavaScript Engine Maven SVN Hudson Eclipse JIRA
Bethmann Bank
6 Monate
2013-07 - 2013-12

Softwareentwicklung unter Java EE

Entwicklung von Business Services mit JavaEE im Bereich von industriellen Fertigungsprozessen von Leiterplatten, elektrotechnischen Schaltkreisen, deren Bauteilen, Produktionsmaschinen und Fertigungsstrassen. Methode: 10 Personen Scrum Team mit JIRA Agile

Aufgaben und Tätigkeiten:

Erarbeitung und Einführung von neuen Technologien für das Team

  • Sonar und JaCoCo als Erweiterung einer Jenkins Continuous Integration Umgebung
  • und Einbindung in Maven Java Projekte
  • Arquillian als Application Server und EJB Integrationstest Framework
    • Entwickeln von Mavenprojektvorlagen verschiedener Komplexitätsstufen.
    • Vom einfachen EJB Modul bis hin zur EAR Anwendung mit mehreren EJB Modulen,
    • WebService und JCA Adapter Modulen, bzw. Application Server Modul-
    • Dependencies
    • Einbeziehung mehrerer Data Sources und aller Arten von JNDI Resourcen
    • und Berücksichtigung von XA Datenbanktransaktionen in Arquillian Tests
    • Betrieb dieser Mavenprojektvorlagen in den Application Servern WebSphere
    • und JBoss
    • Verfassen von Dokumentationen und Vorträgen für das Team

Entwicklung von Business Services mit Java EE 6: EJB, CDI, JPA und WebServices

  • Entwicklung von Geschäftslogik Bausteinen für eine Mehr-Schichtenarchitektur:
  • Datenbank – Business Logik – Integration mit Web Services – Web GUI
  • Anbindung mehrerer Datenbanken in die EJB3 Geschäftslogik Bausteine über XA
  • Transaktionen
  • Schreiben von Testfällen für jede Schicht, außer der Web GUI Schicht, unter
  • Verwendung der oben genannten Testframeworks als Funktionsnachweis und
  • Abnahmekriterium einer „Definition of Done“
  • Sicherung von Codequalität und des Einhaltens von Dokumen-tationsrichtlinien
  • mittels Sonar, JaCoCo, Jenkins und Checkstyle
  • Migration von EJB Business Service Applikationen von WebSphere 8.5 nach JBoss 7

Integration eines Legacy Systems für industrielle Fertigung (MES - Manufacturing Execution System) in JBoss7

  • Konfiguration von JBoss und eines MES Java Client APIs
  • Bewältigung technischer Herausforderungen in deutlich weniger Zeit als erwartet.
  • Herausforderungenen waren:
  • Java Security Aspekte, konkurrierende Logging Frameworks,
  • Debugging ohne Quelltext
  • Durchführen von Versionsupdates des MES Client APIs im JBoss und Sicherstellen
  • der Kompatibilität der entwickelten Business Services

Erstellen, Aufbereiten und Nutzung von Testdaten

  • Transformation von XML, CSV und Excel Datenquellen in (andere) XML Strukturen u.a. mit Groovy Skripten und XML APIs
  • Integrationstests mit SoapUI und Lasttests mit LoadUI mithilfe der transformierten Testdaten
Java EE6 EJB3 CDI JTA JTS DeltaSpike JPA/EclipseLink SOAP WebServices WebSphere 8.5 JBoss 7 Maven CDI-Unit DB-Unit jUnit Arquillian Sonar JaCoCo Jenkins Checkstyle SoapUI LoadUI Groovy XML GIT Stash SourceTree
Heidenhain
1 Jahr 8 Monate
2011-11 - 2013-06

Softwareentwicklung unter Java EE und ExtJS

Entwicklung einer Administrationsanwendung für ITIL Configuration-, IT-Security-und Compliance Management. Überführung eines monolitischen Prototyps in eine modulare Anwendungsarchitektur

Funktionsumfang der Anwendung:

ITIL Configuration Management

  • Administration, d.h. Suche, Neuanlage, Bearbeitung und Löschen von Configuration Items (CIs)
  • Abbilden der räumlichen sowie Hardware und Software Infrastruktur im Bayer Konzern auf CI Strukturen
  • Verknüpfung von CIs zur Abbildung von Gesamtinfrastrukturhierarchien von Bayer- Standorten über die Hardware- und Systemarchitektur bis zur Anwendung
  • Zuordnung und Konfiguration von Kontakten auf Benutzer- und Gruppenebene aufgrund eines Rollen- und Berechtigungskonzepts

IT-Security Management

  • Konfiguration eines Bayer-internen IT Security Konzepts für CIs
  • Technische Konfiguration IT-Security- Massnahmen (Controls) für CIs nach IT- Grundschutz anhand von IT-Security- Gruppen und -Vorlagen

Compliance Management

  • Compliance-Erklärung des CI-Eigentümers zu allen einzelnen Controls am CI
  • Wirtschaftlichkeitsbeurteilungen im Falle eines kostenkritischen Controls am CI
  • Zugriff auf den originalen textlichen Inhalt jedes Controls
Java EE5 JPA/Hibernate JDBC ExtJS 3.4 JBoss 5.1 Oracle DB Microsoft Active Directory LDAP SOAP und REST Web Services Integration von PL/SQL Funktionen und Prozeduren Eclipse SVN
Bayer
11 Monate
2010-11 - 2011-09

Softwareentwicklung unter Java und SOA

Entwicklung von Softwarebausteinen als Teil von Geschäftsfällen für die Provi

Aufgaben und Tätigkeiten:

  • Entwicklung serverseitiger Java-Komponenten
  • Entwicklung von SOA Prozessfragmenten
  • Orchestrierung der Java-Services in Prozessfragmente
  • Definition umfangreicher Testfälle für Java-Services und Prozessfragmente vor der Implementierung (TDD)
  • Implementierung der Testfälle als Nachweis für das Funktionieren der Java-Services und Prozessfragmente
  • Simulation von Services, Prozessfragmenten und Datenbanken über Mocks bei der Implementierung der Testfälle

Systemlandschaft:

  • Generierung von Java DTOs aus XML Schemata via Castor
  • Nutzung der Java DTOs durch Java Business Logik Service Remote Proxys und Umwandlung der Input und Output Objektdatenstrukturen in XML Messages
  • Aufruf mehrerer Java Services innerhalb von SOA Prozessen
  • Aufruf mehrerer SOA Prozesse innerhalb von SOA Prozessketten
  • Zusammenfassung von SOA Prozessketten zu Geschäftsfällen
  • XML Input und Output Datenstrukturen in JMS Text Messages über WebSphere MQ als technische Basis für die Anbindung und prozess- orientierte Kapselung von Umsystemen
  • Datenbankzugriffslogik als transparentes JDBC Servicemodul
  • Umsetzung von technischen Konzepten: Verstehen von UML Activity Diagrammen zur Implementierung der Java Business Logik Services und SOA Prozesse
Java UML SOA Process Engine WebSphere WebSphere MQ JMS basierter ESB Eclipse SVN ANT Hudson
Dell Services/Telekom
2 Monate
2010-10 - 2010-11

Softwareentwicklung unter Java EE

Entwicklungsunterstützung bei der letzten SCRUM-Iterartion vor Projektende für eine Retail Werkbank-Anwendung für das Management von Zins- und Flow- Zertifikat-Finanzprodukten

Aufgaben und Tätigkeiten:

  • Entwicklung einer UI Komponente für das Zusammen-setzen von Textbausteinen für die PDF Generierung von Dokumenten mit den Eigenschaften eines Zertifikat-Finanzprodukts
  • Erweiterung des Datenbankmodells sowie Entwicklung und Erweiterung von Seam Backend Services
Java EE5 Seam 2.2 JPA/Hibernate IceFaces JBoss 5.1 ANT
DZ Bank
5 Monate
2010-05 - 2010-09

Softwareentwicklung unter Java EE und ExtJS

Design und Entwicklung einer Prognosebörse und eines automatischen Börsenhandelssystems auf Basis der Anwendungsplattform (s.u.)

 Aufgaben und Tätigkeiten:

  • UML Use Case Diagramme für Anwenderszenarien
  • UML Klassendiagramme zur Darstellung der MVC basierten GUI Architektur und verwendeter gängiger Desgin Patterns: Factory, Mediator
  • GUI Entwicklung zur Umsetzung der Use Cases mit UI Tabellen, Charts und Eingabeelementen unter Verwen-dung von UI Layout Managern zur Platzaufteilung der Maskeninhalte
  • Implementierung des Börsenhandelssystems via EJB3
Java EE6 Rest WS JPA/Hibernate ExtJS 4 Glassfish Sparx Enterprise Architect NetBeans Maven ANT
ENPASOS GmbH
1 Monat
2010-04 - 2010-04

Softwareentwicklung unter Java EE und ExtJS

Java EE5 Seam 2.2 ExtJS 3.4 ...

Design und Entwicklung eines Web 2.0 Fragebogens auf Basis der Anwendungsplattform (s.u.) zum Thema Einsatz von Open Source Software in Unternehmen

Aufgaben und Tätigkeiten:

  • GUI Entwicklung eines Wizards mit Fragen und Schiebereglern als Anwortmöglichkeiten unter Verwen-dung von UI Layout Managern zur Platzaufteilung der Maskeninhalte
  • Entwicklung eigener kleiner ExtJS UI Komponenten zur Verbesserung der User Experience
  • Seam Business Logic Services zur Speicherung der Antwortdaten jedes Umfrageteilnehmers unter Anbindung der zuvor entwickelten Anwendungsplattform
  • Modul zur PDF Generierung eines mit den gegebenen Antworten des Fragebogens
Java EE5 Seam 2.2 ExtJS 3.4 iReport/JasperReports Glassfish NetBeans Maven ANT
ENPASOS GmbH, Uni Mainz
Mainz
7 Monate
2009-09 - 2010-03

Softwareentwicklung unter Java EE und ExtJS

Entwicklung einer Anwendungsplattform zur Verwaltung von Daten-Collections

Aufgaben und Tätigkeiten:

  • Entwicklung von UI Masken zum Lesen und Bearbeiten von Daten- Collections
  • Navigation durch die Baumstruktur einer Daten-Collection mit Drag And Drop Operationen und Backend Plausibilitätsprüfung
  • Entwicklung von Seam Services für die Datenbank-operationen der Daten- Collection Inhalte über das GUI
  • Entwicklung einer SQL ähnlichen Domain Specific Language (DSL) zum Abfragen von Daten-Collection Inhalten
Java EE5 JPA/Hibernate Seam 2.2 ExtJS 3.4 Glassfish ANTLR JAXB Quartz Maven Apache Continuum
ENPASOS GmbH, Raab Photonik GmbH, Uni Potsdam gefördert vom BMWi
2 Jahre 10 Monate
2006-11 - 2009-08

Implementierung von technischen PI/XI Integrationsprozessen

SAP XI/PI Integration Repository und Directory NWDI Eclipse ...

Softwareentwicklung unter SAP XI/PI und SAP Java EE

  • Implementierung von technischen PI/XI Integrationsprozessen (BPEL) zur turnusmäßigen Verarbeitung von Mitarbeiter Timesheet Daten bei Kunden
  • Anbindung von internen SAP und externen Third Party Systemen über ABAP Proxies und Web Services
  • Erweiterung des SAP XI Mail Adapters zur Verarbeitung von Dateiattachments mit Timesheet Daten mit einer EJB 2.1 Session Bean
  • Entwicklung einer SAP Java Web Dynpro Anwendung zum Monitoring von Sende-, Benachrichtigungs- und Verabeitungsstatus über die Timesheet Daten aller Kunden. Anwendung der in der Diplomarbeit erworbenen Java Web Dynpro Kompetenzen
  • SAP Portal Java iViews zur technischen Administration von XI/PI Integrationsprozessszenarien (Start, Stop, Status)
  • Sicherstellen eines reibungslosen Betriebsablaufs der PI/XI Integrationsprozesse mit den angebundenen Systemen
  • Untersützung der Fachabteilungen
SAP XI/PI Integration Repository und Directory NWDI Eclipse ABAP (OO) Java Web Dynpro SAP Portal Java iViews J2EE 1.4 EJB 2.1 Java Proxy Runtime (JPR) ABAP Proxy ABAP)
Randstad Deutschland

Aus- und Weiterbildung

Aus- und Weiterbildung

2005 ? 2006:

Institution: Fachhochschule Furtwangen

Ausbildung: Fachbereich: Allgemeine Informatik

Abschluss: Master of Science (M.Sc.)

Master Thesis: Gerne auf Anfrage

2000 ? 2005:

Institution: Fachhochschule Furtwangen      

Ausbildung: Fachbereich: Wirtschaftsinformatik

Abschluss: Diplom-Informatiker (FH)

Diplomarbeit: Gerne auf Anfrage

1999:

Abschluss: Abitur

Zertifikate:

  • "Sun Certified Programmer" Java SE 6
  • "Advanced English for Professionals" (Stufe C1 des europäischen Referenzrahmens)

Kompetenzen

Kompetenzen

Produkte / Standards / Erfahrungen / Methoden

Application Server:

  • JBoss
  • Glassfish
  • Tomcat

Java Frameworks und Standards:

  • JSF
  • IceFaces
  • Struts
  • Spring
  • JAX-WS
  • JAX-RS
  • JPA
  • Hibernate
  • OpenJPA
  • BPM(N)
  • SAML

UML:

  • Sparx Enterprise Architect
  • Together

Code-Management:

  • SVN
  • GIT

Build-Tools:

  • ANT
  • Maven
  • Hudson / Jenkins

IDE:

  • Eclipse
  • NetBeans
  • SQL Developer

Betriebssysteme

Debian Linux
Expertenkenntnisse
Solaris
gute Kenntnisse
Windows
Expertenkenntnisse

Programmiersprachen

C/C++
gute Kenntnisse
CSS
sehr gute Kenntnisse
Groovy
sehr gute Kenntnisse
HTML
sehr gute Kenntnisse
Java
Expertenkenntnisse
JavaScript/AngularJS
Expertenkenntnisse
JavaScript/Dojo
sehr gute Kenntnisse
JavaScript/ExtJS
Expertenkenntnisse
Node.JS
gute Kenntnisse
Python
Grundkenntnisse
Scala
Grundkenntnisse

Datenbanken

MS SQL Server
gute Kenntnisse
MySQL
gute Kenntnisse
NoSQL
mongodb, redis, Grundkenntnisse
Oracle
sehr gute Kenntnisse
PostgreSQL
sehr gute Kenntnisse

Branchen

Branchen

  • Chemie, Pharma
  • Bank
  • Personalwesen
  • IT-Beratung
  • Telekommunikation

Vertrauen Sie auf GULP

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das GULP Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.