avatar

Senior JavaScript Frontend Entwickler ( React / Redux / Webpack / Material-UI / ... )

Score
100%
Experience:
13 y
Score
100%
Experience:
13 y
Location:
24226 Heikendorf
Last update:
21.04.2021
Register to Contact Freelancer
Available
Onsite hourly: 80 €
Remote hourly: N/A
German: Native
English: Advanced
Eine Einarbeitung vor Ort ist möglich, während der Projektlaufzeit arbeite ich jedoch remote.
SKILLS
Ich bin sehr versiert bei der Umsetzung von komplizierten und vielschichtigen UIs sowie Anwendungs- und Businesslogik als SPAs. Flexibilität und zügige Einarbeitung in bestehende Strukturen gehören zu meinen Stärken. Darüber hinaus stehe ich beratend zur Seite, um mit meiner Erfahrung lösungsorientierte Entscheidungen zu treffen. 

In meinem letzten Hauptprojekt benutzte ich React. Der komponentenzentrierte Ansatz von React hat sich für mich bewährt. In Kombination mit Redux entsteht eine skalierbare, einfach testbare und wiederverwendbare Architektur.

Skills
  • JavaScript: Experte
  • React: Experte
  • Redux / Redux-Saga: Experte
  • Ramda: Sehr gute Kenntnisse
  • Material Design / Material-UI: Sehr gute Kenntnisse
  • Jest / Ava: Sehr gute Kenntnisse
  • Webpack: Sehr gute Kenntnisse
  • Gulp: Sehr gute Kenntnisse
  • node.js: Sehr gute Kenntnisse
  • D3.js: Sehr gute Kenntnisse
  • jQuery: Sehr gute Kenntnisse
  • three.js: Sehr gute Kenntnisse
  • AST / CST / Babel / Recast: Gute Kenntnisse
  • Universal JS: Gute Kenntnisse
  • Rollup.js: Grundkenntnisse
Ausbildung
  • 10/2008 - 12/2011 Master of Science (Informatik), Universität zu Lübeck
  • 10/2004 - 03/2008 Bachelor of Science (Technische Informatik), HS Ulm
Aufgabenbereiche
  • Software-Architekt
  • Software-Entwicklung
  • Teamleiter
Branchen
  • Digital Workplace / Digitalisierung
  • Intranet
  • Handel
  • Blockchain
  • Wissenschaft und Forschung
  • Online-Marketing
  • 3D Druck
  • IT
Unit-Tests API Model Driven Node.js Java Spring XML React.js CSS Webpack HTML jQuery Bootstrap Profiling GIS Gulp ExtJs Analytics Backend Sass three.js Browserify dynamisches System Git Software-Entwicklung WebGL Informatik Technische Informatik Responsive Design automatisierte Tests Testabdeckung AngularJS Teilsysteme ReactJs Blockchain Material Design React Mercurial JavaScript Codebasis NodeJS d3.js Single Page Application
01.01.2018 — Now
Blockchain Applikation
* Kunde: Blockchain Holding GmbH * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript (Babel), React, Material-UI, Redux, Redux-Saga, Ramda, React-Spring, Sass, Webpack, Jest, Git Eine Blockchain Applikation von der Idee bis zum fertigen Produkt. Es werden die Performancewerte der Rechenleistung und des finanziellen Erfolges eines Nutzers dargestellt. Einerseits werden die Werte und Informationen für den schnellen Überblick auf der Basis des gesamten Useraccounts aufbereitet, andererseits ist eine detaillierte Ansicht für die verschiedenen Kryptowährungen vorhanden. Durch Responsive Design kann der Benutzer auf den unterschiedlichen Endgeräten alles im Blick behalten. * Anforderungsanalyse mit dem UX Designer * Überführung der Anforderungen in technische Problemstellungen * Starke Beteiligung am UI Designprozess, um die Balance zwischen Ästhetik und Entwicklungsdauer zu garantieren * Abbildung der wiederkehrenden Designelemente auf wiederverwendbare React Komponenten für eine minimale Codebasis * Geteilte Projektstruktur, um die Wiederverwendung von Code über Projektgrenzen zu erweitern * Rapid Development durch Entkopplung von Backend und Frontend mit Hilfe eines Fake-Backend * Einsatz von detaillierter Dokumentation zur Sicherung der Kohärenz dieser beiden Teilsysteme
01.01.2016 — 31.12.2018
GIS GRAVITY
Software-Architekt und -Entwicklung
* Kunde: GIS Gesellschaft für InformationsSysteme AG * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript (Babel), React, Material-UI, Redux, Redux-Saga, Ramda, Sass, Webpack, stampit, Ava, Node.js, Gulp, Git Technische Konzeption und Entwicklung einer digitalen Arbeitsplatzlösung vom ersten Tag an. Zu den Zielen von GIS GRAVITY gehören intuitive Bedienung, Steigern der Produktivität und Vernetzung von Mitarbeitern über verschiedene Endgeräte und Standorte hinweg. Administratoren verwalten sowohl einzelne Seiten als auch, unterstützt durch Vorlagen, ganze Seitenstrukturen. In Kombination mit der Inhaltsverwaltung durch ein breites Spektrum von Widgets (News, Wiki, Kalender, ...), die zusätzlich ihren Inhalt auf konfigurierbare Weise darstellen, ergibt sich ein hochgradig dynamisches System. Damit wird GIS GRAVITY an die verschiedensten Kundenanforderungen angepasst. * React als komponentenzentriertes Frontendframework für eine komponentenorientierte Lösung * Einsatz von aktuellen und stabilen Werkzeugen für zukunftssichere Entwicklung * Entwicklung eines Backend-API-Client-Frameworks * Detailliert konfigurierbare Widgets zur Verwendung als Inhaltsblöcke * Storybook (Komponentenkatalog) zur fokussierten Entwicklung, für strukturelle Tests und als Schaukasten für Kunden * Maximale Qualitätssicherung durch hundertprozentige Testabdeckung * Erweiterung bestehender Werkzeuge für kompromisslose Individualisierung * Skalierbare Internationalisierungslösung, angepasst an Projektumgebung * Open Standard Architecture (Material Design), um Systemkombination und -integration zu ermöglichen * Responsive Design 2015: 3D Produkteditor * Rolle: Software-Entwicklung * Kunde: IronShark bzw. VOXELWORLD * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript, three.js, UniversalJS, jQuery, WebGL, stampit, Git, Gulp, Browserify, BrowserSync, tape Entwicklung eines Editors, der es ermöglicht, 3D Modelle von Produkten zu bearbeiten und anzusehen, die dann mit einem 3D Druckverfahren hergestellt werden. Dieser Editor läuft trotz seiner hohen Komplexität im Browser und besticht mit seinen vielfältigen Möglichkeiten der Individualisierung des Produkts durch den Benutzer. * Überführung von Anforderungen in technische Problemstellungen * 3D Editor mit three.js erstellt, der Produkt- und Benutzerkonfigurationen laden/speichern kann * Programmatische Manipulation von 3D Objekten live mit JS und zeitversetzt durch Interaktion mit dem Server * konfigurierbare 3D Szene für Licht/Schatten/Kamera/Zoom * UI-Komponenten für Individualisierungen von Farbe/Material/Größe/Textur/Beschriftung * Internationalisierung auf Client-Seite * Erstellung des Codes als node.js Module, Konvertierung für den Browser mittels Browserify * Verwendung des gleichen Codes für z.B. Validierung und Berechnung auf Client und Server (Universal JS) * Unit-Tests für Logikmodule Der Editor kann über den "Konfigurieren" Button eines Produkts aufgerufen werden, z.B. Windlicht Lys
01.01.2014 — Now
* Rolle: Software-Entwicklung * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript, Node.js, d3.js, AngularJS, three.js, Express, MEAN-Stack, stampit, Bootstrap, Sass, Mercurial Konzeption der Architektur und Entwicklung einer Fullstack-Anwendung mit MEAN. * Wizard-Eingabeoberfläche, wobei die Benutzereingabe durch synchronisierte Diagramme bzw. Eingabefelder hoch interaktiv und anschaulich gestaltet wurde * animierte Visualisierungen in 2D und 3D * hochgradig modulare Codestruktur Projekte: Festanstellung
01.01.2012 — 31.12.2015
SPA - Falk Technologies
Teamleiter Frontend, Senior Software Developer
* Branche: Online-Marketing * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript, ExtJs, d3.js, HTML, CSS Im Online-Marketing Bereich gibt es eine Vielzahl von Metriken für die Quantifizierung der angezeigten Werbung und die Reaktion des Besuchers. Angefangen mit Clicks und Views für die Wahrnehmung, über die Kosten z.B. CPC, bis zu Metriken wie den ROI für den Erfolg, wird alles aufgezeichnet zur späteren Analyse. Durch die maßgeschneiderte Technologieplatform von Falk Analytics kann der Kunde den Erfolg seiner Werbekampagne gezielt steuern. Die gesammelten Daten können vom Kunden in einer Single Page Application analysiert werden. Dazu erstellte ich mit d3.js eine Vielzahl von Diagrammen um die Daten grafisch aufzubereiten. Um den hohen Anforderungen an Intuitivität, Interaktivität und anpassbarem Design gerecht zu werden, wurden die Diagramme fast alle von Hand programmiert anstatt hauptsächlich auf eines der vielen d3.js Frameworks zu setzen. Dadurch konnten außer den gängigen Charttypen auch sehr spezielle entwickelt werden, die für die Domäne des Online-Marketings jedoch wesentlich bessere Einblicke bieten. Jeder Diagrammtyp kann als Komponente vom Benutzer in ein veränderbares Layout eingefügt werden. Daraufhin ist es ihm möglich verschiedene Eigenschaften des Charts und die anzuzeigenden Daten auf seine Bedürfnisse anzupassen. Neben Aussehen und Bedienbarkeit spielte die Geschwindigkeit eine wichtige Rolle, welche ich durch Profiling des JavaScript Codes sicher stellte. Um die Wartbarkeit zu gewährleisten, wurden von mir automatisierte Tests erstellt und gewartet. Zusätzlich zu meiner Rolle als Entwickler, wurde mir die technische Leitung des Frontend Entwicklerteams übertragen. In dieser Position wirkte ich beim Einstellungsprozess für neue Teammitglieder der verschiedenen Entwicklerteams mit.
01.01.2008 — Now
Itemis
Software Engineer
* Branche: Consulting zum Themenkomplex "Model Driven Development" * Technisches Umfeld: Java, XML * Einsatzort: Pforzheim/Stuttgart * Dauer: 4-5 Monate Für einen großen Automobil-Zulieferer wurde von mir ein XML-Konverter in der Sprache Java entwickelt. ZEITLICHE UND RÄUMLICHE VERFÜGBARKEIT

Description

SKILLS
Ich bin sehr versiert bei der Umsetzung von komplizierten und vielschichtigen UIs sowie Anwendungs- und Businesslogik als SPAs. Flexibilität und zügige Einarbeitung in bestehende Strukturen gehören zu meinen Stärken. Darüber hinaus stehe ich beratend zur Seite, um mit meiner Erfahrung lösungsorientierte Entscheidungen zu treffen. 

In meinem letzten Hauptprojekt benutzte ich React. Der komponentenzentrierte Ansatz von React hat sich für mich bewährt. In Kombination mit Redux entsteht eine skalierbare, einfach testbare und wiederverwendbare Architektur.

Skills
  • JavaScript: Experte
  • React: Experte
  • Redux / Redux-Saga: Experte
  • Ramda: Sehr gute Kenntnisse
  • Material Design / Material-UI: Sehr gute Kenntnisse
  • Jest / Ava: Sehr gute Kenntnisse
  • Webpack: Sehr gute Kenntnisse
  • Gulp: Sehr gute Kenntnisse
  • node.js: Sehr gute Kenntnisse
  • D3.js: Sehr gute Kenntnisse
  • jQuery: Sehr gute Kenntnisse
  • three.js: Sehr gute Kenntnisse
  • AST / CST / Babel / Recast: Gute Kenntnisse
  • Universal JS: Gute Kenntnisse
  • Rollup.js: Grundkenntnisse
Ausbildung
  • 10/2008 - 12/2011 Master of Science (Informatik), Universität zu Lübeck
  • 10/2004 - 03/2008 Bachelor of Science (Technische Informatik), HS Ulm
Aufgabenbereiche
  • Software-Architekt
  • Software-Entwicklung
  • Teamleiter
Branchen
  • Digital Workplace / Digitalisierung
  • Intranet
  • Handel
  • Blockchain
  • Wissenschaft und Forschung
  • Online-Marketing
  • 3D Druck
  • IT

Main Skills

Other Skills

Unit-Tests API Model Driven Node.js Java Spring XML React.js CSS Webpack HTML jQuery Bootstrap Profiling GIS Gulp ExtJs Analytics Backend Sass three.js Browserify dynamisches System Git Software-Entwicklung WebGL Informatik Technische Informatik Responsive Design automatisierte Tests Testabdeckung AngularJS Teilsysteme ReactJs Blockchain Material Design React Mercurial JavaScript Codebasis NodeJS d3.js Single Page Application

Work & Experience

01.01.2018 — Now
Blockchain Applikation
* Kunde: Blockchain Holding GmbH * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript (Babel), React, Material-UI, Redux, Redux-Saga, Ramda, React-Spring, Sass, Webpack, Jest, Git Eine Blockchain Applikation von der Idee bis zum fertigen Produkt. Es werden die Performancewerte der Rechenleistung und des finanziellen Erfolges eines Nutzers dargestellt. Einerseits werden die Werte und Informationen für den schnellen Überblick auf der Basis des gesamten Useraccounts aufbereitet, andererseits ist eine detaillierte Ansicht für die verschiedenen Kryptowährungen vorhanden. Durch Responsive Design kann der Benutzer auf den unterschiedlichen Endgeräten alles im Blick behalten. * Anforderungsanalyse mit dem UX Designer * Überführung der Anforderungen in technische Problemstellungen * Starke Beteiligung am UI Designprozess, um die Balance zwischen Ästhetik und Entwicklungsdauer zu garantieren * Abbildung der wiederkehrenden Designelemente auf wiederverwendbare React Komponenten für eine minimale Codebasis * Geteilte Projektstruktur, um die Wiederverwendung von Code über Projektgrenzen zu erweitern * Rapid Development durch Entkopplung von Backend und Frontend mit Hilfe eines Fake-Backend * Einsatz von detaillierter Dokumentation zur Sicherung der Kohärenz dieser beiden Teilsysteme
01.01.2016 — 31.12.2018
GIS GRAVITY
Software-Architekt und -Entwicklung
* Kunde: GIS Gesellschaft für InformationsSysteme AG * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript (Babel), React, Material-UI, Redux, Redux-Saga, Ramda, Sass, Webpack, stampit, Ava, Node.js, Gulp, Git Technische Konzeption und Entwicklung einer digitalen Arbeitsplatzlösung vom ersten Tag an. Zu den Zielen von GIS GRAVITY gehören intuitive Bedienung, Steigern der Produktivität und Vernetzung von Mitarbeitern über verschiedene Endgeräte und Standorte hinweg. Administratoren verwalten sowohl einzelne Seiten als auch, unterstützt durch Vorlagen, ganze Seitenstrukturen. In Kombination mit der Inhaltsverwaltung durch ein breites Spektrum von Widgets (News, Wiki, Kalender, ...), die zusätzlich ihren Inhalt auf konfigurierbare Weise darstellen, ergibt sich ein hochgradig dynamisches System. Damit wird GIS GRAVITY an die verschiedensten Kundenanforderungen angepasst. * React als komponentenzentriertes Frontendframework für eine komponentenorientierte Lösung * Einsatz von aktuellen und stabilen Werkzeugen für zukunftssichere Entwicklung * Entwicklung eines Backend-API-Client-Frameworks * Detailliert konfigurierbare Widgets zur Verwendung als Inhaltsblöcke * Storybook (Komponentenkatalog) zur fokussierten Entwicklung, für strukturelle Tests und als Schaukasten für Kunden * Maximale Qualitätssicherung durch hundertprozentige Testabdeckung * Erweiterung bestehender Werkzeuge für kompromisslose Individualisierung * Skalierbare Internationalisierungslösung, angepasst an Projektumgebung * Open Standard Architecture (Material Design), um Systemkombination und -integration zu ermöglichen * Responsive Design 2015: 3D Produkteditor * Rolle: Software-Entwicklung * Kunde: IronShark bzw. VOXELWORLD * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript, three.js, UniversalJS, jQuery, WebGL, stampit, Git, Gulp, Browserify, BrowserSync, tape Entwicklung eines Editors, der es ermöglicht, 3D Modelle von Produkten zu bearbeiten und anzusehen, die dann mit einem 3D Druckverfahren hergestellt werden. Dieser Editor läuft trotz seiner hohen Komplexität im Browser und besticht mit seinen vielfältigen Möglichkeiten der Individualisierung des Produkts durch den Benutzer. * Überführung von Anforderungen in technische Problemstellungen * 3D Editor mit three.js erstellt, der Produkt- und Benutzerkonfigurationen laden/speichern kann * Programmatische Manipulation von 3D Objekten live mit JS und zeitversetzt durch Interaktion mit dem Server * konfigurierbare 3D Szene für Licht/Schatten/Kamera/Zoom * UI-Komponenten für Individualisierungen von Farbe/Material/Größe/Textur/Beschriftung * Internationalisierung auf Client-Seite * Erstellung des Codes als node.js Module, Konvertierung für den Browser mittels Browserify * Verwendung des gleichen Codes für z.B. Validierung und Berechnung auf Client und Server (Universal JS) * Unit-Tests für Logikmodule Der Editor kann über den "Konfigurieren" Button eines Produkts aufgerufen werden, z.B. Windlicht Lys
01.01.2014 — Now
* Rolle: Software-Entwicklung * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript, Node.js, d3.js, AngularJS, three.js, Express, MEAN-Stack, stampit, Bootstrap, Sass, Mercurial Konzeption der Architektur und Entwicklung einer Fullstack-Anwendung mit MEAN. * Wizard-Eingabeoberfläche, wobei die Benutzereingabe durch synchronisierte Diagramme bzw. Eingabefelder hoch interaktiv und anschaulich gestaltet wurde * animierte Visualisierungen in 2D und 3D * hochgradig modulare Codestruktur Projekte: Festanstellung
01.01.2012 — 31.12.2015
SPA - Falk Technologies
Teamleiter Frontend, Senior Software Developer
* Branche: Online-Marketing * Einsatzort: Homeoffice * Technisches Umfeld: JavaScript, ExtJs, d3.js, HTML, CSS Im Online-Marketing Bereich gibt es eine Vielzahl von Metriken für die Quantifizierung der angezeigten Werbung und die Reaktion des Besuchers. Angefangen mit Clicks und Views für die Wahrnehmung, über die Kosten z.B. CPC, bis zu Metriken wie den ROI für den Erfolg, wird alles aufgezeichnet zur späteren Analyse. Durch die maßgeschneiderte Technologieplatform von Falk Analytics kann der Kunde den Erfolg seiner Werbekampagne gezielt steuern. Die gesammelten Daten können vom Kunden in einer Single Page Application analysiert werden. Dazu erstellte ich mit d3.js eine Vielzahl von Diagrammen um die Daten grafisch aufzubereiten. Um den hohen Anforderungen an Intuitivität, Interaktivität und anpassbarem Design gerecht zu werden, wurden die Diagramme fast alle von Hand programmiert anstatt hauptsächlich auf eines der vielen d3.js Frameworks zu setzen. Dadurch konnten außer den gängigen Charttypen auch sehr spezielle entwickelt werden, die für die Domäne des Online-Marketings jedoch wesentlich bessere Einblicke bieten. Jeder Diagrammtyp kann als Komponente vom Benutzer in ein veränderbares Layout eingefügt werden. Daraufhin ist es ihm möglich verschiedene Eigenschaften des Charts und die anzuzeigenden Daten auf seine Bedürfnisse anzupassen. Neben Aussehen und Bedienbarkeit spielte die Geschwindigkeit eine wichtige Rolle, welche ich durch Profiling des JavaScript Codes sicher stellte. Um die Wartbarkeit zu gewährleisten, wurden von mir automatisierte Tests erstellt und gewartet. Zusätzlich zu meiner Rolle als Entwickler, wurde mir die technische Leitung des Frontend Entwicklerteams übertragen. In dieser Position wirkte ich beim Einstellungsprozess für neue Teammitglieder der verschiedenen Entwicklerteams mit.
01.01.2008 — Now
Itemis
Software Engineer
* Branche: Consulting zum Themenkomplex "Model Driven Development" * Technisches Umfeld: Java, XML * Einsatzort: Pforzheim/Stuttgart * Dauer: 4-5 Monate Für einen großen Automobil-Zulieferer wurde von mir ein XML-Konverter in der Sprache Java entwickelt. ZEITLICHE UND RÄUMLICHE VERFÜGBARKEIT

Attachments