Diplom Informatiker (FH)
Chris Wewerka
Project Overview
|
|
December 2025 –
current
Role: Developer Customer:
private
|
Vibe Coding of an AI Council
App
Tools, Libraries and
Environment
Dev environment + AI: Google Antigravity + Claude Opus 4.6, Gemini 3 Pro Preview, Gemini 3 Flash
Backend: Python, FastAPI (Python 3.10+),
Playwright
(for browser automation), Pytest
Frontend: React + Vite, Vitest, Vanilla
CSS
Package Management: uv for Python, npm for
JavaScript
|
|
September 2024 –
January 2025
Role: Tech Reviewer &
Architect Customer: BTC AG
|
Technology, Architectural and
Performance Review of a web app for B2B
customers in the electricity supply
industry
• Review of used technology and
architecture • Refactoring and
Performance improvements of existing
code • Technology consulting
Tools, Libraries, and Environment:
Scala 2.13, Akka,
SBT, Akka HTTP, Docker, Grafana, Open
Telemetry, Trafik, AWS
|
|
May 2024 – November
2024
Role: Senior Developer Customer:
Otto.de
|
Feature implementation, refactoring,
and technology consulting in a
microservice environment for a large
German e-commerce platform
• Implementation and
review of user stories from the business
department • Refactoring of existing
code • Coaching for using functional
paradigms • Technology consulting
Tools, Libraries, and Environment:
Scala 2.13, Spring,
Spring Boot, MongoDB, GitHub, AWS, Docker,
Gradle, TestNG, Scalatest, Jenkins, Scrum,
Pair Programming, Test-Driven Development,
Test-Driven Development, HTML+CSS,
Javascript, Typescript, Karma, Jest
|
|
November 2023 – March 2024
Role: Lead Developer Customer: Hays AG
|
Implementation, refactoring and team
leading for the completion of a
recruiting web application
• Implementation and review
of user stories • Refactoring of
existing code • Teaching of test-driven
concepts + Scala best practices to the
development teams • Coaching of the
development teams • DevOps support for
the creation of Azure build pipelines
Tools, Frameworks and
Environment
Scala 3.3, SBT, Cats Effect, doobie,
Postgres, Flyway, Tapir, OpenAPI, Github,
Azure, Docker
|
|
October 2023
|
Completing the course “Python for
Data Science and Machine Learning
Bootcamp”
Certificate
Tools, Frameworks and
Environment
Python 3.11, Anaconda, PyCharm, NumPy,
Pandas, Matplotlib, Seaborn, Neural Nets,
TensorFlow, NLP, Spark with Python
|
|
May 2022 – September 2023
Role: Senior Developer, Technology
Consultant, Architect Customer:
T-Systems
|
Rewrite of a whole service,
Refactoring and Implementation of new
features of a microservice architecture
in an IoT environment.Technical and
architectural consultancy.
• Refactoring of blocking persistence
to non blocking with ZIO 1 • Complete
rewrite of a geolocation microservice from
Spring Boot/Java to Scala 3 with ZIO 2 and
Tapir • Architectural concept for async
event-driven communication between
microservices instead of synchronous REST
calls • Review of the architecture and
implementation of improvements •
Further development and bug fixing of
microservices for IoT device synchronization
+ geolocation determination based on Java,
Spring Boot and Apache Camel •
Integration of the new implementation of the
geolocation service with feature toggles in
the service for device
synchronization • Implementation of
monitoring possibilities with Prometheus
metrics and OpenTelemetry support with
Jaeger UI
Tools, Frameworks and
Environment
Java11+17+21, Apache Camel,
Spring Boot, Scala 2.13 and 3.3, SBT,
Kubernetes, Helm, Docker, Gitlab, ZIO 1 + 2,
Tapir, sttp, http4s, Circe, OpenAPI,
Swagger, REST, Json, MongoDB, Kafka,
Prometheus, Open Telemetry, Jaeger
|
|
December 2021 – June 2022
Role: Senior Developer, Technology
Consultant Customer: Ryte
|
Refactoring of a microservice
architecture for mass analysis of
websites
• reimplementing
microservice (e.g. persistence) •
connecting Keycloak/OAuth to
Microservices • Technology Consultancy
in the area of Kafka, Scala, Microservices
and ZIO
Tools, Frameworks and
Environment
Scala, SBT, AWS,
DynamoDB, ECS, Docker, Akka, Scanamo,
Keycloak, Oauth, ZIO, Circe, Swagger
|
|
August 2021 – December 2021
Role: Senior Developer, Technology
Consultant, Coach Customer: autoscout24
|
Further development of a high
traffic ecommerce website
• Implementation of feature requests and big
fixes in several microservices e.g.
Integration of machine learning models in
elasticsearch to improve the search and for
better recommendations (Learning to Rank,
LTR) • Removal and consultancy for
technical debts • Evaluation of Apache
Flink • Improvements and bug fixes in
Kafka Streams apps • Enhancement of
GraphQL APIs with Sangria Lib •
Coaching of new team members in Scala,
Kafka, Elasticsearch and more
Tools, Frameworks and
Environment
Scala, SBT, Play
Framework, Apache Flink, AWS Kinesis Data
Analytics, Datadog, AWS (DynamoDB, EC2),
JDK11, JDK17, GraphQL, REST, Elasticsearch
7.5, Typescript, Akka Streams, Sangria
|
|
Mai 2021 – August 2021
Role: Architect, Senior Developer, Technology
Consultant
|
Technical architecture concept and
setup of a Microservice Environment
(Proof of Concept) for a High Traffic
Online Website for stock information
• Implementation of a POC with several
microservices in Kotlin • Technical
consultancy in Kotlin, Kafka, Kubernetes and
Public Clouds
Tools, Frameworks and Environment
Kotlin, Spring Boot, Spring Webflux, JDK11,
IntelliJ, Kafka, Docker, Openshift, Grafana,
ArgoCD, Prometheus, Micrometer, Docker,
Docker Compose, Kubernetes, Rancher, Jenkins
|
|
April 2020 – Mai 2021
Role: Architect, Senior Developer, Technology
Consultant
|
Update and Extension of an Open
Source Video Conference Tool (Big Blue
Button)
Tools, Frameworks and Environment
Scala 2.13, SBT, GIT, JDK11, Java 11, Grails
|
|
April 2020 – March
2021 Role: Architect,
Senior Developer, Technology Consultant,
Coach
|
Software Architecture Support, Senior
Software Development, Clean Code
Coaching, Support optimizing the
development process for the development
of bench scale
bioreactors
• Refactoring of code with
focus on testability and Clean Code
principles • Implementation of unit
tests • Analysis and fix of JVM and OS
memory leaks, with Know How transfer and
documentation • Evaluation and Switch
to OpenJDK11 • Support of the software
architect for the bioprocess product •
GIT Pull Request Workshop • Coaching
of the team: TDD and Clean Code
mentality •
Architecture Documentation with Arc42 •
Presentation of the teams achivements
Tools, Frameworks and
Environment
Scala 2.12, SBT, Arc42, GIT, Gerrit, Scrum,
Akka, Akka Actors, Akka Streams, Clean Code,
TDD, Mockito, UML, OpenJDK11, Evaluation of
ZIO
|
|
May 2019 – December
2019 Role: Senior
Developer, Technology Consultant, DevOps
|
Senior Software
Development & Technology Consultant
with Java 11, Spring Boot, Kafka,
Microservices, Docker, OpenShift and
Kubernetes
-
Implementing an Order
Workflow as a Spring Boot
Microservice for Truck Toll Systems
based on data in Kafka Topics. Using
advanced Kafka Streams concepts like
Processors (Punctuator) to make the
process steps resilient.
- Implementation of microservices with
Deployment as docker container to
OpenShift
-
Setup of Gitlab and
Gitlab Runners on Kubernetes/ Google
Cloud to improve developer
performance
-
Implementation and
Coaching of the team for a DevOps
mentality during development:
Logging, Metrics, Alerting
- Documentation with Arc42
Tools, Frameworks and
environment
Java 11,
Spring Boot, Kafka, Docker, Openshift,
Google Cloud Kubernetes Engine, Google
Cloud Storage, Gitlab, Kibana,
Prometheus, Grafana, Arc42
|
|
December 2018 - April
2019 Role: Architect,
Senior Developer, DevOps
|
Senior Software Development with
Scala in AWS with
Microservices •
Implementation of user stories of a B2C
Direct Sale Microservice Application in
Scala based on AWS and docker. Use case:
enabling customers to sell their used cars
directly to car dealers • Connection
to Salesforce CRM via S3 (XML) with AWS
Lambda in Scala • Technology
consulting for Kafka usage •
Connection to relational database AWS Aurora
(MySQL) via doobie library •
Monitoring and Alerting via AWS Cloudwatch
and Datadog • Continuous Deployment
via Jenkins
Tools, Frameworks and
Environment
Scala 2.12, AWS, AWS Lambda, Microservices,
Doobie, Slick, AWS MySQL Aurora, Jenkins,
AWS Cloudwatch, Datadog, docker,
Testcontainer
|
|
April 2017 - December
2018 Role: Architect,
Senior Developer, DevOps
|
Senior Software Development, DevOps
and Architecture Consultancy in a Big
Data / Machine Learning Project on
AWS • Implementing
different microservices on Kafka Realtime
Features basis ◦ Kafka Stream
Apps ◦ Kafka Connect (Source +
Sink) ◦ Interactive Queries ◦
KSQL • ETL of Google Ad-Daten via
Spark • Realtime Streaming,
Normalising and Enhancement of Ad-Click DFP
Data to Apache Kafka via Implementing custom
Kafka Connectors and proccessing of that
data via Kafka Streams Microservices •
Realtime Sessionizing of User Interactions
on a website for usage in Machine Learning
Algorithms • Implementation of a Kafka
/ Interactive Query REST Service for
providing user profiles enhanced with
Machine Learning Algorithms •
Dockerising Kafka Connect Import Modules and
Kafka Stream Apps • Integration
testing of Kafka connectors and Kafka
Streaming Apps via Landoop Docker Kafka
Environment and Coyote Integrationstests.
Integration in CI/CD Process based on
Docker, Gitlab and Rancher • Adaption,
Bugfixing + Pull Request for the OpenSource
JDBC Kafka Connector to make it usable for
big MySQL
databases: https://github.com/confluentinc/kafka-connect-jdbc/pull/269
• Realtime Transfer of text (news articles)
from a big MySQL DB to an Apache Kafka Topic
(incl. Updates in realtime) •
Consultancy for creating build processes for
Scala + SBT • Monitoring of the Kafka
Connect + Kafka Stream Apps •
CO-Development of a Maschine Learning
Recommendation Application based on
PredictionIO • CO-Implementation +
Improvment of the Open Source Project
PredictionIO written in Scala
(Recommender): ◦
https://github.com/apache/predictionio/pull/495
◦
https://github.com/actionml/universal-recommender/pull/62
• Setup, Configuration and Performance
improvements of a Spark Standalone Clusters
on AWS Maschine
• Creation of AWS EC2 Machine Images with
Terraform
Tools, Frameworks and
Environment
Scala 2.11 + 2.12,
Akka, SBT, Kafka 0.10.2 – 1.0.0, Confluent
Platform 3.2.x – 4.0, Kafka Connect, Kafka
Streams, GIT, Gitlab, Docker, Docker
Compose, Rancher, Apache Spark 2.3.1,
Landoop, Coyote, Play Framework, Avro,
MySQL, Amazon Web Services, PredictionIO
Recommender, Machine Learning, Terraform
|
|
August 2017 – December
2017 Role: Big Data
Architect & Consultant Customer:
gutefrage.net
|
Installment of a Big Data Pipeline
based on Apache Kafka / Confluent Open
Source Platform for a big internet Q+A
platform • Integration
of different data sources to Kafka via Kafka
Connect ◦ Rabbit MQ ◦ HDFS /
Hadoop ◦ MySQL DB • Save topic
data to HDFS • Normalize and
Enhancement of RAW-Data via Introduction of
Schema Registry + AVRO Format •
Coaching of Employees in Scala and Kafka
concepts
Tools,
Frameworks and Environment
Scala 2.11 + 2.12,
SBT, Kafka 0.10.2 – 1.0.0, Confluent
Platform 3.2.x – 4.0, Kafka Connect, Kafka
Streams, GIT, Jenkins, Docker, Docker
Compose, Mesos, Aurora, Landoop, Coyote,
Play Framework, AVRO, MySQL
|
Mai 2015 – Juni
2017 Rolle: Architekt, Senior
Developer, Coach Kunde: autoscout24 |
Neuimplementierung einer
großen internetbasierten KFZ
Verkaufsplattform mittels Microservices auf
Scala und AWS Cloud
- Coaching
- Scala Coaching
- Technology Coaching
- Softwaredesign + Test Driven
Development Coaching
- Mitentwicklung eines
Preisbewertungstools für gebrauchte KFZ
(Backend + Frontend)
- Performanceanalyse und Optimierungen
beim Umstieg auf JDK 8
- Performanceoptimierungen und Monitoring
von Microservices und deren Verwendung
von Amazon Services (z.B. DynamoDB,
Autoscaling)
- Abstimmung mit AWS Technology Managern
- Aufbau und Softwaredesign von
Microservices (Template für
Microservices)
- REST API Design für Backendservices der
KFZ Suche
- Frontendentwicklung
- Umsetzung der Infrastuktur für Consumer
Driven Contract Testing
- Implementierung Realtime Pipeline der
Suche mittels Akka, Akka Streams und
Kafka
- High Availabilty, Resilience und
Failover Konzeption der
traffic-stärksten Seiten/Microservices
bei AS24 ( bis zu 20.000 req/min)
- Entwicklung und Betreuung einer Scala
Bibliothek für das Erzeugen von
strukturierten Events (CQRS Ansätze) aus
Microservices
- Implementierung und Betreuung eines
Feature-Switching Tools (featurebee,
Open Source:
https://github.com/AutoScout24/featurebee-scala)
- Aufbau von Microservices für die
Registrierung und das Versenden von
mobilen Push Registrierungen mit Amazon
Dynamo DB und SQS
Tools und
Umgebung Scala 2.11, Akka,
Akka Streams, Akka Actors, AWS (Amazon
Webservices), SBT, Elasticsearch, Kafka,
GIT, Oracle DB, Play Framework, Dropwizard
Metrics, GOCD (Continuous Development Tool),
HTML, Javascript, Ruby, Docker
|
|
Dezember 2014 – April
2015
Rolle: Architekt, Developer,
Coach
Kunde helpster.de
|
Architektur und
Entwicklung von Microservices und
Textähnlichkeitsanalysen für helpster.de
(werbebasierte Internetseite mit
redaktionellem Content)
-
Architektur und
Entwicklung eines Microservices der
bei der Erstellung von neuen
Artikeln im CMS System
unterstützt: Ermittlung von
relevanten Keywords mittels WDF/IDF
Algorithmus aus einem sehr großen
Datenbestand mittlels Apache Spark
um das Google Ranking von Artikeln
zu verbessern und damit die
Artikelerstellung zu optimieren.
Umsetzung von REST Schnittstelle und
einer AngularJS UI für Use-Cases im
Bereich WDF-IDF
-
Microservice mit REST
Interface für die Ermittlung von
verwandten helpster Artikeln und
Gutefrage.net Content unter
Verwendung von Elasticsearch (More
like this)
-
Microsservice der eine
interne Suche auf Basis von
Elasticsearch mit zahlreichen
erweiterten Features anbietet
(Synonymunterstützung, verschiedene
Autokorrekturen der Eingabe) zur
Ablösung der vorher verwendeten
Google Suche
-
Automatisierter
Erkennung und Clustering von
ähnlichen Dokumenten (Near Duplicate
Content) mittels MLT von
Elasticsarch und Clusteringverfahren
(k-means, DBSCAN) sowie mittels LDA
(Latent Dirichlet Allocation)
-
Einführung von
Continuous Integration/Deployment in
den neu entwickelten Scala
Microservices
-
Scala Coaching und
Coaching der Architektur für
Microservices der internen
Mitarbeiter
Tools und
Umgebung
Big Data:
Apache Spark, Elasticsearch, Hadoop,
Scala 2.10 + 2.11, SBT, GIT, MySQL,
Chef, Ruby, AngularJS, Bootstrap, Spray,
Textähnlichkeitsanalysen
mit Latent Dirichlet Allocation,
Clusteringverfahren
(k-mean, DBSCAN)
|
|
Oktober 2014 – November
2014
Rolle: Architekt, Developer,
Coach
Kunde O2
|
Architektur- und
Prozessberatung in mehreren
Bereichen
-
Beratung zur Einführung
von Microservices inkl.
Serviceauthentifizierung
-
Unterstützung und
Coaching bei der Umstellung auf Java
8 mit funktionalen Paradigmen
-
Einführung eines
distributed In-Memory-Datagrids
(Infinispan) für das Caching von
zeitintensiven Backendcalls
-
Optimierung der
Continuous Integration Pipeline und
Beratung zur Optimierung hin in
Richtung Continuous Deployment
-
Software-Review
Prozessoptimierung
Tools und
Umgebung
Java 8,
Spring 4, Maven, Infinispan Cache,
Crucible, Tomcat 7, GIT, Jenkins
|
|
Juni 2013 – September
2014
Rolle: Architekt, Developer,
Coach
Kunde: gutefrage.net
|
Mitwirkung bei dem
Umbau eines rein PHP basierten
Frage/Antwort - Forums auf eine Scala
basierte Servicearchitektur im High
Traffic Bereich
-
Scala Software
Development in den Services
-
Konzept und Umsetzung
für die Wiederverwendung von
allgemeinen Komponenten in den
Services inkl. Einführung von
Dependency Injection
-
Miterstellung der neuen
Softwarearchitektur
-
API Thrift
Design der Services
-
REST-Design der
öffentlichen API
-
Konzeption der
Authentifizierung und
Authorisierung mittels JWT
Tokens
-
Miteinführung
von NoSQL (Redis) zur
Speicherung von Accesstokens
-
Einarbeitung und
Coaching auch neuer Mitarbeiter
-
Etablierung des
Continuous Delivery Prozesses
Architektur und
Mitentwicklung einer Android App für die
führende Frage-Antwort Plattform in
Deutschland
-
Durchführung einer
Machbarkeitsstudie und eines
Prototyps für die Umsetzung einer
Android App mit Scala 2.11
-
Coaching des Teams
bzgl. Scala & Android
-
Umsetzung der
wichtigsten Basiskonzepte (z.B.
Dependency Injection, Retries bei
Verbindungsabrüchen zum Server
u.v.m) der App
-
Einrichtung eines
Continuous Integration Prozesses
-
Mitentwicklung bei
allen Usecases der App
-
Interview mit mir bzgl.
Scala auf Android:
http://erika23.gutefrage.net/2014/05/22/java-oder-scala-wie-man-sich-fur-eine-sprache-entscheidet/
Tools und
Umgebung
Scala 2.10-2.11, Twitter
Finagle Stack, Linux, Intellij, Redis,
MySQL, Memcache, GIT, Jenkins, Rabbit MQ,
Spring AMQP, Apache Thrift, MySQL, NoSQL,
JWT, Scalatest, Mockito, SBT, MogileFS, DI
mittels CakePattern, Android 4.0 – 4.4, SBT
|
|
Januar 2011 – Mai 2013
Rolle: Senior Developer,
Architect, Scrum Master & Technology
Consultant
Kunde: Weltbild
|
Projekt Panther (Tolino):
Realisierung eines EBook Shops für den E-Ink
Reader Tolino Shine
-
Softwarearchitektur und Umsetzung
der neuen Geschäftsprozesse
-
MongoDB 2 Persistenz für
Kundenprofilinformationen mit Spring
Data sowie Anbindung der bestehenden
Oracle DB
-
Authentifizierung und Authorisierung
durch Eigenimplementierung eines
OAUTH2 Providers mit JSON Web Token
(JWT)
-
Rest-API für bestehende und neue
Services mit Resteasy
-
Umsetzung einer ESB-ähnlichen
(Enterprise Service Bus) Applikation
mit Spring Integration für die
asynchrone Verarbeitung von Requests
wie z.B. Bestellungen, digitale
Auslieferungen, Abfragen der
E-Bibliothek, Supportanfragen für
das CCC/SAP u.v.m. Messaging
mittels MQ Series und HornetQ
-
Coaching und Aufbau einer Continuous
Delivery Build
Pipeline
Projekt FIT:
Anbindung eines großen deutschen
Internetshops für Bücher, DVDs etc. an ein
neues CRM- und Auftragsverwaltungssystem
-
Erstellung eines neuen
annotationsbasierten Frameworks zur
Kommunikation zwischen dem PHP
Frontend und der Java Backend
Schicht
-
Implementierung von performanten
Exporten in JEE und JMS mittels
HornetQ
-
Transaktionale Anbindung von JMS (MQ
Series) basierten Artikelimports in
die Artikel DB des Webshops inkl.
Integration von Monitoring der
Queues und Dead-Letter-Queues
innerhalb der Anwendung mit RESTful
HTTP
-
Vereinfachung der Architektur und
der Infrastruktur in der
Mittelschichts- und
Produkt-Informationsanwendung
-
Anbindung der Bestellabwicklung des
Shop Backends per SOAP Webservices
an neues
CRM/Auftragsverwaltungssystem
-
Einführung von neuen Testkonzepten
und Testmöglichkeiten im
Produktinformationssystem
-
Technologische Beratung und
Etablierung eines Prozesses für die
Verbesserung der technischen
Architektur
-
Einführung eines Tools (Flyway) zur
Versionierung und automatisierten
Erweiterung des Datenbankschemas zur
Optimierung und Vereinfachung des
Anwendungs-Deployments hin in
Richtung Continuous Deployment
-
Optimierung der Testbarkeit der
Shopanwendung durch lokale
Build-Datenbanken und schneller
In-Memory-DBs
-
Erstellen von Schnittstellen und
deren Beschreibung zu anderen
Systemen
-
Verbesserung des Continuous
Integration und Einführung eines
Continuous Deployment Prozesses
-
Einführung von Functional Testing
der Mittelschichtsanwendung mit
simulierten JSON Requests des
Frontends und komplettes Testing
inkl. PHP Frontend mit Selenium 2
-
Coaching und Durchführung von
Schulungen der Mitarbeiter (z.B. GIT
mit SVN) und Weitergabe von
technischem Know How
-
Durchführung von Architektur- und
Codereviews
-
SCRUM Master für ein
Entwicklungsteam
-
Optimierung der Abläufe und
Scrumprozesse (Beratung im Bereich
agiler Methoden)
-
Fehlerbereinigung eines Regelwerks
zur Warenkorbvalidierung auf Basis
Visual Rules (Rule Engine) und
Anbindung an den Internetshop nach
Refactoring und Kapselung des alten
Validierungscodes
Refactoring und Neuentwicklung der
Suchfunktionalität (Basis Apache Lucene) des
Webshops
-
Implementierung der Clusterfähigkeit
der Suchagenten und Crawler
-
Verteilung von Delta-Indices im
Suchcluster
-
Monitoring der Suchanwendung mittels
RESTful http
Tools &
Umgebung:
Apache CXF, SOAP
Webservices, WS-Reliable Messaging,
WS-Addressing, SoapUI, JBOSS 4.3, JEE5,
Spring 3.1, IBM DB2, Oracle 11g, H2 DB,
JUnit, Linux, Jenkins/Hudson Continuous
Integration Server, Continuous
Deployment, Mockito, JMS, HornetQ,
Eclipse, GIT, Subversion, Hibernate,
JPA, Maven, Ant, Cargo, Flyway, Jira,
Crucible, Scrum, SAP, VisualRules 5.1
(RuleEngine), Apache Lucene 3.4,
JGroups, Selenium 2, RESTful HTTP, REST,
Resteasy, JAX-RS,
Spring Integration, Spring Data,
MongoDB
|
|
Mai 2012 -
heute
Rolle: Architect &
Entwickler
Kunde: MCA Augsburg
|
Erstellung einer Android App und einer
Appengine Cloud Serverkomponente zur
Überwachung von Öffnungszeiten eines
Sport-Trainingsgeländes
-
Überwachung des Öffnungsstatus
mittels Spring MVC Anwendung
innerhalb einer Google Appengine
Anwendung und Veröffentlichung der
Informationen als REST-Service
-
Dynamische Push Benachrichtigung vom
Server zu den Androiddevices mittels
C2DM/GCM
-
https://play.google.com/store/apps/details?id=de.threedimensions.enduropark.android
Tools &
Umgebung:
Android 2.3 und Android 4,
Google Cloud-To-Device Messaging (C2DM),
Google Cloud Messaging (GCM), Intellij IDEA,
GIT, Google Appengine, Spring 3.1, REST,
Json
|
|
Dezember 2012
Rolle: Coach
Kunde: HUK Coburg
Standort: Coburg
|
Durchführung eines eintägigen Workshops zum
Thema Versionsverwaltung mit GIT inkl.
Beratung zur Migration.
|
|
April 2012 – August
2012
Rolle: Architect & Coach
Kunde: Transparo
Standort: Augsburg
|
Technologische Beratung,
Architektur, Coaching und
Umsetzungstätigkeit bei einem Portal für
Versicherungsvergleiche
-
Erstellung der Architektur und
Beratung bei der Konzeption für ein
neues Modul/eine neue Anwendung auf
Basis neuer Technologien, die
schrittweise auch die auf veralteten
Technologien (WebObjects)
basierenden Anwendungen ablösen
-
Beratung bei der Einführung der
Versionsverwaltung GIT (Umstieg von
CVS)
-
Einführung von Continuous
Integration und Testdriven
Development
Tools &
Umgebung:
Spring, Spring MVC, Spring
Data, Oracle, Jenkins, GIT, CVS, Eclipse,
Tomcat, WebObjects, Hibernate 4
|
|
Januar 2011 – Februar
2012
Rolle: Architect &
Developer
|
Erstellung einer personalisierten,
cloudfähigen Blogsoftware mit Schnittstellen
zu verschiedenen Plattformen
-
Architektur & Konzeption
-
Implementierung
Tools & Umgebung:
OpenID, OpenID4Java, Google
AppEngine, Google Web Toolkit (GWT), Spring
3, REST, RESTFul HTTP, JSON, Ajax, GIT, Java
JDK 1.6, Gradle
|
|
November 2011 – März
2012
Rolle: Coach & Architect
Kunde: BG ETEM
Standort: Augsburg
|
Coaching eines Entwicklers und
Mitentwicklung (Pair-Programming) bei der
Umsetzung des gesamten Projekts
„Medienverteiler“, einer JEE
Backendanwendung mit Swing GUI auf dem
Client die u.a. zur Verwaltung der Empfänger
von BG-ETEM Medien verwendet wird.
-
Beratung des Fachbereichs und der
Entwicklung für die Umsetzung und
Priorisierung neuer Features
-
Coaching in JEE6, JPA &
Hibernate, Test Driven Development
(Servicetests ohne laufenden JBoss),
Transaktionen mit Datenbanken,
Softwarepatterns und vielen Best
Practices
-
Erstellung und Design einer
Serviceschicht
-
Coaching und Mithilfe bei der
Umsetzung der Swing GUI
-
Neuerstellung und Coaching:
Erstellung eines Datenbankmodells
-
Einführung von QueryDSL als
typsichere, kompaktere Alternative
zur Criteria API
-
Einrichten einer Continuous
Integration Umgebung
-
Coaching und Umsetzung bei
Deployment und Packaging der
Anwendung
Tools &
Umgebung:
JEE 6, JBoss 6, IBM DB2, JPA 2,
Hibernate 3.6, QueryDSL, Swing, Citrix, Soap
Webservices, ANT, Jenkins, Testdriven
Development, JUnit
|
|
Oktober 2010 – Januar 2011
Rolle: Senior Developer, Technology
Consultant und Agile Coach
Kunde: GMX
Standort: München
|
Rekonzeption, Refactoring und
Weiterentwicklung der Internet
Registrierungsanwendung eines großen
deutschen Mailanbieters (basierend auf
Apache Wicket)
-
Technologieberatung und
Kurzvorträge/Tutorials für
Entwickler
-
SCRUM - Einführung und
Prozessberatung
-
Refactoring und Bereinigung der
Architektur und des Build- &
Deploymentprozesses
-
Design und Implementierung neuer
Features
-
Anbindung von Drittsystemen mittels
Webservices (Spring WS)
-
Analyse und Lösung von bestehenden
Problemen im Bereich Memoryleaks
(PermGen Space), sowie beim
Loadbalancing der geclusterten
Anwendung
Tools & Umgebung:
Wicket 1.4, JSON, Ajax, JQuery, HTML+CSS,
Spring 2.5 und 3, Tomcat 5.5 & 7, Apache
Webserver, Oracle, Maven 3, JUnit, EasyMock,
Mockito, GIT (git-svn), SVN, Hudson, JDK
1.6, Eclipse 3.6, Linux, Drools, JSR 303
(Bean Validation), Loadbalancing +
Clustering (bei Sticky Sessions), VisualVM,
YourKit Profiler, Spring Webservices, Axis
|
|
Mai 2010 – Oktober 2010
Rolle: Softwarearchitekt, Senior Developer
und Technology Consultant
Kunde: Lokalisten.de
Standort: München
|
Neuimplementierung und Refactoring eines
kommentierbaren Activityfeeds einer großen
Social Network Plattform mit extremen
Near-Realtime und Performanceanforderungen
Implementierung einer
Kommentarfunktionalität der Statusmeldungen
innerhalb des Activityfeeds mit Darstellung
für alle Benutzer in Fast-Echtzeit
-
Technologische Beratung
-
Architektur und Implementierung
(UseCase orientiert, Backend
(DB/NoSQL) bis Frontend)
-
MongoDB: Ausführliche Evaluation und
Machbarkeit einer weichen Migration
zu performanten und skalierbaren
NoSQL Technologien
-
Einführung, Architektur und
weiche Migration auf die
NoSQL Datenbank MongoDB
mit Ablösung einiger
zentraler Standard
Datenbank-Tabellen (MySQL)
-
Verwendung des
Shardingfeatures der MongoDB
(Segmentierung von
Daten auf verschieden
MongoDB Instanzen)
-
Durchführung von
Lasttestszenarien und
intensive Fehleranalyse
im Hochlastbetrieb mit
den Entwicklern von MongoDB
-
Performanceanalyse in einem
Umfeld mit einer Tomcatfarm
von 80 Servern und 2
MongoDB Instanzen, die im
Shardingmodus arbeiten
-
Evaluation von Alternativen
zu SQL und NoSQL, wie z.B.
In-Memory-Datagrids
-
Umsetzung mit verteiltem
In-Memory-Datagrid (Hazelcast) und
Memcache
-
Performanceoptimierung und
Testerstellung
-
Aufbau von
Continuous Integration,
Continuous Deployment und
Buildprozessoptimierung
-
Planung und Durchführung des
Umstiegs von CVS auf GIT
Tools & Umgebung:
Spring, Memcache, Hazelcast, EhCache,
Hibernate, NoSQL, MongoDB, MySQL, Tomcat 6,
Struts, HTML, JSTL, JSP, Javascript, Ajax,
JQuery, Prototype, Ant, Eclipse (STS),
JMeter, Selenium, Linux, MacOS X, GIT, CVS,
Hudson
|
|
August 2009 – Mai
2010
Rolle: Senior JEE Developer,
Senior Consultant im Bereich Continuous
Integration und Buildprozess
Kunde: Loyalty Partner
Solutions (Payback)
Standort: München
|
Umsetzung eines neuen Kundenbindungssystems
für eine große deutsche Fluggesellschaft auf
Basis von OSGI und JEE
-
Anbindung von Drittsystemen mittels
Batchverarbeitung, EJB und
Webservices
-
Umsetzung von Workflows mit JBPM
-
Umsetzung der Business Logik unter
Verwendung von austauschbaren OSGI
-Bundles
-
Optimierung der Roundtripzeiten bei
der Entwicklung
-
Mitwirkung beim Refactoring des
Loyality Cores (Reduzierung von
DTOs, Verwendung eines einheitlichen
Domainmodels mit Hibernate Mappings
auch bei internen Schnittstellen)
-
Unterstützung bei der Einführung des
funktionalen Testframeworks
„Fitnesse“ zur Umsetzung von
Akzeptanztests (auch automatisiert
im Rahmen des CI-Prozesses)
-
Beratung zur Verbesserung der
Continuous Integration Umgebung
inkl. Umsetzung: Ablösung von
Cruisecontrol, Umstellung auf Hudson
Tools & Umgebung:
Scrum, Oracle 10, Hibernate
3.3, Hudson, Unix, Eclipse, Java 1.6, OSGI,
Equinox, JUnit, Mockito, Weblogic 10, EJB 3,
JMS, Fitnesse, Hudson, Maven 2.2.1, JBPM,
Magic Draw, AndroMDA
|
|
Januar 2009 – Juli 2009
Rolle: Senior JEE & Spring
Developer, Architect
Kunde: Loyalty Partner
Solutions (Payback)
Standort: München
|
Refactoring, Erweiterung und Fertigstellung
einer komplexen Loyality Plattform auf JEE
Basis für ein europäisches Land bestehend
aus Internetshop, Callcenter-App und
Backendimplementierung für die Prozess- und
Workflowunterstützung und Module für die
Batch- und Jobverarbeitung.
-
Refactoring der Architektur (vor
allem Komplexitätsreduzierung und
Verbesserung der automatischen
Testbarkeit und der Konfiguration)
und der Infrastruktur.
-
Schnittstellenspezifikation und
deren Abstimmung für den
Datenaustausch mit Partnern über
Flatfiles, XML und Webservices.
Implementierung und Test der
Schnittstellen.
-
Design und Implementierung mehrerer
komplexer Prozesse im Backendbereich
inkl. Datenbankanbindung u.a. mit
EJB 3
-
Refactoring des bestehenden Batch-
und Jobframeworks weg von einer von
dem Rest der Anwendung getrennten
Mule Standalone-Anwendung zu einer
in die JEE Applikation integrierten
Lösung mit erheblich vereinfachter
Konfiguration über Spring
-
Performanceanalyse des Code,
Optimierung und Fehlerbehebung unter
anderem im Bereich der Verwendung
von XA Transaktionen
-
Optimierung von Continuous
Integration im Projekt
(Cruisecontrol)
Tools & Umgebung:
Scrum, Eclipse 3.4, Bea Weblogic 10.1,
Spring 2.5, Hibernate 3, AndroMDA, UML,
MagicDraw, EJB 2.1 und EJB 3, Mule ESB
1.3.3, JMS, XA Transactions, Maven,
Cruisecontrol, JAX-WS, SOAP, XML Schema,
Oracle 10
|
|
Mai 2008 – Dezember 2008
Rolle: Senior Developer, Berater in
Architektur & Technologiefragen, Spring
& Webservice Experte
Kunde: KVB
Standort: München
|
Komplette Neuimplementierung inkl.
Refactoring der technischen Architektur
eines Dokumentenverwaltungs- und
Dokumentenworkflowsystems (Webanwendung) auf
IOC Konzepte und Spring
Webflow. Verbesserung der Wart- und
Testbarkeit von bestehenden Bibliotheken und
Realisierung der Anwendung mit Spring 2.5
und Spring Webflow unter Einsatz von AspectJ
Features.
-
Umsetzung von zahlreichen neuen
fachlichen Anforderungen, inkl.
Implementierung mehrerer neuer
Workflows
-
Einführung von Spring Security 2 für
das Berechtigungskonzept der
Anwendung & Coaching der
internen Mitarbeiter
-
Einführung von Ajax Technologien für
eine Rich UI mittels
Spring-Javascript und Dojo
-
Einrichten eines Continuous
Integration Servers (Hudson) inkl.
Reporting
Implementierung einer Anwendung zur
Synchronisation zweier Datenbanken mit
unterschiedlichen Schematas: Das
Datenbankschema des
Dokumenten-workflowsystems musste aufgrund
fachlicher und gesetzlicher Anforderungen
angepasst werden, dabei wurden die Daten
migriert, ein Teil der Anwendungen musste
jedoch noch auf dem alten Schema (und damit
der alten DB-Instanz) arbeiten
-
Design und Implementierung der
Synchronisationsanwendung mit
Hibernate 3.3, JPA Annotations auf
Oracle 10g
-
Optimierungen in Hinblick auf
Massendatenverarbeitung der
Dokumente
-
Massiver Einsatz von AspectJ
zusammen mit Spring 2.5 für
verschiedenste Bereiche der
Anwendung
-
Einsatz von DBUnit und HSQLDB für
automatisiertes Integrationtesting
inkl. Integration von
Testcoveragetools in den
Buildprozess
-
Spring Batch mit Quartz
als Batch-Execution Wrapper
-
Integration von JMX und Spring`s
JMX-Support zur Fernwartung mittels
JConsole
Architektur und Implementierung (Durchstich)
eines Frameworks für automatisiertes
Functional Testing von Webapplikationen auf
Basis von Selenium, Maven2 und Jetty
Technische Beratung zu den Themen Spring,
Maven 2, Schnittstellendesign, Webservices
und modularsierter
Architektur
Einführung eines Bugtracking- und
Releasemanagement-Prozesses für die
Zusammenarbeit der Entwicklungsteams
untereinander und mit den Fachbereichen
basierend auf JIRA
Tools & Umgebung:
Spring 2.5 (z.b. Spring AOP,
AspectJ, Transactionmanagment, Spring ORM,
Spring Testframework), Spring Webflow 2.0,
Spring Security 2.0, Spring Batch 1.1,
Apache Tomcat 6, Eclipse 3.3 & 3.4,
Enterprise Architect, UML, Java 1.6,
AspectJ, Oracle 10, HSQLDB (für
Integrationtesting), DBUnit, Hibernate 3.3,
JPA Annotations, Maven 2, Cobertura, Emma,
Junit 4.4, EasyMock, Spring Batch, Hudson CI
Server, Continuum CI Server, JIRA, FindBugs,
Selenium, Jetty 6.1, Ajax (Dojo,
Spring-Javascript)
|
|
Februar 2006 – April
2008
Rolle: Senior Developer &
Architekt
Kunde: O2
Standort: München
Dauer: 24 Monate
|
Hauptaufgabe: Implementierung und technische
Architektur des Middletiers für die
Anbindung des neuen CRM-Systems an die
Portallandschaft bei O2.
-
Anbindung des Backend CRMs mittels
Webservices und Contract-First
Ansatz
-
Fachliches und technisches
Design der
Webservice-Schnittstelle,
die das Backendsystem
implementieren muss
-
JAX-WS 2.x
-
Nachrüsten der fehlenden
Validierungsfunktionalität
in JAX-WS für Rpc/Literal
und
Document-/Literal&Wrapped-Webservices
-
Einbau von WS-I (Web
Services
Interoperability)-Validierung
im Buildprozess mittels
Maven-Plugin
-
Integration von
WS-Security (OASIS Simple
Username Token Profile)
-
JAXB 2.x
-
Mitwirkung bei der Konzeption und
der technischen Architektur der
Service-, Persistenzschicht sowie
bei der Anbindung der Backends (z.B.
CRM).
-
Massiver Einsatz von Spring 1 und
Spring 2 im gesamten Middletier und
Frontend: JMX-Bean-Exposing,
Transaktionssteuerung,
Interceptoren, Aspektorientierung
mit Spring 1 AOP und AspectJ (nach
Spring 2 Umstellung), Dependency
Injection auch bei von
Legacy-Frameworks (z.B. Abaxx)
erzeugten Objekten, Spring
Testsupport, Spring ORM
-
Implementierung von
Business-Services als POJOs und
Remoting per EJB über Stateless
Session Beans mit
Spring-Unterstützung
-
Unittesting mit Einsatz des
Mockframeworks EasyMock zum Mocken
von Abhängigkeiten der zu testenden
Klasse
-
Implementierung von
Webservice-Endpoints mittels JAX-WS,
die anderen Systemen zur Verfügung
gestellt werden
-
Analyse und Evaluation des
einzusetzenden Webservice-Frameworks
(JAX-WS, Axis 1+2)
-
Umstellung der gesamten JEE
Anwendung von Spring 1 auf Spring 2
-
Aufsetzen der Infrastruktur und
Implementierung von
Integrationtesting in Containern
(Tomcat und Jboss 4, je nach
Anwendung) mittels Cargo
-
Einführung und Coaching von Tools
zur Unterstützung von agilen
Prozessen (Cruisecontrol)
-
Ablösung von ANT und Einführung von
Maven 2 inkl. Coaching bei Fragen
zur Modularisierung von großen JEE
Anwendungen und Fragen zu Maven
allgemein
-
Implementierung einer Vielzahl von
Maven 2 Plugins und
Bugfixing/Analyse von bestehenden
Plugins
-
Frontendentwicklung mit JSP, JSTL
und Abaxx (Struts-ähnlich)
-
Einsatz von SCRUM im Projekt
-
Implementierung der
Persistenzschicht für
Hochverfügbarkeit der
Portalanwendung mit Hibernate 2 und
3 (Upgrade im Laufe des Projektes)
-
Erstellung des Domainmodells
in Java, Annotation mit JPA-
und Hibernate-spezifischen
Annotationen
-
Generierung des DB-Schemas
aus dem Modell und
Feintuning (Datenbanken:
Oracle 9.2 und für
Testzwecke: HSQLDB)
-
Implementierung von DAOs für
die Business-Services u.a.
mittels Spring-Templates
-
deklarative
Transaktionssteuerung über
Spring
-
Umstellung der Enterprise
Applikation von JBoss 3 auf JBoss 4
-
Analyse und Beratung bei
Classloader-Isolationen/Hierarchien
im JBoss
-
Eclipse EMF + ECore Einsatz zur
dynamischen Erzeugung einer DSL und
Codegenerierung von Java Klassen
mittels Eclipse JET2
-
Java-to-XML Binding mittels JAXB 2.x
-
Breiter Einsatz von XML Schema für
Webservices und zur Definition von
DSLs
-
XSLT für kleinere
Transformationsaufgaben
-
Implementierung einer
Loganalyse-Webanwendung mit Groovy
und Grails
Tools & Umgebung:
Spring 1 + 2, Java 1.5, Maven 2 inkl
Pluginentwicklung, ClearCase, XMLSpy,
Eclipse 3, Rational Rose, UML, Omondo UML,
JBoss 3 + 4, Apache Tomcat 5.5, JAXB, SOAP,
JAX-WS, Axis 1+2, WS-Security, WS-I, SoapUI,
SCRUM, Oracle 9.2 DB, HSQLDB, Hibernate 2+3,
Eclipse EMF + ECore, XML Schema, XSLT,
EasyMock, Cargo, Groovy, Grails
|
|
Dezember 2005 – Februar
2006
Rolle: Senior Developer & Architekt
Kunde: Schüco
Standort: München (Inhouse Entwicklung CSC)
Dauer: 3 Monate
|
Komplettes Redesign, Refactoring und
Erweiterung einer Tomcat-basierten
Webanwendung zur Pflege und Bereitstellung
von Ausschreibungsunterlagen für ein
internationales Industrieunternehmen in der
Baubranche (Schüco)
-
Businesslogik-Entwicklung der
Services der Webanwendung und
Implementierung von Unittests
-
Einführung von Spring 1 zur
Dependency Injection,
Transaktionssteuerung, Abstraktion
von Hibernate, Testsupport,
Frontendfilter u.v.m.
-
Umstellung auf Hibernate 3 inkl.
konsequentes Umstellen der
bestehenden Anwendung
-
Frontendentwicklung mit Struts 1.2,
JSP, JSTL
-
Neuerstellung des Domainmodells und
Generierung des DB-Schemas mit
Hibernatemapping auf Basis Oracle
9.2
-
Einsatz von XDoclet 2 zur
Generierung von Metadaten und J2EE
Infrastrukturklassen aus annotierten
EJBs
-
Buildprozess und Konfigmanagement
auf Basis Subversion und Maven 2
Tools & Umgebung:
Oracle 9.2, Eclipse, Java 1.4,
Maven 2, Subversion, Hibernate 3, Spring
1.2, JSP, JSTL, Struts 1.2, Apache Tomcat,
JUnit
|
|
September 2005 – Januar
2006
Rolle: Application Designer
& Developer
Kunde: Volksfürsorge
Standort: Hamburg
Dauer: 5 Monate
|
Entwicklung eines Angebotssystems für die
Sparten Sach, Unfall und Haftpflicht für
einen Versicherungskonzern (Deutsche
Volksfürsorge Hamburg)
Tools & Umgebung:
Eclipse, Maven 2, ANT,
Subversion, Cruisecontrol,
Bugtrackingsoftware Mantis, TikiWiki
|
|
August 2004 – Juli 2005
Rolle: Senior Developer
Kunde: DaimlerChrysler
Standort: Sindelfingen
Dauer: 12 Monate
|
Erstellung einer internetbasierten Anwendung
zur Unterstützung der Qualitätssicherung bei
einem großen Automobilkonzern
(DaimlerChrysler) auf Basis der J2EE
Plattform
Projektname: QEC-Tool
Tools & Umgebung:
Eclipse 2, IBM DB2, IBM
Websphere 5, ANT, Maven 1, CVS, Struts 1.2,
Java 1.3, Versch. Java-XML Frameworks,
Apache Cactus Integrationtesting, Hibernate
2, JUnit
|
|
März 2002 – Mai
2004
Rolle: Senior Developer &
Application Designer
Kunde: WWK
Standort: München
Dauer: 27 Monate
|
Erstellung einer javabasierten Anwendung zur
Umsetzung der Angebotsprozesse einer
mittelgroßen Versicherung (WWK). Die
Anwendung besteht aus einer Plattform, auf
deren Basis neue Produkte einfach entwickelt
und in die bestehende Anwendung integriert
werden können. Zielumgebungen sind Desktop-
und Webversion mit möglichst großer
gemeinsamer Codebasis
Aufgaben:
-
Entwicklung einer hochflexiblen
PDF-Generierungslösung inklusive
Voransicht und Validierung der
logischen Dokumentenstruktur.
-
Architekturentwurf &
Konzeption, Konzeption für
eine Dokumentengliederung
und Erstellung einer
XML-Grammatik (Domain
Specific Language) zur
Beschreibung der
Dokumentenstruktur
-
Implementierung und
Unittests
-
Integration in Desktop- und
Webversion des
Angebotsprogrammes
-
Weiterentwicklung der
Plattformarchitektur und
Implementierung der Desktop- und
Webversion, insbesondere der
Prozessengine und der generischen
Dialogablaufsteuerung
-
J2EE Entwicklung für die Webversion
-
Know How Transfer und Schulung der
internen IT-Mitarbeiter der WWK
Tools & Umgebung:
Bea Weblogic 6, TogetherJ, Eclipse 2, EJB,
MessageDriven EJBs, Stateless Session Beans,
Swing, Apache FOP, XML, XSLT, XSL-FO, XSD
(XML Schema), Dom4j, JDOM, XMLSpy, Apache
Maven 1, ANT; JUnit
Projektname: AVANTI
|
|
November 2001 – Februar
2002
Rolle: Developer
Kunde: Arsdigita (RedHat)
Standort: München
Dauer: 4 Monate
|
Aufbau eines kundenspezifischen
browserbasierten Workflow- und CMS Systems
für das Intranet der deutschen Post
Tools & Umgebung:
Netbeans, Perforce, ANT, XSLT,
XML
|
|
August 2001 – Oktober 2001
Rolle: Trainer
Dauer: 3 Monate
|
Konzeption und Durchführung eines EJB 2.0
Lehrganges für die Mitarbeiter der Firma
Wistec
Tools &
Umgebung:
TogetherJ, Java, EJB / J2EE
|
|
Juni 2001- Juli 2001
Rolle: Developer
Dauer: 2 Monate
|
Konzeption und Erstellung einer
fehlersicheren
Server-Daten-Transferkomponente in Java 2
-
u.a. Einsatz von Servlets und des
JNI für eine C++-Schnittstelle
(Protokolle: HTTP, HTTPS, FTP, POP3,
SMTP)
-
Übertragung, Synchronisierung und
Abruf von Daten über die oben
-
genannten Protokolle
Tools &
Umgebung:
TogetherJ, CVS, Java,
JavaMailAPI
|
|
Januar 2001 – Mai 2001
Rolle: Developer & Architekt
Kunde: SKL Holzscheiter
Dauer: 5 Monate
|
Entwicklung eines Lotterie-Online-Shops in
Java auf Apache Tomcat
-
Design des
Datenbankschemas
-
Umsetzung der
Persistenzschicht in Java
-
Umsetzung der Businesslogik als
Services mit u.a.
-
Implementierung von
Bestellvorgängen
-
Anbindung von
Kreditkartenzahlung
-
Versenden von Bestätigungs-
und Newslettermails mittels
JavaMail API
-
Frontendentwicklung
Tools & Umgebung:
Linux, MySQL-Datenbank,
Tomcat/Apache, PowerDesigner, TogetherJ,
JSP, JSTL, Java, JavaMailAPI
|
|
Mai 2000 – Dezember 2000
Rolle: Developer
Dauer: 8 Monate
|
Entwicklung und Konzeption einer
3D-Community in Java auf einem Linux-System
-
Basierend auf Blaxxun-Plattform
-
Java für die Umsetzung von Aktionen
und Services
-
VRML für die Erweiterung der 3D-Welt
Tools & Umgebung:
VRML, CVS, Java
|
|
März 1998 – September 1998
Rolle: Developer
Dauer: 7 Monate
|
Erstellung eines Reportgenerator-frameworks
für Java2 Applikationen
Tools & Umgebung:
Kawa, Java2, CVS
|
|
|