Senior Java Developer, Full Stack
Aktualisiert am 11.02.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.03.2024
Verfügbar zu: 100%
davon vor Ort: 100%
Java seit 1996
Clean Code
Clean Architecture
Hibernate
Software Developer
Swing
Software Architect
Eclipse SWT
Spring
JetBrains IntelliJ IDEA
Deutsch
Muttersprache
Englisch
fließend
Französisch
gut

Einsatzorte

Hamburg (+200km) Stade (+150km)

Deutschland: Nur im Raum Hamburg oder Schleswig-Holstein.

möglich

Projekte

5 Jahre 6 Monate
2018-08 - heute

Weiterentwicklung einer Java Eclipse RCP/Swing Anwendung (Logistik)

Software-Entwickler, Architekt (RCP/Swing Client) Java Spring RCP ...
Software-Entwickler, Architekt (RCP/Swing Client)

Weiterentwicklung und Pflege einer Eclipse RCP Anwendung im Logistikumfeld. Die Anwendung dient als Plattform für per OSGi angebundene Kundenmodule (die wiederum eigene Anwendungen darstellen). Sie umfasst ca. 160.000 Codezeilen und läuft auf ca. 40.000 Client-Rechnern. Die Anwendung wird über eine weitere, eigens implementierte Service-Anwendung auf den Client-Rechnern ausgeliefert. 

  • Erfassung von Änderungswünschen und Fehlerberichten für die Anwendungen in Atlassian Jira.
  • Dokumentation der erforderlichen Prozesse im Wiki.
  • Implementation der Anforderungen in Java mit IntelliJ Idea.
  • Überwachung, Wartung und Weiterentwicklung der Continuous Integration auf Jenkins.
  • Unregelmäßige Erstellung und Veröffentlichung von Releases der RCP Anwendung.
  • Integration der Bibliothek JxBrowser zur Anbindung von Kundenmodulen, die als Web-Anwendung implementiert sind

Jetbrains IntelliJ IDEA Nexus Jira Bitbucket Confluence Windows 10 SonarQube Jenkins Angular JxBrowser Tycho
Java Spring RCP Eclipse SWT OSGi Clean Code Clean Architecture Git Maven
Logistik
Hamburg
7 Jahre 6 Monate
2016-08 - heute

Weiterentwicklung einer Java Client/Server Anwendung (Logistik)

Software-Entwickler, Architekt (Full Stack) Java Spring Hibernate ...
Software-Entwickler, Architekt (Full Stack)

Weiterentwicklung einer umfangreichen Java/Spring Swing-Anwendung im Logistikumfeld. Die Anwendung umfasst ca. 3,5 Millionen Codezeilen und läuft auf ca. 40.000 Client-Rechnern. Das Backend läuft auf dynamisch skalierenden Server-Instanzen.

  • Die Anwendung ist in Unterprojekte gegliedert, für jedes Unterprojekt ist ein Team von ca. 10 Entwicklern zuständig. Insgesamt arbeiten ca. 100 Entwickler in dem Projekt. 
  • Full Stack ? Entwicklung neuer Funktionen, sowohl im Frontend (UI: Swing, Angular) wie auch im Backend (Java Spring Services, JPA, Hibernate, Oracle, Tomcat 7), inklusive der erforderlichen Unit-Tests. Beheben von Fehlern.

Jetbrains IntelliJ IDEA Git Maven Nexus Jira Bitbucket Confluence Windows 10 Oracle Tomcat SonarQube Jenkins Angular
Java Spring Hibernate Swing JxBrowser Angular Clean Code Clean Architecture
Logistik
Hamburg
8 Jahre 5 Monate
2015-09 - heute

Entwicklung einer Java-Anwendung zur Simulation von Handelssystemen für Finanzinstrumente (Aktien, Futures, Forex)

Java SE 17 IntelliJ Idea Spring Boot ...
  • Clean Code ? Funktionaler Programmierstil (fast alle Objektinstanzen sind unveränderlich)
  • Durchgängige Einhaltung der SOLID Prinzipien
  • Umfang der Anwendung: ca. 100.000 Lines of Code, ca. 1.800 Unit Tests. Laufzeit aller Tests ca. 12 sec.
  • Konfiguration der Anwendung mittels Spring Boot Profile
  • Entwicklung neuer Funktionen inklusive der erforderlichen Unit-Tests
Java SE 17 IntelliJ Idea Spring Boot Mockito Git Gradle Maven TeamCity
Börsenhandel
1 Jahr 5 Monate
2015-02 - 2016-06

Weiterentwicklung einer umfangrei­chen Java/Java EE Web-Anwendung

Software-Entwickler
Software-Entwickler
  • Die Anwendung ist in Unterprojekte gegliedert, für jedes Unterprojekt ist ein Team von ca. 5 ? 10 Entwicklern, 2 ? 5 Requirement Engineers und Business Stakeholdern zuständig. Insgesamt arbeiten ca. 100 Entwickler in dem Projekt.

  • Full Stack ? Entwicklung neuer Funktionen, sowohl im Frontend (UI: JSF, HTML, CSS) wie auch im Backend (Java EE Services, EJBs, JPA, EclipseLink, Oracle, GlassFish 3), inklusive der erforderlichen Unit-Tests. Beheben von Fehlern. Dokumentation der Implementierung.

Java SE 1.7 Java EE 6 JSF HTML CSS Oracle EclipseLink GlassFish 3 Google Chrome SonarQube ClearQuest Jenkins Gradle Git/Gerrit IntelliJ Idea Eclipse
Logistik
Hamburg
4 Monate
2014-09 - 2014-12

Evaluierung der Eignung aktueller Java-basierter Web-Rahmenwerke zur Realisierung einer mobilen Single Page App (SPA)

Java SE 1.7 1.8 GWT ...
  • Bei dieser Untersuchung aktueller Java-basierter Web-Rahmenwerke wurden die derzeitigen Möglichkeiten zur Implementierung einer Single Page App in Java bewertet

Java SE 1.7 1.8 GWT Vaadin Spring MVC Spring Security Spring Social OAuth2 Gradle Git IntelliJ Idea
Mobile
1 Jahr 8 Monate
2012-11 - 2014-06

Weiterentwicklung einer Client/Server Enterprise-Anwendung mit Swing GUI

Java SE 1.6 Swing Jide ...
  • Die bestehende Enterprise-Anwendung zur Planung und Optimierung von Kraftwerkseinsätzen wird um ein neues Modul zur Planung von Stillständen (Revisionen, Störfälle etc.) erweitert 
  • Hierfür werden neue GUI-Ansichten (GUI-Schicht), Service-Methoden (Geschäftslogik) und Entitäten (Persistenzschicht) entwickelt
  • Die Entwicklung der Anwendung erfolgt vor Ort in enger Abstimmung mit dem Anwender
  • Die Unterstützung des Anwenders im laufenden Betrieb gehört ebenfalls zum Aufgabenfeld
Java SE 1.6 Swing Jide Oracle Weblogic 12 Application-Server Oracle H2 SQL Spring iBatis MyBatis Persistenz-Framework RMI JMS Subversion V Jenkins Build-Server BoFiT Gurobi IntelliJ Idea Eclipse
Energieversorger
3 Jahre 8 Monate
2009-04 - 2012-11

Entwicklung und Ausführung eines Handelssystems zur Abwicklung von Devisengeschäften

MultiCharts (PowerLanguage) OpenQuant (C#) IntelliJ Idea ...
  • Ein Prototyp des Handelssystems wird auf der Plattform MultiCharts in der Programmiersprache PowerLanguage entworfen. Auf dieser Plattform findet auch die Überprüfung mittels historischer Kursdaten statt.
  • Die Validität des Handelsmodells und die fachliche Funktionalität wird im Prototypen sichergestellt. Zur Ausführung von Handelsgeschäften ist MultiCharts jedoch nicht ausreichend. Daher wird das Handelssystem auf der Zielplattform OpenQuant in der Programmiersprache C# neu entwickelt. Die Ausführung der Handelsgeschäfte wird in Echtzeit überwacht.
  • Zum Abruf der historischen Kursdaten wird ein Java-Programm entwickelt. Die Entwicklung erfolgt mit der Entwicklungsumgebung IntelliJ Idea. Die Kursdaten werden als persistente Beans in der SQLDatenbank H2 gespeichert.
  • Zur Vereinfachung des Umganges mit der Datenbank kommt das Apache Commons Framework DBUtils zum Einsatz. Die Daten liegen in sekundengenauer Auflösung vor. Aufgrund der hieraus resultierenden großen Mengen an Daten sind zahlreiche Maßnahmen zur Sicherstellung einer hohen Performance nötig. Das Datenmodell ist besonders platzsparend und effizient ausgelegt. Die Daten werden nicht nur über verschiedene Tabellen verteilt, sondern auch in nach Zeiträumen unterteilte Datenbanken abgelegt.

MultiCharts (PowerLanguage) OpenQuant (C#) IntelliJ Idea H2 SQL DBUtils (Apache Commons Framework)
Interbankenhandel
6 Monate
2008-10 - 2009-03

Automatisierter Herstellertest für eine Web-Anwendung

Java SE 5 HttpUnit JUnit ...
  • Neuentwicklung von automatisierten Herstellertests mit Java SE 5 für eine J2EE-Web-Anwendung (Plattform: IBM WebSphere, Rapid Application Developer (RAD)). Die Anwendung wird von Banken genutzt und dient der Bonitätsbewertung von Finanzierungen (Rating).
  • Zur Prüfung der Funktionalität wird das Rahmenwerk HttpUnit verwendet. Es werden Dialogabläufe sowie Feldinhalte und -zustände überprüft. Die Testdaten werden für den Herstellertest in XML angelegt.
  • Außerdem findet noch eine weitere Form des Tests statt, in dem die Ergebnisse von Berechnungen der Anwendung mit vom Kunden gelieferten Testdaten abgeglichen werden. Hierbei werden die Testdaten über eine Microsoft Access-Datenbank eingelesen und automatisch gegen die Rechenergebnisse der GUI geprüft.
Java SE 5 HttpUnit JUnit DBUnit JavaDoc Mercury Quality Center Log4J Apache Commons Microsoft Access Eclipse Oxygen CVS Ant Wiki
Finanzdienstleistungen
7 Monate
2008-02 - 2008-08

Architektur & Integration für eine Logistikanwendung

Maven 2 Java SE 6 MagicDraw 15 ...
  • Entwicklung einer Komponente zur Messung der Performance einer performancekritischen Logistikanwendung für Containerhäfen. Die Anwendung ist stark heterogen und verteilt. Die Kommunikation erfolgt über JMS (Java Message Service).
  • Zur Überwachung der Performance werden die JMS-Nachrichten zusammen mit ihren Sendezeiten mittels JPA (Java Persistence API) und Hibernate in einer Oracle-Datenbank gespeichert. Die primär eingesetzten Programmiersprachen sind Java 6 und C#. Das Projekt wird mit Maven 2 gebaut, geringfügig werden Ant-Skripte eingesetzt.
  • Das Projekt ist in Komponenten (Bundles, Services) im Sinne einer OSGi-Anwendung aufgeteilt. Die Komponenten werden mit Spring konfiguriert.
  • Die Builds werden mit CruiseControl gesteuert. Programmteile werden aus mit MagicDraw 15 erstellten UML-Modellen in Verbindung mit OpenArchitectureWare 4 generiert. Die OSGi-Komponenten werden mit Spring konfiguriert.

Maven 2 Java SE 6 MagicDraw 15 OpenArchitectureWare 4 Spring Oracle Hibernate JPA Java Persistence API JMS Java Message Service Subversion Junit Log4J Apache Commons IntelliJ Idea 7 Eclipse 3.4 CruiseControl Ant Jira Test Track Pro
Logistik

Aus- und Weiterbildung

2003

Universität Hamburg

Studium der Informatik

Abschluß: Diplom-Informatiker

Position

Senior Softwarearchitekt/-entwickler (Full Stack)

Kompetenzen

Top-Skills

Java seit 1996 Clean Code Clean Architecture Hibernate Software Developer Swing Software Architect Eclipse SWT Spring JetBrains IntelliJ IDEA

Schwerpunkte

Softwareanalyse, -design und -implementierung
Code-Reviews
Qualitätssicherung
Clean Code
Refactoring

Produkte / Standards / Erfahrungen / Methoden

ClearQuest
CSS
Eclipse
EclipseLink
Gradle
HTML
IntelliJ Idea
Jenkins
JSF
SonarQube

Profil

Der Freelancer, Jahrgang 1972, konzipiert und entwickelt seit 1996 selbständig Java-Anwendungen. Besonderes Augenmerk legt er auf Clean Code, SOLID-Prinzipien, Refactoring und Test Driven Development. Er bevorzugt einen funktionalen Programmierstil.

Seit 1994 entwickelt er professionell Software und verfügt in diesem Bereich über umfangreiche Erfahrung. Bei der Durchführung einer Vielzahl von Projekten sowohl eigen­ver­ant­wortlich als auch im Team hat er fundiertes Wissen über zahlreiche Technologien, Programmiersprachen und Rahmenwerke erlangt. Methodisches Arbeiten und der Einsatz etablierter Techniken der Softwareentwicklung (z.B. Agiler Prozeß, Entwurfsmuster, UML, Refactoring und automatisierte Tests) ist für ihn selbstverständlich.

Die Konzeption und Entwicklung von Java-Anwendungen betreibt er bereits seit 1996, seit 1999 stellt sie den Schwerpunkt seiner Tätigkeit dar. Mit den vielfältigen für die Softwareentwicklung wichtigen Werkzeugen, wie Entwicklungsumgebungen, Versionsverwaltungssystemen und Modellierungswerkzeugen ist er bestens vertraut.


Technische Schwerpunkte

  • Java Experte, Erfahrung seit 1996
  • Clean Code, SOLID-Prinzipien, funktionaler Programmierstil
  • Refactoring, Test-Driven Development
  • Continuous Integration & Delivery


Frameworks & Tools

  • IntelliJ Idea
  • Spring/Spring Boot, Google Guice
  • Swing, SWT, Eclipse RCP, Tycho, Vaadin, CUBA, HTML/CSS, Bootstrap, Angular
  • Maven, Gradle, Git, Jira, Jenkins


Themen

  • Agile, Scrum
  • Full Stack, Rapid Web Application Development
  • Geschäftsanwendungen, Handelssysteme, Quantitative Finance (Quant Developer) 


Erfahrungen im Bereich

  • Softwareentwicklung, Anwendungsentwicklung
  • Entwicklung von Anwendungen mit grafischer Benutzungsoberfläche (GUI)
  • Entwicklung von Internet-Anwendungen
  • Spezifikation, Programmierung, Test, Dokumentation
  • Datenbanken

Methoden
  • Objektorientierte Analyse & Design
  • Objektorientierte Programmierung
  • Entwurf relationaler Datenmodelle
  • Datenbank-Design

Standards & Produkte
  • Unified Modeling Language (UML)
  • Java-Kern: Java, J2EE, JSP, EJB, J2ME
  • Grafische Oberflächen: Swing, SWT, AWT, VCL, Win32 API
  • Entwicklungsumgebungen (Java): IntelliJ Idea, Eclipse, JBuilder, Netbeans
  • Entwicklungsumgebungen (Object Pascal): Borland Delphi
  • Datenbankbereich: SQL, MySQL, ODBC, JDBC
  • Dokumentformate: HTML, XHTML, CSS, XML, XSL, XSLT, SGML
  • Weitere Programmiersprachen: Pascal, C, C++, PHP, Perl, Python
  • Weitere Standards: WWW, HTTP, CGI, TCP/IP, FTP, ActiveX
  • Versions­verwaltungs­sys­teme: CVS, Subversion

Spezialkenntnisse
  • Diplomarbeit : gerne auf Anfrage
  • Entwicklung einer Online-Datenbank für Stellenangebote mit PHP und MySQL   Design, Programmierung, Datenbank-Anbindung, Wartung
  • Entwicklung einer Windows-Anwendung zur Steuerung eines 2D-Laserscanners in Delphi   Design, Programmierung, Wartung


Spezielle Kenntnisse

Java (seit 1996)

  • Java-Versionen, JDK 1.0 bis Java 15, Java EE, J2EE, JSP (JavaServer Pages), Servlets, Spring Core, Spring MVC, Spring Security, Spring Social
  • Hibernate, JPA (Java Persistence API), AWT, Swing, SWT, JFace, Eclipse RCP, Tycho, JDBC, GWT (Web-GUI), Vaadin (Web-GUI + Backend)
  • CUBA, Struts, Taglibs, JSF (Java Server Faces), Java Cryptography, GCJ (Gnu Compiler for Java), Excelsior Jet (Nativer Compiler für Java), JAXP (Java API for XML Processing)
  • JDOM (Java Document Object Model), MDR (Meta Data Repository), Jakarta Log4J, JUnit, Java Regular
  • Expressions, Java 2D, Piccolo, Jazz (ZGUI Rahmenwerke), JFreeChart (Visualisierung von Daten), JNI (Java Native Interface)


Markup-Sprachen 

  • XHTML
  • HTML
  • CSS
  • XML
  • XSL
  • XSLT (XML Stylesheets)
  • SGML
  • Bootstrap


Modellierungswerkzeuge

  • Together
  • Visual Paradigm for UML
  • Rational Rose
  • XDE
  • MagicDraw

Betriebssysteme

MS-DOS
Unix
Linux, Solaris
Windows
10, 7, Vista, ?, 3.1

Programmiersprachen

Assembler
80x86
Basic
Gute Kenntnisse
C
Gute Kenntnisse
C++
Gute Kenntnisse
Delphi
Umfassende Projekterfahrung
Java
Umfassende Projekterfahrung
Java EE 6
Java SE 1.7
JavaScript
Umfassende Projekterfahrung
Modula-2
Gute Kenntnisse
Mumps
Gute Kenntnisse
Oberon
Gute Kenntnisse
Pascal
Umfassende Projekterfahrung
PHP
Umfassende Projekterfahrung
Shell
Gute Kenntnisse
TeX, LaTeX
Gute Kenntnisse
C#
Easylanguage
Powerlanguage
Borland Delphi
VCL Rahmenwerk
STL
Win32 API
.Net Ramenwerk
HTML 5
CSS 3
jQuery

Datenbanken

Access
Gute Kenntnisse
BDE
Sehr Gute Kenntnisse
DB2
Gute Kenntnisse
JDBC
Umfassende Projekterfahrung
MySQL
Umfassende Projekterfahrung
ODBC
Gute Kenntnisse
Oracle
Umfassende Projekterfahrung
Paradox
Gute Kenntnisse
SQL
Umfassende Projekterfahrung
H2
HSQLDB
MariaDB
Borland Database Engine (BDE)
db4o (Objektorientierte Datenbank)

Datenkommunikation

Internet, Intranet
ISO/OSI
TCP/IP
RMI
Serielle Schnittstelle
JMS (Java Message Service)

Hardware

Hardware entwickelt
16-Bit Mikroprozessor mit Pipeline auf FPGA in AHDL
Messgeräte
Konfigurationssoftware für 180° Hochgeschwindigkeits-Laserscanner
PC
i80486 und i80487 Assembler
PLD, FPGA
Entwicklung eines 16-Bit Mikroprozessor mit Pipeline auf FPGA in AHDL
Sensoren
Konfigurationssoftware für 180° Hochgeschwindigkeits-Laserscanner

Berechnung / Simulation / Versuch / Validierung

Simulation von Handelssystemen für Börsengeschäfte (Futures, Aktien, Devisen)
Entwicklung einer Simulationssoftware in Java für die Simulation von Futures-Geschäften an der EUREX in Tick-Genauigkeit

Design / Entwicklung / Konstruktion

UML
Spezifikation und Implementation des Standards "Diagram Interchange for UML"
IntelliJ Idea
Eclipse
Netbeans
Borland Delphi
MS Visual Studio .NET
Oxygen


Branchen

  • Logistik
  • Finanzen
  • Börse
  • Industrie
  • Verlage
  • Energieversorgung

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.