Schlagworte
Skills
- Software Design und Architektur
- Software-Entwicklung (Java/JEE/Spring)
- iSAQB Certified Professional for Software Architecture – Foundation Level (CPSA-F)
- SAFe® 4 Practitioner
- SCJP Sun Certified Programmer for Java 6
Programmierung
- Architektur
- JEE / Java Entwicklung
- Software Engineering
- Technische Konzeption
- SCRUM
- Scaled Agile Framework (SAFe)
- Kanban
- VModell XT
- Wasserfallmodell (Royce/Boehm)
- Dienstleistung: Informationstechnologie
- Finanzen
- Information & Medien: Informationstechn. & Internet; Medien und Unterhaltung
- Telekommunikation
- Öffentlicher Sektor: Transport
Projekthistorie
Infrastrukturkomponente deren Fokus auf dem Schutz von Webanwendungen und Services liegt.
Schwerpunkte sind u.a. die Themen:
• Authentisierung
• Autorisierung
Hierzu kommen verschiedene Standards wie OAuth2, OpenId Connect und SAML zum Einsatz
Vorgehensmodell: Kanban
Übernommene Rollen
• Senior Software Developer
Eigene Tätigkeiten
• Konzeption, Erweiterung und Umsetzung der Schnittstellen (REST) inkl. Authentisierung und Autorisierung
• Anbindung an einen RabbitMQ Broker (AMQP Protokoll)
• Migration bestehender Anwendungen nach Kubernetes (Docker, Helm, Kubernetes)
• Datenbankentwicklung (JPA, SQL, Oracle DB)
• Kontinuierliche Verbesserung der Testabdeckung des bestehenden Systems (JUnit, Mockito, Selenium, WireMock)
• Dokumentation der Ergebnisse (Confluence)
Technologien & Tools
Java 11, Spring 5, Spring Boot 2, Kubernetes, Docker, Helm, RabbitMQ/AMQP, OAuth 2, OpenID Connect, JWT, SAML, Flyway DB Migration, WireMock, Selenium, Junit 5, Mockito
Projektumfeld
Die RIS Communicator App wird von ca. 30.000 Anwendern genutzt, ist in jedem Personenzug der Deutschen Bahn an Bord und versorgt die Mitarbeiter mit Reisendeninformation und erleichtert betriebliche Prozesse.
Ziel des Projektes ist es weitere fachliche Funktionen bereitzustellen. Hierzu muss das Backend (Microservice Architektur) kontinuierlich um neue Services erweitert werden.
Diese müssen unter anderem den folgenden Anforderungen genügen:
- Skalierbarkeit
- Performance
- Sicherheit
- Zukunftsfähigkeit
Vorgehensmodell: SCRUM/Kanban
Eigene Tätigkeiten
Technologien & Tools Spring Boot 2, Spring 5, Spring Security OAuth2, Java 8, JSF 2, JoinFaces, Docker, Kubernetes, Ingress, Rancher 2, MariaDB, Mysql, |
Projektumfeld
Ziel: Die „Onlinebestellstrecke“ bietet dem Kunden schon heute die Annehmlichkeit, jederzeit und unabhängig von der Bankfiliale, von Zuhause einen Kredit zu beantragen.
Das Projekt „Omnikanalekundenreise“ möchte diesen zukunftsfähigen Vertriebskanal um zwei zusätzliche Features erweitern, die es sowohl dem Kunden, als auch dem Bankberater einfacher machen sollen, zwischen den Kanälen „online“ und „persönlich“ zu wechseln.
Vorgehensmodell: SCRUM
Eigene Tätigkeiten
- Implementierung fachlicher Features
- Konzeption, Erweiterung und Umsetzung der Schnittstellen (inkl. Schnittstellenbeschreibung)
- Erweiterung der GUI (JSF, AngularJS)
- Datenbankanpassungen (JDBC, JPA)
- Verbesserung der Testabdeckung des bestehenden Systems (JUnit, Mockito)
- Dokumentation der Ergebnisse (Confluence)
Technologien & Tools
JEE 6, JSF, AngularJS 1.6, NodeJS 6, Chai 4, Karma Bootstrap 4.1, HTML5, Swagger, Apache JMeter, Matomo, PrimeFaces, EJB 3, JPA, JMS, SOAP/Rest WebServices, XSD, XML, Ivy, Ant, JFrog Artifactory, Mockito, Jira, Confluence, SVN, Oracle Weblogic Application Server 12, Oracle 12 DB, HTML, CSS, SonarQube
Projektumfeld
Ziel: Erweiterung des Produktes zur Innovativen Objektfinanzierung (Fachlich und Technisch) bis 750.000€.
Durchführung eines technischen Refactorings, um die Zukunftsfähigkeit der Anwendung zu gewährleisten.
Vorgehensmodell: SCRUM
Eigene Tätigkeiten
- Implementierung von Berechnungsformeln und Algorithmen für die Objektfinanzierung und Leasinggeschäfte
- Erweiterung der GUI (JSF)
- Datenbankanpassungen (JDBC, JPA)
- Verbesserung der Testabdeckung des bestehenden Systems (JUnit, Mockito)
- Dokumentation der Ergebnisse (Confluence)
- Planung und Durchführung eines größeren Refactorings
Technologien & Tools
JEE 6, JSF, JavaScript, RichFaces, EJB 2 & 3, JPA, JMS, SOAP WebServices, XSD, XML, Ivy, Ant, JFrog Artifactory, JUnit, Mockito, Jira, Confluence, SVN, Oracle Weblogic Application Server 12, Oracle 12 DB, HTML, CSS, SonarQube, Jenkins
Projektumfeld
Ziel: Technische und fachliche Entwicklung eines Systems zur Anbindung eines Kapazitäts-Buchungs-Systems
Als Projektvorgehensmodell wurde SCRUM und SAFe (Scaled Agile Framework) erfolgreich eingesetzt und die Entwicklung der fachlichen Features erfolgte mittels Test-Driven-Development. Um eine sehr hohe Code-Qualität zu erreichen und diese über den gesamten Entwicklungszyklus sicherstellen zu können, wurde eine Continuos-Integration-Strategie (CI) eingesetzt. Diese Strategie bestand u.a. in der Nutzung eines Jenkins-CI-Servers. Die fachlichen Prozesse wurden mittels der Camunda BPMN modelliert. Lieferartefakte wurden per Docker gepackt und ausgeliefert um eine gleichbleibende Qualität der Lieferartefakte gewährleisten zu können. Um eine hohe Skalierbarkeit der verwendeten Umgebungen zu gewährleisten wurden die verschiedenen Umgebungen durch Einsatz von Amazon AWS virtualisiert (Cloud).
Eigene Tätigkeiten
- Definition der fachlichen Anforderungen (Use Case Diagramme)
- Architekturdokumentation (Enterprise Architect)
- Definition und Anpassung der Prozessmodelle (BPMN Modelle, Camunda)
- Implementierung der BPMN-Prozesse (Java 8, Camunda)
- Test der entwickelten Features in UnitTests (Mockito) und Integration Tests (Arquillian)
- Analyse der fachlichen Anforderungen
- Entwicklung der fachlichen Anforderungen im SCRUM-Team (SAFe Kontext)
- Dokumentation der entwickelten fachlichen Features und weiterer Projektergebnisse (Confluence, Jira)
- Entwicklung von Docker Containern für die Anwendung und Testkomponenten
- Erarbeitung und Umsetzung einer Datenbankmigrationsstrategie (Flyway DB Migration)
Technologien & Tools
Java 8, JEE 6, Camunda BPMN, Docker, AWS Amazon Cloud, Jenkins 2, Mockito, Arquillian, JDBC, JPA, H2 DB, Oracle 12, Git, Confluence, Jira, SCRUM, SAFe (Scaled Agile Framework), Eclipse IDE, JBoss EAP 6, Maven, Suse Linux Enterprise Server 12, Flyway DB MigrationProjektumfeld
Ziel: Fachliche und technische Weiterentwicklung des vorhandenen Systems für die Kommunikation einzelner Systeme im Zug.
Das bestehende System wurde kontinuierlich fachlich und technisch weiterentwickelt.
Eigene Tätigkeiten
Technologien & Tools OSGi R4.2 (Equinox), Apache Karaf, Suse Linux Enterprise Server 11/12, Java 6, 7 und 8, Spring 3, Apache Tomcat 7 und 8 Applikationsserver, UML 2.0, JUnit, Mockito, Powermock, JDBC, JPA, MySQL, Oracle 11/12, Eclipse IDE, Jira, TortoiseSVN, Enterprise Architect, Hudson |
Projektumfeld
Ziel: Durchführung eines technischen Releases um die fachliche Weiterentwicklung zu ermöglichen.
Das bestehende System eignete sich nicht für eine effiziente Weiterentwicklung mit einem großen Entwicklerteam, das auf viele kleine SCRUM-Teams verteilt werden sollte. Im Rahmen des Projekts wurde deshalb zunächst ein technisches Release durchgeführt, um die Komponenten entsprechend der fachlichen Schwerpunkte zu schneiden. Vor dem Start der fachlichen Entwicklung wurde ein Last- und PerformanceTest (LuP) durchgeführt. Dieser hatte zum Ziel die Tragfähigkeit des bestehenden Systems bezüglich der fachlichen Anforderungen zu untersuchen. Anschließend konnten die vom Kunden definierten Anforderungen erfolgreich in mehreren SCRUM-Teams parallel durchgeführt werden. Als Projektvorgehensmodell wurde SCRUM erfolgreich eingesetzt und die Entwicklung der fachlichen Features erfolgte mittels Test-Driven-Development. Um eine sehr hohe Code-Qualität zu erreichen und diese über den gesamten Entwicklungszyklus sicherstellen zu können, wurde eine Continuos-Integration-Strategie (CI) eingesetzt. Diese Strategie bestand u.a. in der Nutzung eines Jenkins-CI-Servers und von Werkzeugen für teamübergreifende Code Reviews (Atlassian FishEye und Crucible).
Eigene Tätigkeiten Technisches Release:
Fachliche Releases:
Technologien & Tools JBoss EAP 5/6 Applikationsserver, Apache Tomcat 6/7 Applikationsserver, JavaEE EJB 2.1/EJB 3, Spring 3, UML 2.0, JUnit, JMockit, JDBC, Oracle 11, Eclipse IDE, Confluence, Jira, SCRUM, TortoiseSVN, Git, Enterprise Architect, Java Swing, MVC, Jenkins, JPA, FishEye, Crucible |
Reisebereitschaft
Räumlich flexibel
Remote gerne auch National/International