Fachlicher Schwerpunkt dieses Freiberuflers

Software Architect und Performance Engineer im Enterprise Java Umfeld

verfügbar ab
01.01.2021
verfügbar zu
100 %
davon vor Ort
100 %
PLZ-Gebiet, Land

D8

Städte
München
50 km
Kontaktwunsch

Ich möchte ausschließlich für Projekte in diesen Einsatzorten kontaktiert werden.

Position

Projekte

08/2018 - Heute

2 Jahre 2 Monate

Neuentwicklung einer geschäftskritischen Komponente

Projektinhalte

Neuentwicklung einer geschäftskritischen Komponente:
Ein Loyalty-Plattform-Anbieter will eine Kernkomponente aus deren monolithischen Anwendungen herausziehen damit diese einfacher zu erweitern ist und in verschiedene Märkte wiederverwendet werden kann. Die Komponente soll Bonusse anhand vom Kundenverhalten (z.B. Einkauf) berechnen und ist somit Teil des Kerngeschäfts. Aus diesem Grund muss sie mit aktuellen Technologien hoch-verfügbar, horizontal-skalierbar und erweiterbar entwickelt werden. Die Komponente wird unter anderem von Kassensystemen aufgerufen und muss hohe Lasten mit konsistent niedrigen Antwortzeiten ermöglichen.

Aufgaben:

Architektur, Design und Implementierung von Microservices auf Basis von Spring-Boot 2. Anbindung in den vorhandenen Systemen (JEE Anwendungen in WebLogic). Automatisierung der Akzeptanztests pro Microservice, Automatisierung der E2E-Tests. Dockerizierung von vorhandenen und neuen Softwarekomponenten um eine geplante Migration nach OpenShift zu ermöglichen. Einführung vom verteilten Tracing. Design und Coaching bei der Nutzung von jBehave, Selenium, Spring und Docker für Akzeptanztests.

Kenntnisse

Spring Boot 2

Cassandra

Kafka

Apache Avro

OpenTracing (Jaeger)

Resilience4j

Elastic

Docker

OpenShift

jBehave

CDC (PACT)

Jenkins

01/2018 - 07/2018

7 Monate

Migration eines Shops

Projektinhalte

Migration eines Shops zu Microservices und Einführung von SSO:
Ein großer Offine-Wiederverkäufer von Agrar- und Rohstoff-Produkten will das Geschäft digitalisieren und den Umsatz über das Online-Kanal steigern. Um den Kunden ein besseres Nutzungserlebnis anzubieten, werden alle Online-Shops mit einer Single-Sign-On Lösung integriert. Zugleich wird eine teilweise eigene Online Plattform auf Basis von Microservices agil entwickelt, die nach und nach die einzelnen Online-Shops ersetzen soll.

Aufgaben:

Architektur und Design der Single-Sign-On Lösung auf Basis von Keycloak. Erweiterung von Keycloak, damit eine transparente Migration von Kundenlogins ermöglicht wird. Aufsetzen einer ausfallsicheren Umgebung auf Basis von Docker. Entwicklung von Microservices. Erweiterung von Hybris, um einen fießenden Übergang von der alten Hybris-basierten Plattform zu Microservices zu gewährleisten. Dockerizierung von vorhandenen Softwarekomponenten. Design und Coaching bei der Nutzung von Cucumber und Selenium für Akzeptanztests.

Kenntnisse

Spring Boot

Docker

Keycloak

OAuth2 - OpenID Connect

Hybris

Cucumber

Selenium

Kubernetes

05/2016 - 12/2017

1 Jahr 8 Monate

Continuous Performance Testing

Projektinhalte

Continuous Performance Testing:
Ein Loyalty-Plattform-Anbieter will schneller neue Features ausliefern. Dazu ist notwendig das Delivery-Prozess zu automatisieren und die manuellen Schritten zu minimieren. Ein Teil davon ist die Entscheidung, ob die ausgelieferte Software den Responsezeit- und Durchsatzanforderungen erfüllt. Um das zu ermöglichen, werden die Performancetests und Auswertung automatisiert und in der Delivery-Pipeline integriert.

Aufgaben:

Umsetzung bzw. Migration von Lasttreibern nach Scala. Automatisierung der Auswertungen. Entwicklung einer GUI zur Darstellung von den Ergebnissen. Analyse von identifzierten Performanceproblemen und Beratung von Entwicklungsteams insbesondere bei der Umsetzung von asynchroner Verarbeitung mit Kafka.

Kenntnisse

Scala

Redis

Elastic Stack

Angular

D3

Jenkins

Kafka

WebLogic 12

Oracle DB 11g

07/2015 - 04/2016

10 Monate

Kundenmigration im Telekommunikationsbereich

Rolle
Software-Architekt
Einsatzort
München
Projektinhalte

Kundenmigration im Telekommunikationsbereich:
Nach dem Zusammenschluss zweier Telekommunikationsunternehmen werden die IT-Systeme vereinheitlicht und Kunden im Hintergrund migriert. Durch die erhöhte Kundenanzahl müssen die existierende Systeme erweitert werden um die damit verbundene Lasterhöhung bewältigen zu können.

Aufgaben:

Software-Design und Entwicklung, Schnittstellenabsprachen und
-Spezifkation, Refactoring um horizontale Skalierung zu ermöglichen, Aktualisierung vom Technologiestack und Modularisierung von den Anwendungen, Beratung zu Performance-relevanten Fragestellungen und Technologieeinsatz, Aufsetzen von Continuous Integration und Agile Softwareentwicklung

Kenntnisse

Software-Design

Scrum

Performanceoptimierung

Java 8

Enterprise JavaBeans

Web Services

JAX-WS

JPA

JAXB

Produkte

Oracle 11g DB

WebLogic Server 12c

Jenkins

GIT

IntelliJ IDEA

Eclipse

Oracle SQL Developer

Altova XMLSpy

09/2013 - 07/2015

1 Jahr 11 Monate

Performance-Optimierung

Rolle
Performance-Engineer
Einsatzort
München
Projektinhalte

Performance-Optimierung des gesamten Softwarestacks:
Um neue Märkte weltweit zu erreichen, entwickelt der erfolgreichste deutsche Loyalty-Plattform-Anbieter sein Kernprodukt von Grund auf neu. Kontinuierliche Performance-Analyse und -Optimierung werden vom Projektanfang an aufgesetzt und als einen erfolgskritischen Faktor angesehen. Die größte Herausforderung besteht darin, sich rasch in komplexen Systemen und Technologien zurechtzufnden, um Bottlenecks aufzudecken und aufzulösen.

Aufgaben:

Aufdeckung und Analyse von Performance-Bottlenecks über den gesamten Softwarestack. Durchführung von Code-Reviews von kritischen Stellen. Zusammenarbeit mit den verantwortlichen Scrum-Teams, um effzientere Lösungen zu fnden. Einführung von real-time Performance-Monitoring und enge Zusammenarbeit mit dem Betrieb und den Architekten. Profling und Analyse von produktiven Systemen mit Java-Bordmitteln und Dynatrace

Kenntnisse

dynatrace

WebLogic Server

Oracle DB

python

Jython

Oracle DB

Oracle NoSQL

Redis

JEE

spring-batch

spring-framework

JPA

Hibernate

Grinder

Scala

akka

Graphite

ElasticSearch

Logstash

Kibana

D3.js

08/2011 - 07/2012

1 Jahr

Performance Architekt für ein Joint-Venture

Rolle
Performance-Engineer
Einsatzort
Frankfurt am Main
Projektinhalte

Performance Architekt für ein Joint-Venture:
Ein Joint-Venture will eine neue Kartenlösung ins Internet bringen und dabei innovative Ansätze in Sachen Usability, Routing, Search und Kartenqualität bieten. Als mit kritischster Punkt wird dabei die Performance für die Systemlandschaft gesehen. Im Rahmen des Projekts werden Tests aufgesetzt, die Last- und Performance auf ein global-verteiltes System durchführen. Die besondere Herausforderung liegt dabei in der Steuerung der verschiedenen Dienstleister, der Koordination und Bereitstellung von Testumgebungen und Testfällen und der hohen Performance Anforderungen an die Systemlandschaft.

Aufgaben:

Performance Architecture, Testing, Tuning.

Kenntnisse

JMeter

strace

Linux Systemmonitoring

haproxy

rsyslog

NFS

KVM

Java

07/2010 - 06/2011

1 Jahr

Implementierung eines Systems

Rolle
Software-Architekt
Einsatzort
München
Projektinhalte

Implementierung eines Systems für die Konfiguration von Baukränen:

Ein Maschinenhersteller verwaltet die ASCII-Konfigurationsdaten für seine Baukräne im Dateisystem. Da aufgrund der Vielzahl von Aufbau-Konfigurationen eines Krans die Komplexität in der Verwaltung der Daten zu hoch ist, hat sich der Kunde entschlossen, eine Systemlösung dafür entwickeln zu lassen. Diese besteht aus einem Eclipse-Frontend mit Business-Modulen, einem grafischen Editor und persistiert die Daten in einer zentralen Datenbank. Die Herausforderung liegt dabei in einem sicherheitsgerichteten Umfeld und der Integration mit bestehenden Systemen.

Aufgaben:

Architektur, Implementierung, Scrum-Coaching, Anforderungsanalyse

Kenntnisse

Java

Eclipse RCP

spring-framework

maven

GIT

Bamboo

JPA2

EclipseLink

Sonar

MS SQL Server

Lucene

03/2010 - 06/2010

4 Monate

Portierung von Tibco-Workflows

Rolle
Software-Entwickler
Einsatzort
München
Projektinhalte

Portierung von Tibco-Workfows nach Java EE/Oracle Service Bus:
Um Lizenz- und Supportkosten zu reduzieren, hat sich ein Telco-Unternehmen entschlossen, die existierende Tibco EAI-Lösung durch eine Neuimplementierung auf Basis von Java EE und Oracle Service Bus abzulösen.

Aufgaben:

Design und Implementierung von nicht-persistenten Workfows mit Oracle Service Bus. Performance-Testing und Optimierung. Schulung und technische Leitung eines Outsourcing-Teams.

Kenntnisse

Oracle Service Bus

WebLogic Server

XQuery

JMS

WebServices

Rational Rose

Hudson

10/2009 - 04/2010

7 Monate

Architektur und Design

Rolle
Software-Architekt
Einsatzort
München
Projektinhalte

Architektur und Design einer Integrationsplattform im Energiebereich:
Im Rahmen eines SmartMetering Projektes soll ein IT-Unternehmen im Energiebereich für ein deutsches Systemhaus eine Integrationsplattform entwickeln. Diese ermöglicht den Energieversorgern Zugriff auf ihre installierten Zähler (Gas, Wasser, Strom), deren Installationsprozesse und deren Fernauslesung. Besonderes Merkmal ist die geforderte Skalierbarkeit der Integrationsarchitektur.

Aufgaben:

Konzeption der Architektur und Entwickler-Coaching für die Bereiche WebLogic, Spring-Integration, JMS, Web Services. Performancetesting und -Optimierung.

Kenntnisse

spring-framework

spring-integration

WebLogic Server

JMS

WebServices

maven

hudson

sonar

02/2009 - 07/2009

6 Monate

Festnetznummer-Migration

Rolle
Lead Software-Architekt
Einsatzort
München
Projektinhalte

Nach der Fusion eines Telco-Unternehmens soll zur Kostenreduktion und zur Nutzung von Synergieeffekten die Festnetznummern-Verwaltung von einem externen Anbieter in das neue Unternehmen migriert werden. In Deutschland wurde bis zu diesem Zeitpunkt keine Massenmigration von ganzen Rufnummernblöcken durchgeführt.

Aufgaben:

Technische Leitung eines gemischten On- und Offshore-Teams. Durchführung der Anforderungsanalyse und Design der notwendigen Änderungen von der bestehenden EAI-Plattform und angeschlossene Java EE-Anwendungen.

Kenntnisse

Rational Rose

sonar

jms

web services

tibco business-works

weblogic server

hudson

maven

j2ee

07/2008 - 03/2009

9 Monate

Zeiterfassungssystem

Rolle
Software-Entwickler
Einsatzort
München
Projektinhalte

Ein IT-Dienstleistungsunternehmen hat sich entschlossen ein eigenes Zeiterfassungssystem zu entwickeln, um einen besseren Überblick über die aktuelle fnanzielle Lage und sehr spezifsche Buchungs- und Abrechnungsfälle zu ermöglichen.

Aufgaben:

Anforderungsanalyse, Design und Implementierung eines web-basierten Zeiterfassungssystems mit Groovy/Grails.

Kenntnisse

Groovy

Grails

spring-mvc

spring-webflow

hibernate

Oracle DB

bamboo

JasperReports

03/2008 - 06/2008

4 Monate

DSL für Businesskunden

Rolle
Software-Architekt
Einsatzort
München
Projektinhalte

DSL für Businesskunden:
Im Rahmen der Inbetriebnahme eines neuen DSL Produkts für Businesskunden müssen in einem Telco-Unternehmen viele interne Systeme angepasst und neue externe Partner an die bestehenden Systemen angeschlossen werden.

Aufgaben:

Anforderungsanalyse und Design der notwendigen technischen Workfows.

Kenntnisse

UML

Produkte

Rational Rose

05/2007 - 02/2008

10 Monate

Mobile-Marketing Plattform

Rolle
Software-Entwickler
Einsatzort
München
Projektinhalte

Mobile-Marketing Plattform:
Ein Unternehmen hat eine Plattform zur Durchführung von Marketingkampagnen entwickelt und vertreibt diese als Produkt und als Leistung. Die Besonderheit dieses Produkts ist, dass es viele diverse mobile Kanäle unterstützt – SMS, MMS, WAP, XHTML, E-Mail. Es wurde in Java mit zu damaligen Zeiten aktuellen Java EE-Technologien entwickelt, die nun sehr veraltet sind. Die klein angefangene Plattform ist monolithisch aufgebaut und hat dadurch die Weiterentwicklung beeinträchtigt.

Aufgaben:

Modularisierung der Plattform durch Refactoring und sukzessives Extrahieren von zusammenhängenden Klassen. Upgrade von J2EE 1.4 auf Java EE 5 und Spring. Einführung von automatisierten GUI-Tests und Continuous Integration.

Kenntnisse

spring framework

jboss

EJB 2

java

maven

08/2006 - 02/2007

7 Monate

Innovatives UI für Web Applications Framework

Rolle
Software-Entwickler
Kunde
SHS VIVEON AG
Einsatzort
München
Projektinhalte

Vollzeitige Diplomarbeit mit Thema Development of a user interface for the graphical modelling of all aspects for a completely XML defined web application using current W3C

standards: Spring WebFlow, AJAX, SVG, ECMAScript, Servlets

02/2005 - 07/2005

6 Monate

Multidimensionale Auktionen

Rolle
Software-Entwickler
Kunde
Technische Universität München
Einsatzort
Garching bei München
Projektinhalte

Technologieevaluierung im Bereich der Multidimensionalen Auktionen:

J2EE, Spring Framework, Hibernate, JavaServer Faces, Struts

Kenntnisse

J2EE

spring-framework

hibernate

JSF

struts

Kompetenzen

Sprachkenntnisse
Bulgarisch
Muttersprache
Deutsch
fließend
Englisch
fließend

Programmiersprachen
Bash
Delphi
Groovy
Java
JavaScript
Python
Scala

Datenbanken
NoSQL
Oracle NoSQL
Redis
SQL-Datenbanken

Betriebssysteme
Linux
MacOS
Windows

Schwerpunkte
Architektur
Performance-Engineering
Software-Entwicklung

Erfahrungsschwerpunkte:

  • Softwarearchitektur und Entwicklung in agilen Projekten mit Fokus auf nicht-funktionalen Anforderungen
  • Performance-Engineering: Analyse und Optimierung von komplexen Systemen im Enterprise-Java Bereich

Datenkommunikation
IMAP
SMTP
TCP/IP
UDP

Produkte / Standards / Erfahrungen

Berufserfahrung

09/2013 - h eute

Rolle: Selbstständiger Software Architekt

 

Aufgaben:

Performance Engineering im JEE-Bereich, Software Architecture, Agile Softwareentwicklung, DevOps, Application Performance Monitoring, Continuous Delivery

07/2010 – 08/2013

Kunde: Zühlke Engineering GmbH, München

Rolle: Lead Software Architect

 

Aufgaben:

Software Architecture, Agile Softwareentwicklung, Performance Engineering im JEE-Bereich

03/2008 – 06/2010

Kunde: ConSol* GmbH, München

Rolle: Software Consultant

 

Aufgaben:

JEE, SOA, OO Analyse & Design, Tibco, OpenESB

05/2007 – 02/2008

Kunde: Comnos GmbH, München

Rolle: Professional Software Engineer

 

Aufgaben:

J2EE, Spring Framework, Hibernate, Maven2, JMS, SAMS, UCP

08/2006 – 02/2007

Kunde: SHS VIVEON AG, München

Rolle: Diplomand

 

Aufgaben:

Development of a user interface for the graphical modelling of all aspects for a completely XML defined web application using current W3C standards: Spring WebFlow, AJAX, SVG, ECMAScript, Servlets

04/2001 – 04/2007

Kunde: TBK-Patent, München

Rolle: Werkstudent

Aufgaben:

Software-Entwicklung in Delphi, Java und PHP, SQL Datenbankentwurf, Linux und Windows Administration

02/2005 – 07/2005

Kunde: Roland Berger & O2 Germany, TU-München

Rolle: Wissenschaftliche Hilfskraft, Lehrstuhl 

 

Aufgaben:

Technologieevaluierung im Bereich der Multidimensionalen Auktionen: J2EE, Spring Framework, Hibernate, JavaServer Faces, Struts

10/2003 – 06/2005

Kunde:  TU-München und Siemens AG

Rolle: Diplomand (Nebenfach Elektrotechnik), Lehrstuhl für Kommunikationsnetze

 

Aufgaben:

Interdisziplinäres Projekt „Dynamische Topologie-Erkennung für ein CISCO-Router-Netz“: C++, Perl, Cisco CLI, SNMP, TCP/IP Netzwerke

03/2003 – 09/2003

Kunde: Siemens AG, München

Rolle: Werkstudent

 

Aufgaben:

Unterstützung beim Aufbau, Implementierung und Vorführen von Security-Showcases im GPRS und UMTS Umfeld


Ausbildungshistorie

10/2000 – 04/2007

Institution: Technische Universität München

Abschluss: Diplom Informatiker, Note 1.1 (mit Auszeichnung bestanden)

Zertifikate

04/2015

Oracle Certified Professional, Java SE 8 Programmer

02/2015

Oracle Certified Professional, Java SE 7 Programmer

12/2014

Functional Programming Principles in Scala

03/2013

Certified Professional for Software Architecture – Foundation Level

04/2011

Professional Scrum Master I

02/2011

Certified Professional for Requirements Engineering – Foundation Level

07/2010

ISTQB Certified Tester – Foundation Level

06/2009

Sun Certified Programmer Java 6