Senior Fullstack Web- & Cloud Application Developer & Architect (Vue, React, Angular, C#, TypeScript, JavaScript, PHP)
- Verfügbarkeit einsehen
- 0 Referenzen
- 70‐95€/Stunde
- 50677 Köln
- auf Anfrage
- de | en
- 23.10.2024
Kurzvorstellung
Auch Teamleitung und Application Architecture gehören zu meinen Kompetenzen.
Qualifikationen
Projekt‐ & Berufserfahrung
5/2024 – offen
Tätigkeitsbeschreibung
Aktuell arbeite ich noch an einem eigenen kommerziellen Projekt, das ich inhaltlich nicht beschreiben, aber Informationen zu technischen Hintergründen geben kann.
Beim Backend handelt es sich um ein C# Backend mit .NET 8 MVC, das stark auf Vererbung mit Generic Types setzt, um API-Endpunkte zu standardisieren und massiv an Code-Menge einzusparen. So hat jeder Controller ein Grundgerüst an Actions und kann jeweils erweitert bzw. eingeschränkt werden. Außerdem wird Entity Framework verwendet. Für die Authentifizierung und Autorisierung verwenden wir Microsoft Identity mit einem Roles- und Claim-basierten Rollensystem, das auf jeden Endpunkt anwendbar ist. Weitere Features umfassen Data-Shaping, Over-Posting-Protection, Data-Model-Validation.
Das Frontend ist aktuell mit Vue.js 3 mit TypeScript umgesetzt und spiegelt im Service-Layer, der die Schnittstelle zur API darstellt, dieselbe Abstraktion mit Klassen und Generic-Types wieder wie in der API, um mit wenig Aufwand die standardisierten API-Endpunkte widerzuspiegeln. Möglicherweise werden wir hier auf .NET Blazor Pages umsteigen.
Der Code und die Funktionalität dieses Projektes können in Teilen präsentiert werden.
Mysql, .Net, C#, Entity Framework, Typescript, CSS (Cascading Style Sheet), JavaScript, Vue.Js
11/2023 – 6/2024
Tätigkeitsbeschreibung
Das Fintech Unternehmen bietet über die Plattform bezahl.de eine komplexes und umfangreiches Zahlungsmanagement für die Automobilbranche an.
Hier sollte die bestehende und mit Vue 2 aufgebaute Oberfläche für Händler und Kunden auf Vue 3 mit TypeScript modernisiert werden.
Meine Aufgabe war die technische Leitung, Architektur, sowie die Unterstützung und Betreuung des Teams beim Aufbau des neuen Projektes.
Eine simplere Konvertierung von Vue 2 auf Vue 3 war auf Grund einiger mit Vue 3 nicht mehr kompatiblen externen Abhängigkeiten wie z. B. der Komponenten-Bibliothek Buefy nicht möglich. Deshalb musste die Anwendung fast vollständig neu entwickelt werden.
Für Komponenten wurde die SFC-Variante gewählt. Außerdem kam Vuetify.js als Komponentenbibliothek zum Einsatz, welches wir noch durch eigene Komponenten erweitert und optisch angepasst haben. Auf Wunsch des Kunden verwendeten wir in den Templates statt HTML die Sprache Pug.
Eine besondere Herausforderung waren die Komplexität und der Umfang der Anwendung, welche eine tiefe Einarbeitung in die bestehenden Lösungen erforderte. Hierbei waren die Anbindung und die korrekte Typisierung der bestehenden Rest-Api Schnittstellen basierend auf Node.js mit Express-Framework eine der komplexesten Aufgaben. So wurden für jeden Api-Endpunkt thematisch aufgeteilte Service TypeScript Module erstellt, die alle relevanten Api-Endpunkte enthalten. Darüber hinaus haben wir Anpassungen und Erweiterungen an der API vorgenommen.
Verwendete Technologien: TypeScript, JavaScript, Vue 2, Vue 3, Node.js, Express-Framework, SCSS, Pug, HTML, SVG, Docker
Docker, JavaScript, Node.Js, Typescript, Vue.Js
7/2023 – 11/2023
Tätigkeitsbeschreibung
Rohde & Schwarz Cybersecurity entwickelt unter anderem Hardware-Lösungen zur Verschlüsselung von Traffic zwischen verschiedenen Unternehmensnetzwerken.
Meine Aufgabe umfasste die Unterstützung bei der Weiterentwicklung der Management-Software der Hardware-Lösungen sowie die Migration von Vue2 Class-Based-Components auf Vue3 Setup-Pattern mit TypeScript.
Besondere Herausforderung bei dem Projekt war die immense Größe, wodurch bei allen Modernisierungen und Refactorings stets abgewogen werden musste, ob bestehende Komponenten um oder gleich komplett neu geschrieben werden sollten.
Die komplexeste von mir umgesetzte Lösung war eine zentralisierte Validierung von Formularen und Wizards, die die Validierung der API widerspiegeln sollte. Diese neue Mechanik wurde durch das gesamte Projekt hindurch implementiert und lieferte lokalisierte Fehlermeldungen noch vor dem Absenden der Formulare.
Alle implementierten Features und Bugfixes wurden ausgiebig mit dem neuen Testframework Vitest getestet.
Verwendete Technologien:
VueJs 3, TypeScript, Vite, Scss, Node.js, Websockets, Vitest
Node.Js, Typescript, Vue.Js
12/2022 – 5/2023
Tätigkeitsbeschreibung
Das Unternehmen Talkevent entwickelt Chat-Lösungen für Sparkassen, Banken und Versicherungen, um Beratern einen vielfältigen und einfachen digitalen Kontakt zum Kunden zu ermöglichen.
Die Lösungen umfassen Text-Chat, Audio-Chat, Video-Chat, Co-Browsing, Whiteboards, Screen-Sharing und File-Sharing. Alle Gespräche können archiviert werden, wobei persönliche Informationen entfernt werden.
Meine Aufgabe im Projekt umfasste die Modernisierung des Front- und Backends.
Das Backend ist mit Node.js, dem Express-Framework und MongoDB mit Mongoose umgesetzt worden und sollte, zusammen mit der Aktualisierung aller Dependencies auf die neueste Version, auf TypeScript umgestellt werden. Hierzu wurden automatisiert alle nötigen Interfaces für die Mongoose-Datenbankmodelle erzeugt.
Das Frontend ist mit Vue 2 umgesetzt worden und sollte auf Vue 3 mit Typescript und Setup-Pattern umgestellt werden. Auch hier wurden alle Dependencies auf die neueste Version aktualisiert.
Herausforderung bei beiden Projekten war die schiere Größe, wodurch für viele Schritte, die sonst manuell umgesetzt werden, automatisierte Lösungen gefunden oder entwickelt werden mussten. Dies umfasste z. B. Patch-Scripte zur Umkonvertierung von Code.
Verwendete Technologien:
VueJs 3, TypeScript, Vite, Scss, Node.js, Express Framework, Mongoose, MongoDb, Vitest, Websockets
Mongodb, Node.Js, Typescript, Vue.Js
12/2021 – 11/2022
Tätigkeitsbeschreibung
Für dieses Projekt wurde ich engagiert, um mit VueJs 3 eine Oberfläche zur Artikelrecherche für Kliniken im Stile einer E-Commerce Plattform umzusetzen. Mein Auftraggeber war die Advellence GmbH, die von der Sana Kliniken AG den Auftrag für dieses Projekt erhalten hat. Ich wurde unterstützend als Frontend-Experte hinzugezogen, habe aber auch recht zügig in Backend-Themen intensiv unterstützt.
Das Frontend-Projekt wurde zunächst mit VueJs 3 Options Api, Vue Cli 4, Vue-I18n, Jest, SASS (BEM), Vue-Router und VueX umgesetzt. Später erfolgte allerdings eine Modernisierung, bei der auf die Composition Api mit Single File Components (Setup Pattern) refactored wurde. Außerdem wurde VueX durch Pinia ersetzt und Vue Cli mit Vite. Das Design kam von einer weiteren Agentur und wurde in enger Zusammenarbeit mit der Designerin präzise umgesetzt. Später erfolgte noch die Anbindung einer Authentifizierung über GLUU anhand des OpenID-Standards.
Sämtliche Entwicklungen wurden mit dem Jest Framework durch Tests abgedeckt. Es wurde darauf geachtet, dass alle Komponenten, Services, Helper, Views, Stores eine möglichst hohe Coverage haben. In den Komponenten wurden auch User Interaktionen simuliert und das Ergebnis abgeglichen. Später sollte noch von Jest auf Vitest umgestellt werden, wofür ich eine Recherche und Einarbeitung in das neue Framework umgesetzt habe. Leider wurde hierfür allerdings das Budget nicht freigegeben.
Ein weiteres Projekt war die Erstellung von Exporten in Form von CSV-Dateien aus dem dahinterliegenden PIM über Azure Data Factories. Meine Aufgabe war es, die Pipelines und Dataflows zur Datentransformation und -Komposition zu modellieren.
Bei größeren Downloads war es ggf. notwendig, die Artikel-IDs erst zu ermitteln, was aufgrund der Laufzeiten clientseitig nicht möglich war. Deshalb habe ich zu diesem Zweck eine Azure Logic App entwickelt, die alle IDs (bis zu 500.000) einsammelt und den Download für den Client startet.
Des Weiteren unterstütze ich das Team bei der Erweiterung eines Kunden internen Tools zur Preispflege. Hierbei handelte es sich um ein VueJs Projekt, dass über Azure Funktions (C#) mit Daten versorgt wurde. Meine Aufgabe war die Erweiterung des VueJs Frontends, sowie des C# Backends.
Verwendete Technologien:
C# .NET 6.0, EF Core, VueJs 3, TypeScript, Vite, Scss, Jest, Azure Data Factory, Azure Api Management, Azure Functions, Microsoft Cognitive Search
Microsoft Azure, Typescript, Vue.Js
9/2021 – offen
Tätigkeitsbeschreibung
Hierbei handelt es sich um ein Open Source Community Projekt, das auf C# .NET5 und VueJs 3 mit TypeScript, basiert. Bisher habe ich den kompletten Code geschrieben, zukünftig können aber Contributions durch andere Entwickler erfolgen.
Ziel des Projektes ist es, international mit Entwicklern auf Open-Source-Basis zusammenzuarbeiten und neue Ideen auszuprobieren.
Das Backend ist cloud-ready und beliebig horizontal skalierbar. Darüber hinaus wurde eine Datenbank schonende Implementation gewählt, da Datenbanken am kostspieligsten horizontal zu skalieren sind und es sich hier um ein non-profit Projekt handelt.
Verwendete Technologien:
C# .NET 5.0, EF Core, VueJs 3, TypeScript, Vue Cli, Scss, Augmented-Ui
Adobe Illustrator, C#, CSS (Cascading Style Sheet), Entity Framework, Mysql, Typescript, Vue.Js
7/2021 – 2/2022
Tätigkeitsbeschreibung
Bei dem Projekt handelt es sich um eine Administrationsoberfläche für das später in der Liste aufgeführte Dashbo Projekt, bei dem Administratoren Dashboard Projekte konfigurieren und Datenquellen festlegen können.
Das Frontend ist technisch sehr ähnlich zu dem zuvor aufgeführten Projekt. Hier wird ebenfalls VueJs 3 auf Basis von TypeScript verwendet. Allerdings kommt zusätzlich TailwindUI und TailwindCss zum Einsatz.
Das Backend basiert auf NodeJs mit dem Express Framework ebenfalls mit TypeScript. Die Rest Api wird über Swagger dokumentiert. Über weitere an das Backend angeschlossene Technologien kann ich auf Grund der NDA keine Auskünfte geben.
Frontend und Backend sind beide cloud ready und werden in der AWS Cloud betrieben.
Verwendete Technologien:
VueJs3, TypeScript, NodeJs, Docker, Express Framework, Sass, TailwindCss, TailwindUI
CSS (Cascading Style Sheet), Docker, Node.Js, Typescript, Vue.Js
12/2020 – 9/2021
Tätigkeitsbeschreibung
Für das junge Startup sollte eine App samt Backend entwickelt werden, um Sportveranstaltungen digital und vor Ort online anzubieten. Gemäß Corona -Verordnungen mussten auch ggf. persönliche Daten erfasst werden.
Die App enthält folgende Features:
Erstellung von Terminen (online & vor Ort)
Zuweisung von Trainern / Hostern
On-Demand Abrechnung für Termine oder Abos
Broadcasting von Termin Updates,
Transaktionale E-mails und Push-Notifications
Social Logins (SSO)
Technische Komponenten:
Als Backend dient eine Rest API auf C# (.NET5) Basis die über EF Core die an eine MySQL 8 Datenbank angebunden ist.
Das Frontend ist eine auf VueJs 3 (mit TypeScript) basierende PWA.
Frontend und Backend sind cloud ready und laufen momentan auf einer AWS EC2 Instance, können aber jederzeit in einen Dynamic Container Service gepackt und ein Load Balancer mit Autoscaling davor geschaltet werden.
Push Notifications werden mit SignalR über WebSockets an die App übertragen. Diese beinhalten On Action Notifications, sowie On Time Notifications. Des Weiteren läuft ein automatisierter Dienst zum Versand von transaktionalen E-Mails.
Verwendete Technologien:
C# .NET 5.0, EF Core, VueJs 3, TypeScript, Vue Cli, Scss, PWA, PayPal Checkout, PayPal Subscriptions, Stripe, Service Worker, SignalR, WebSockets
.Net, C#, CSS (Cascading Style Sheet), Entity Framework, Mysql, Typescript, Vue.Js
11/2019 – 9/2021
Tätigkeitsbeschreibung
Dashbo ist ein Produkt vom Unternehmen Tivian (früher Questback), das auf übersichtlichen und einfach aufgebauten Dashboards statistische Daten zu Employee Feedback Programmen darstellt. Ziel war es die Software Tableau für die eigenen Ziele zu ersetzen, da diese für viele Anwendungsfälle zu komplex und kostspielig war.
Das Frontend ist mit VueJs 2 (Class based components) aufgebaut und besteht bis auf die Erweiterung Vue Tours aus einer kompletten Eigenentwicklung. Mit subtilen Animationen und barrierefreier Farbwahl wurde großer Wert auf die User Experience gelegt. Über eine Theming Option können aber eigene Farben, die z. B. der Corporate Identity entsprechen, eingestellt werden.
Das Backend wurde in NodeJs mit TypeScript und dem Framework Express als Rest Api umgesetzt. Für eine schnelle Datenanbindung zu den dahinter liegenden Feedback Datenbanken wurde Apache Kafka eingesetzt.
Das komplette Projekt (Frontend & Backend) sind per Design auf Cloud ausgelegt. Es wurde keine Spezialisierung auf einen bestimmten Cloud Anbieter vorgenommen um maximale Flexibilität zu erreichen
Verwendete Technologien:
VueJs3, TypeScript, NodeJs, Docker, Express Framework, Scss
CSS (Cascading Style Sheet), Docker, Node.Js, Typescript, Vue.Js
9/2019 – 4/2021
Tätigkeitsbeschreibung
Bei diesem Projekt handelte es sich um mein erstes großes C# Studienprojekt. Es diente also dazu, praktische Erfahrungen mit C# in einem echten Projekt zu sammeln.
Das Anwendungsszenario befasst sich mit der Community rund um ein MMO namens Dual Universe. In der Hochphase waren bis zu 10.000 aktive User online in diesem Spiel. Das Projekt selbst hat über 7.000 registrierte Benutzer.
Mein Projekt stellte verschiedene Dienstleistungen und Produkte zur Verfügung, um die Spielerfahrung einfacher zu gestalten. Diese umfassten:
- CDN mit File Upload, Image & Video Optimization & Processing
- Mediagalerie
- Crafting Calculator (Rekursive Bedarfsberechnung)
- Schiffskatalog (quasi Produktkatalog)
- Data Comparison Tools
- JWT Role based Authentication / Authorization
- SSO mit Discord
- Gitlab SSO Anbindung
- NodeBB SSO Anbindung
Das Backend habe ich mit C# AspNetCore 3.1 umgesetzt. Als API Standard wird Rest Api verwendet, welche automatisch mit Swagger dokumentiert wird. Als Datenbank wird MySQL8 verwendet.
Das Frontend wurde mit VueJs 2 (Options Api) umgesetzt. Für das Styling habe ich auf SASS (SCSS) mit BEM gesetzt, um die Organisation und Wartbarkeit des Projektes langfristig zu sichern.
Für die Optimierung von Bildern und Videos habe ich innerhalb von C# mit den Library ImageMagick und FFMPEG gearbeitet.
Das Projekt ist auf einem Hetzner Rootserver auf Ubuntu 18.04 gehostet.
Verwendete Technologien:
C# AspNetCore 3.1, EF Core, VueJs 3, TypeScript, Vue Cli, Scss, ImageMagick, FFMPEG, Gitlab, NodeBB, Discord Oauth2
.Net, C#, CSS (Cascading Style Sheet), Mysql, Typescript, Vue.Js
3/2014 – 5/2019
Tätigkeitsbeschreibung
Bei CHRONEXT habe ich als Hauptentwickler im Bereich E-Commerce das ganze Shopsystem bis zum Mai 2019 entwickelt.
Das Backend war eine komplette Eigenentwicklung und basierte auf dem Slim Framework und wurde mit PHP 5.6 gestartet und später auf 7.1 upgedatet.
Als Datenbank wurde Mysql 5.7 verwendet. Zusätzlich wurde für die Produktsuche Algolia angebunden. Dabei handelt es sich um einen Dienstleister, der hochperformante Suchabfragen bei hohem Datenvolumen erlaubt. Technisch wird im Hintergrund eine Elastic Search mit einer MongoDB verwendet. Zusätzlich wird der Dienst durch AI unterstützt.
Da zu dem Zeitpunkt moderne Frontend Frameworks wie Nuxt oder Next noch nicht etabliert waren, wurde das Frontend hier serverseitig gerendert und zusätzlich durch jQuery für die dynamischen Elemente unterstützt.
Besondere Herausforderungen waren die hohen SEO Anforderungen (Meta-Data, Google Structured Data, Sitemap Generation, etc.), sowie die Anbindung externer Tracking Tools und Zahlungsanbieter (PayPal, Finetrade, SOFORTÜberweisung, etc.)
Hinzu kamen Monitoring und Administrations-Tools für das Shop System, die im Backend mit Symfony 4, Laravel und im Frontend mit Vue Js 2 (Options Api) aufgebaut wurden. Auch die Produktdatenpflege wurde hier mit einer auf die genannten Technologien basierten Anwendung umgesetzt, die primär durch mich entwickelt wurde.
Verwendete Technologien:
PHP 5.6 - 7.1, jQuery, VueJs 2, Slim Framework, Symfony 4, Laravel, PayPal, Google Analytics, Facebook API, CrazyEgg, FineTrade, SofortÜberweisung, Anti Fraud Tools, Scss, BEM, MySql5, Algolia
CSS (Cascading Style Sheet), Google Analytics, Google Tag Manager, Jquery, Mysql, PHP, Symfony, Vue.Js
1/2010 – 3/2014
Tätigkeitsbeschreibung
In meiner früheren Laufbahn habe ich für zwei Agenturen gearbeitet, und primär kleine bis mittlere Projekte für verschiedenste Kunden umgesetzt (u. a. Schwank, JG Gruppe, Sikkens Joinery, uvm.).
In der Regel handelte es sich um TYPO3 basierte Projekte mit PHP, SCSS (SASS), JavaScript, jQuery und MySQL. Hauptsächlich handelte es sich um Unternehmens- oder Produkt Websites.
Verwendete Technologien:
PHP 5, jQuery, SCSS (SASS), TYPO3, JavaScript
CSS (Cascading Style Sheet), Jquery, PHP, Typo3
Ausbildung
Koblenz
Über mich
Weitere Kenntnisse
Persönliche Daten
- Deutsch (Muttersprache)
- Englisch (Fließend)
- Europäische Union
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden