Full Stack Software Development
- Verfügbarkeit einsehen
- 1 Referenz
- 90€/Stunde
- 13187 Berlin
- auf Anfrage
- de | en
- 22.04.2023
Kurzvorstellung
Auszug Referenzen (1)
"Ich habe sowohl als Kollege als auch als Vorgesetzter immer gerne mit R. zusammengearbeitet. Sowohl fachlich als auch menschlich."
1/2014 – 1/2019
Tätigkeitsbeschreibung
Die Zeit im deutschen Quellmarkt der TUI Deutschland GmbH stand im Zeichen von Micro Services und Web Komponenten als Migrationspfad von einer bestehenden monolithischen Architektur. Dazu war ich maßgeblich an der Konzeption der Frontend-Architektur inklusive Event Bus beteiligt, die flexible Web Komponenten ermöglicht, die länderübergreifend innerhalb der TUI eingesetzt werden können (-Hyperlink entfernt-). Als Frontend-Technologien haben wir dabei, je nach Komplexität der Komponente, React.js oder pures Java Script benutzt. Herzstück der Frontend-Architektur ist ein in Java Script geschriebener Event Bus, der die Unabhängigkeit der Komponenten mittels einer Event-API garantiert.
Ich war hier sowohl inhouse, als auch bei externen Dienstleistern und Teams anderer Länder und TUI-Marken für die Vermittlung der Architektur und Konzepte über den gesamten Stack hinweg zuständig.
Für die Middle Layer der Komponenten und die dahinter liegende Micro Service Landschaft kamen Node.js, Go und Java zum Einsatz. Hier habe ich neben der Umsetzung auch am Design der REST-APIs mitgewirkt.
Desweiteren habe ich bei der Gestaltung des Build-Prozesses unterstützt und z.B. das Bauen der Software-Artefakte im Docker-Container inkl. Ausführung der Testsuiten (vor allem Acceptance- und Integrations-Tests von REST-APIs) maßgeblich mit konzipiert. So konnten wir die Jenkins-Buildumgebung unabhängig der in den Artefakten eingesetzten Technologien gestalten und die OPs-Teams entlasten.
Über die Zeit bin ich für die internen Entwicklungsteams zum zentralen Ansprechpartner bezüglich Komponentenarchitektur, Softwaredesign und genereller Fragestellungen bei der Softwareentwicklung geworden. Auch die Business-Seite unterstütze ich bei technischen Fragestellungen und der Kommunikation in die Teams.
Freiwillig habe ich zudem die Mentorenschaft für einige neue Mitarbeiter und die Weiterbildung von Junior-Entwicklern übernommen.
Docker, Go (Programmiersprache), Java (allg.), Node.Js, JavaScript, React (JavaScript library)
Qualifikationen
Projekt‐ & Berufserfahrung
1/2014 – 1/2019
Tätigkeitsbeschreibung
Die Zeit im deutschen Quellmarkt der TUI Deutschland GmbH stand im Zeichen von Micro Services und Web Komponenten als Migrationspfad von einer bestehenden monolithischen Architektur. Dazu war ich maßgeblich an der Konzeption der Frontend-Architektur inklusive Event Bus beteiligt, die flexible Web Komponenten ermöglicht, die länderübergreifend innerhalb der TUI eingesetzt werden können (-Hyperlink entfernt-). Als Frontend-Technologien haben wir dabei, je nach Komplexität der Komponente, React.js oder pures Java Script benutzt. Herzstück der Frontend-Architektur ist ein in Java Script geschriebener Event Bus, der die Unabhängigkeit der Komponenten mittels einer Event-API garantiert.
Ich war hier sowohl inhouse, als auch bei externen Dienstleistern und Teams anderer Länder und TUI-Marken für die Vermittlung der Architektur und Konzepte über den gesamten Stack hinweg zuständig.
Für die Middle Layer der Komponenten und die dahinter liegende Micro Service Landschaft kamen Node.js, Go und Java zum Einsatz. Hier habe ich neben der Umsetzung auch am Design der REST-APIs mitgewirkt.
Desweiteren habe ich bei der Gestaltung des Build-Prozesses unterstützt und z.B. das Bauen der Software-Artefakte im Docker-Container inkl. Ausführung der Testsuiten (vor allem Acceptance- und Integrations-Tests von REST-APIs) maßgeblich mit konzipiert. So konnten wir die Jenkins-Buildumgebung unabhängig der in den Artefakten eingesetzten Technologien gestalten und die OPs-Teams entlasten.
Über die Zeit bin ich für die internen Entwicklungsteams zum zentralen Ansprechpartner bezüglich Komponentenarchitektur, Softwaredesign und genereller Fragestellungen bei der Softwareentwicklung geworden. Auch die Business-Seite unterstütze ich bei technischen Fragestellungen und der Kommunikation in die Teams.
Freiwillig habe ich zudem die Mentorenschaft für einige neue Mitarbeiter und die Weiterbildung von Junior-Entwicklern übernommen.
Docker, Go (Programmiersprache), Java (allg.), Node.Js, JavaScript, React (JavaScript library)
10/2012 – 9/2014
Tätigkeitsbeschreibung
Bei AdClear habe ich das Java-Backend zur Aggregation und Transformation der Trackingdaten übernommen. Der Fokus liegt neben der Featureentwicklung auf der Restrukturierung der Software um den monolithischen Ansatz in testbare und wartbare Module zu gliedern. Dabei wird ein großer Teil des bestehenden Codes nach und nach in eine serviceorientierte Architektur überführt um die Businesslogik überschaubar und wiederverwendbar zu gestalten.
● Refactoring des Legacy-Codes, überführung in Business-Module und danach in eine SOA
● Feature-Entwicklung
○ Integration von Offline-Werbedaten in die bestehende Datenaggregation
○ Implementierung neuer Attributionsmodelle nach Vorgaben einer Statistikagentur
○ Implementierung segmentierter Datenaggregation (Wrappen der kompletten
Aggregationslogik in einer Segmentierungsschicht)
● Operatives Geschäft (nachvollziehen der entstehenden Daten für die Produktabteilung,
Neuaufbereitung der Daten nach Modifikationen an den Aggregationsregeln)
● Entwicklung der internen Prozesssteuerung zusammen mit dem CTO (Scrum)
Mongodb, Mysql, Apache Maven, Subversion, Java (allg.), Spring Framework
1/2012 – 9/2012
Tätigkeitsbeschreibung
Logging – Lead Development
● Framework Komponente für Business Logging in verschiedenen Services der bestehenden SOA
● Logging-Zuordnung über einheitliche TransactionID (Weitergabe erfolgt über Headerdaten der HTTP-Requests)
● Loggingeinträge in die CouchDB (HTTP Calls über Spring-REST-Template) mit Fallback auf Logging-Dateien bei Verbindungsproblemen
Request Collector – Lead Development
● Verarbeitung von Requests über verschiedene Services der bestehenden SOA hinweg mit dem Collector - Dispatcher Prinzip
● Persistierung der Requests zur Wiederholung fehlgeschlagener Requests bzw. für manuelles Nachvollziehen (Mixed Persistence mit Request-Header für Transaktionssicherheit in MySQL und Request-Body in CouchDB)
ERP-Anbindung – Lead Development | Projectdevelopment
● Infrastruktur für die Anbindung des ERP-Systems Comarch via SOAP
○ Generierung der Proxyklassen mittels Maven
○ Clients für den Aufruf der jew. SOAP-Schnittstellen
○ Konfiguration über Maven / Properties Dateien und Spring-Beans
● Mapper für die Umwandlung der Daten des hauseigenen Produktionssystems in SOAP Objekte (teilweise mittels Reflection um die schlechte Wiederverwendbarkeit der SOAP-Proxyklassen zu umgehen)
● Administration des Comarch ERP Systems zur Erstellung der Schnittstellen und zum Monitoring der Datentransfers
Mongodb, Mysql, Java (allg.)
12/2008 – 12/2011
Tätigkeitsbeschreibung
Lead Developer GWT-Framework
Die Feature-Entwicklung des Frameworks war nach Schaffung der Grundlagen projektgetrieben. Der Code musste daher robust und flexibel gehalten sein um Erweiterungen und Refactoring ohne große Gefahr für die bestehenden Bereiche zu verkraften.
Dies wurde vor allem durch einen modularen Ansatz mit sehr kleinen Komponenten erreicht. Die Komponenten können leicht mit Unittests abgesichert und dann durch Dependency Injection zu größeren Einheiten kombiniert werden.
Das Framework erfüllt unter Anderem folgende Anforderungen:
● schnelle und einfache Erstellung einer großen Menge generischer Weboberflächen zur
Stammdateneingabe
● Customizing-Möglichkeiten für spezialisierte Views zur Lösung komplexer
Anwendungsfälle
● Kapselung der Datenzugriffe über das MVC Pattern (View-Programmierung beschränkt
sich auf Workflowsteuerung, Anbindung an Daten über Konfiguration statt
Programmierung)
● generische Validierung über Metadatenbeschreibungen der Datenfelder, Customizing für
spezielle Validierung (eingeschränkte Nummernbereiche, RegEx) über einfaches Einklinken in die Validierungsschicht, die Validierungsergebnisse können über komplexe Steuerelementhierarchien propagiert werden und beeinflussen beliebige Teile des Views (TreeViews, Tabviews, Menübuttons, gesonderte überprüfung einzelner Zustände über Viewcontroller)
● Bereitstellung grundlegender Steuerelemente, sowie einer leicht zu konfigurierenden Suggestbox zur Suche in komplexen Datenstrukturen (mehrere Felder in verschiedenen Tabellen)
Postgresql, Wildfly, C#, Hibernate (Java), Java (allg.)
1/2008 – 11/2008
TätigkeitsbeschreibungFeature Entwicklung innerhalb der Designsoftwarelösung für den Flugzeug- und Automobilbau.
Eingesetzte QualifikationenC#
7/2006 – 12/2007
TätigkeitsbeschreibungEntwicklung der hausinternen BugTracking Software.
Eingesetzte QualifikationenMysql, IIS, C#
Ausbildung
Berlin
Über mich
Als Full Stack Entwickler kann ich sowohl Komplettlösungen konzipieren und umsetzen, als auch auf Frontend oder Backend fokussieren.
Meine Erfahrung hilft mir dabei auch komplexe Systemlandschaften schnell zu verstehen und weiterzuentwickeln. Dabei finde ich Migrationspfade um neuen User Value zu schaffen, während Stabilität und Time to Market verbessert werden, ohne die bestehenden Funktionen existierender Lösungen zu verlieren.
Weitere Kenntnisse
* System Architecture (Micro Frontends & Services | APIs)
* Software Design (Clean Code | KISS | SOC | DI | ...)
* Design of Migration Paths (flexibility | stability | time to market)
* Test / Behaviour Driven Development
* Agile Development (kanban | scrum | lean development)
* Rapid Adaptation | Teamwork | Communications | Creativity
Persönliche Daten
- Deutsch (Muttersprache)
- Englisch (Fließend)
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden