[
{
"id": "pemu",
"name": "Peter Müller",
"education": {
"degree": "Fachinformatiker Anwendungsentwicklung (IHK)"
},
"role": "Senior Software Engineer / Architect",
"description": "",
"descriptionMarkdown": "\nDer Berater ist Mitbegründer und **Co-CTO** von qupaya. Mit mehr als zwei Jahrzehnten Berufserfahrung in der Softwareentwicklung ist er immer noch leidenschaftlich praktisch tätig und arbeitet an Kundenprojekten.\n\nEr ist auch Mitbegründer und Organisator der **NG-DE-Konferenz** und der **FrankenJS-Benutzergruppe**, um mit gleichgesinnten Entwicklern und Unternehmen zusammenzuarbeiten.\n\nEr hat ein **hohes Qualitätsbewusstsein für Software** und Fähigkeiten im Bereich Personalmanagement. **Beratung**, Coaching und regelmäßiges Training von Softwareentwicklern über workshops.de und angular.de von Unternehmen jeder Größe sind nur die Spitze des Eisbergs.\n ",
"industries": [
"HR Software",
"Social Networking",
"E-Mail and Cloud Services",
"Travel And Leisure",
"Open Banking And IT Services",
"Automotive",
"Retail Services"
],
"homeBase": "Nürnberg, Bayern, Deutschland",
"availabilityFrom": "2024-09-01T00:00:00.000Z",
"availabilityPercent": 100,
"travel": "Remote / Nach Absprache",
"skillCategories": [
{
"name": "Frameworks",
"display": "Left",
"skills": [
{
"name": "Angular",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "NestJS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Astro",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Cypress/Playwright",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Jest/Jasmine",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "nx",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "NgRx",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Tailwind",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "NodeJS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "RxJS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Ionic",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Electron",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Programming",
"display": "Left",
"skills": [
{
"name": "TypeScript",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "JavaScript",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "HTML5",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "CSS/SCSS/SASS",
"experience": "Sehr gut",
"tenScale": 8
}
]
},
{
"name": "Infrastruktur",
"display": "Left",
"skills": [
{
"name": "Micro Frontend Architecture",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Micro Service Architecture",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Cloud Native",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Docker",
"experience": "Gut",
"tenScale": 6
},
{
"name": "MariaDB (MySQL)",
"experience": "Gut",
"tenScale": 6
},
{
"name": "MongoDB",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Redis",
"experience": "Gut",
"tenScale": 6
},
{
"name": "REST",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Git",
"experience": "Gut",
"tenScale": 6
},
{
"name": "GitHub Actions",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Tools",
"display": "Right",
"skills": [
{
"name": "GitLab",
"experience": "Gut",
"tenScale": 6
},
{
"name": "GitHub",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Bitbucket",
"experience": "Gut",
"tenScale": 6
},
{
"name": "JIRA & Confluence",
"experience": "Gut",
"tenScale": 6
},
{
"name": "ClickUp",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Agile Frameworks",
"display": "Right",
"skills": [
{
"name": "Kanban",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Scrum",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Sprachen",
"display": "Right",
"skills": [
{
"name": "German (native)",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "English (fluent)",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Finnish (basics)",
"experience": "Gut",
"tenScale": 4
}
]
}
],
"projects": [
{
"customerOrProjectName": "Schmitt Aufzüge, Nürnberg",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 10,
"projectSize": 10,
"staffedAmount": 3,
"managementMethod": "Kanban",
"role": "Senior Angular Engineer / Berater",
"descriptionMarkdown": "Der Kunde baut und vertreibt Aufzüge. Mit einem Team von drei Entwicklern erstellen wir mehere Angular Applikationen für die interne Schulungsverwaltung und Aufzugskonfiguration.\n\n* Code-Analyse und Code Review der vorhandenen Codebasis\n* Coaching der Mitarbeiter des Kunden\n* Beratung bezüglich Deployment und Architekturentscheidungen\n* Erstellung einer UI-Architektur mit wiederverwendbarer Komponentenbibliothek in einem Nx Monorepo\n* Erstellung eines Themingframeworks für interne und externe Apps\n* Konzeption und Umsetzung einer internen Angular Applikation für die Schulungsverwaltung\n* Umsetzung einer externen Angular-Anwendung zur Konfiguation von Aufzügen\n* Abstimmung von Restful API-Schnittstellen\n* Beratung bezüglich Softwarequalität und Einbindung von verschiedenen automatisierten Testsystemen und statischer Codeanalyse\n ",
"usedTechnologies": [
"Angular 18",
"REST",
"eslint",
"Signal Store",
"Jest",
"Cypress",
"GitLab CI",
"Nx"
],
"from": "2024-05-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Symetics GmbH, Berlin - workshops.de / angular.de Angular Schulungen",
"employer": "freelance / qupaya technologies GmbH",
"permamentPosition": false,
"teamSize": 1,
"projectSize": 1,
"staffedAmount": 1,
"role": "Angular Trainer",
"descriptionMarkdown": "\nIn Zusammenarbeit mit dem Kunden geben wir öffentliche und firmeninterne Angular-Schulungen.\n\n* Durchführung von Workshops vor Ort beim Kunden oder remote\n* Schulung der Teilnehmer in Angular und TypeScript-Themen von Basis- bis Expertenwissen\n* Leiten und korrigieren der Hands-On-Übungen\n* Pflegen der Übungsmaterialien\n ",
"usedTechnologies": [
"Angular",
"TypeScript",
"RxJS"
],
"from": "2016-10-01T00:00:00.000Z",
"to": "2025-03-16T20:30:18.283Z"
},
{
"customerOrProjectName": "upkeepr UG, Köln",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 2,
"projectSize": 4,
"staffedAmount": 2,
"managementMethod": "Kanban",
"role": "Senior Consultant (Angular / Ionic)",
"descriptionMarkdown": "Der Kunde betreibt eine Webplattform und mobile Anwendung zur Verwaltung von Audits. Mit einem Team von zwei Entwicklern unterstützen wir bei der Aktualisierung einer Legacy-Anwendung auf die neuesten stabilen Versionen von Ionic (7) und Angular (17) und bereiten sie für Android- und iOS-Zielplattformen vor.\n\nWir haben die Codebasis von einer früheren Webagentur übernommen und refaktorisiert, um sie langfristig wartbarer zu machen. Außerdem haben wir Fehler behoben und die die Performance erhöht.\nWir unterstützen upkeepr bei der Entwicklung von Funktionen, Refaktorisierung, Datenmigration und langfristiger Wartung.\n\n* Code-Analyse und Code Review\n* Anweisung von Handlungsempfehlungen zur erreichungen der Produktziele\n* Entwurf einer Strategie passend zur Produktroadmap\n* Performance-Improvements der Ionic App unter iOS und Android\n* Bugfixing und Refactoring der bestehenden Codebase\n* Wartung und Pflege\n ",
"usedTechnologies": [
"Angular 17",
"Ionic",
"Capacitor",
"SQLite",
"Offline Storage",
"Synchronization",
"Jest"
],
"from": "2022-07-01T00:00:00.000Z",
"to": "2025-03-16T20:30:18.283Z"
},
{
"customerOrProjectName": "UNOWN Fashion",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 4,
"projectSize": 4,
"staffedAmount": 2,
"managementMethod": "Kanban",
"role": "Senior Software Engineer (Angular / NestJS)",
"descriptionMarkdown": "UNOWN war ein E-Commerce-Unternehmen, das sich auf die Circular Economy spezialisierte und Kleidung und Accessoires als Leasing-Modell, aber auch Buy-out-Modell, vertrieb.\n\nWir haben UNOWN dabei unterstützt, mobile Webanwendungen (Tablet und Smartphone) als Progressive Web Application, sowie Backend-APIs mit NestJS zu erstellen, um Produkte während des Checkout-Vorgangs im Geschäft per Lease-Subscription zu erwerben. Darüber hinaus unterstützten wir UNOWN bei der Erfassung der Waren und der Aufnahme in den Warenbestand. Die Zahlung erfolgte beim Check-out via Stripe als Payment-Anbieter.\n\n* Entwurf der Architektur und eines Proof of Concept vor der Erstellung der Anwendung\n* Unterstützung und Ausarbeitung von Architekturentscheidungen\n* Implementierung von Stripe als Zahlungsanbieter\n* Umsetzung der Anwendung anhand des Figma Designs und UX-Flows\n* Einsatz von NestJS Microservices für Realtime-Kommunikation via Websockets\n ",
"usedTechnologies": [
"Angular 15",
"NestJS",
"TypeScript",
"MySQL",
"PWA",
"API",
"REST",
"TypeORM",
"nx",
"Jest"
],
"from": "2022-10-01T00:00:00.000Z",
"to": "2022-12-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Restlos Industrieverwertungen & Service GmbH, Nürnberg - Auktionsplattform",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 7,
"projectSize": 8,
"staffedAmount": 7,
"managementMethod": "Scrumban",
"role": "Senior Software Engineer (Angular / NestJS)",
"descriptionMarkdown": "\nDer Kunde ist ein Unternehmen, das sich auf nachhaltige Industrieverwertungen konzentriert. Ein beträchtlicher Teil ihrer Waren wird auf der Online-Plattform https://auktionen.restlos.com versteigert.\n\nMit einem Team von durchschnittlich sieben Entwicklern haben wir die Auktionsplattform neu entwickelt. Wir unterstützen weiterhin langfristig durch Wartung und Erweiterung der Funktionalität, sowie bei Automatisierung und Prozessverbesserungen, Vor-Ort-Abholungen und Rechnungsautomatisierung.\n\n* Konzeption der Cloud-Architektur der Auktionsplattform, dessen Managementsystem und Companion-App (Android)\n* Konzeption, Entwicklung und Containerisierung der beteiligten NestJS REST-APIs\n* Konzeption und Umsetzung der verschiedenen Angular-Frontends und Ionic/Capacitor Applikationen\n* Migration von 60.000 Kundendaten aus einer closed-source Lösung zur neuen Plattform im August 2023\n* Durchführen von Code- und Kundenreviews\n* Anforderungsanalyse und Pflege des Ticketsystems\n* Konfigurieren und Anbinden des Authentifizierungssystems (Keycloak)\n* Unit- und Integationstest der APIs und Frontends\n* End-to-End-Tests\n ",
"usedTechnologies": [
"Angular (12-17)",
"Angular Material",
"Angular CDK",
"Ionic / Capacitor",
"NestJS",
"MariaDB",
"Redis",
"SSR / Angular Universal",
"API",
"Ably",
"REST",
"nx",
"Storybook",
"TypeScript",
"CSS",
"Tailwind",
"TypeORM",
"Jest",
"Cypress",
"Playwright",
"Artillery",
"Docker",
"Kubernetes",
"aws s3",
"aws lambda",
"Keycloak",
"Figma"
],
"from": "2021-09-01T00:00:00.000Z",
"to": "2025-03-16T20:30:18.283Z"
},
{
"customerOrProjectName": "Siemens AG, München - CERES",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 3,
"projectSize": 3,
"staffedAmount": 2,
"managementMethod": "Kanban",
"role": "Senior Software Engineer (Angular / NestJS)",
"descriptionMarkdown": "\nMit einem Team von drei Softwareentwicklern haben wir unserem Kunden dabei geholfen, weitere Funktionen für eine interne Plattform zur Verwaltung von Budgets, Personalmitteln und Materialien zu entwickeln.\n\n* Entwicklung von Angular-Komponenten und Businesslogik auf Basis von Spezifikationen\n* Performanceoptimierung und Refactoring bestehender Komponenten\n* Code Reviews und Handlungsempfehlungen zum Erreichen der Produktroadmap\n* Erstellung von Unit- und Integrationstests.\n ",
"usedTechnologies": [
"Angular (14-15)",
"Angular Material",
"Angular CDK",
"TypeScript",
"nx",
"NestJS",
"ProstgreSQL",
"Jest"
],
"from": "2022-01-01T00:00:00.000Z",
"to": "2022-07-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Siemens AG, München - Pulse Cloud",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 2,
"projectSize": 4,
"staffedAmount": 2,
"managementMethod": "Scrum",
"role": "Senior Software Engineer (Angular)",
"descriptionMarkdown": "\nDer Kunde betreibt eine cloudbasierte Plattform, die eine Vielzahl von digitalen Diensten und Lösungen für industrielle Anwendungen bietet. Sie erleichtert die Integration von digitalen Technologien wie dem Industrial Internet of Things (IIoT) und künstlicher Intelligenz, um die betriebliche Effizienz zu steigern, Prozesse zu optimieren und vorausschauende Wartung in industriellen Umgebungen zu ermöglichen.\n\nMit einem Team von zwei Entwicklern unterstützten wir den Kunden bei der Erstellung einer Angular-Anwendung zur Erfassung, Verwaltung und Visualisierung von Daten.\n\n* Entwicklung von Angular-Komponenten und Businesslogik auf Basis von Spezifikationen\n* Performanceoptimierung und Refaktorisierung bestehender Komponenten\n* Code Reviews und Handlungsempfehlungen zum Erreichen der Produktroadmap\n* Erstellung von Unit- und Integrationstests.\n ",
"usedTechnologies": [
"Angular (14-15)",
"Angular Material",
"nx",
"Angular CDK",
"TypeScript",
"Jest"
],
"from": "2020-10-01T00:00:00.000Z",
"to": "2021-10-01T00:00:00.000Z"
},
{
"customerOrProjectName": "marketoolz GmbH, Hamburg - Entsorgungsmanagementplattform",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 5,
"projectSize": 10,
"staffedAmount": 3,
"managementMethod": "Scrum",
"role": "Senior Software Engineer (Angular)",
"descriptionMarkdown": "\nDer Kunde betreibt eine Webplattform für Abfallmanagement, die von verschiedenen Unternehmen in der Abfall- und Recyclingbranche genutzt wird.\nEin Team von drei Softwareentwicklern und Beratern unterstützte marketoolz bei der Erstellung von Angular-Anwendungen und bei deren White-Labeling Architektur.\n\n* Konzeption und Entwicklung von White-Label-fähigen Angular-Anwendungen\n* Überführung einer AngularJS-Codebasis in eine moderne Angular-Applikation\n* Teilen unseres Fachwissens in regelmäßigen Consulting-Sessions und In-House-Workshops\n* Code Reviews\n* Erstellung von Unit- und Integrationstests\n ",
"usedTechnologies": [
"Angular (8-12)",
"Angular Material",
"Angular CDK",
"AngularJS",
"TypeScript",
"Jest",
"Cypress",
"nx"
],
"from": "2020-03-01T00:00:00.000Z",
"to": "2020-10-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Steuer2Go",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 4,
"projectSize": 4,
"staffedAmount": 1,
"managementMethod": "Scrum",
"role": "Senior Software Engineer (NestJS)",
"descriptionMarkdown": "\nDer Kunde betrieb eine mobile Anwendung zur Erstellung der jährlichen Steuererklärung für Privatpersonen.\nWir unterstützten Steuer2Go bei der Implementierung der Backend- und Server-Infrastruktur sowie bei der API-Architektur.\n\n* Entwicklung von RESTful APIs mit NestJS\n* Absprache mit Kunden bezüglich der Anforderungen\n* Erstellen der Software-Architektur und Definition der API\n* Code Reviews\n* Erstellung von Unit- und Integrationstests.\n ",
"usedTechnologies": [
"NestJS",
"MySQL",
"TypeORM",
"REST",
"Jest",
"TypeScript"
],
"from": "2019-12-01T00:00:00.000Z",
"to": "2020-03-01T00:00:00.000Z"
},
{
"permamentPosition": false,
"employer": "Freelance",
"role": "Senior Software Engineer and Architect",
"descriptionMarkdown": "\nDiverse Kunden (z. B. SH Telekommunikation Deutschland GmbH (sparhandy.de), e.solutions GmbH, modulware GmbH, IT Labs GmbH, LUKA Venture GmbH, ...)\n\nArbeit als freiberuflicher JavaScript-Engineer / Architekt und Berater mit Schwerpunkt Angular und NodeJS Technologien.\n\n* Vor-Ort-Beratung und Remote-Paarung für große Angular-Anwendungen, mit Schwerpunkt auf Architektur und NGRX-Muster\n* Durchführung einer Performance-Beratung für Winkel- und Ionic-Anwendungen, um eine schnellere, kleinere und effizientere Anwendung zu erreichen\n* Durchführung von Training und Beratung für die Produktteams von Audi, Porsche und Bentley, um Fachwissen und Best Practices in Angular zu vermitteln\n* Technische Beratung für die Marke sparhandy.de mit Schwerpunkt auf Angular, einschließlich Anwendungsarchitektur, Änderungserkennung, Abhängigkeitsinjektion und Tests\n* Implementierung von Angular Universal für serverseitiges Rendering und SEO-Kompatibilität\n* Migration von großen Angular 5-Anwendungen auf Angular 6, die auf Embedded-Systemen innerhalb eines selbst-kompilierten Browsers laufen und die Infotainment-Systeme für Audi, Porsche und Bentley bedienen\n* Gestaltung und Durchführung eines intensiven \"Bootcamps\" über zehn Wochen, um Mitarbeiter in Angular zu schulen, einschließlich\n* Echtzeit-Anwendungen, Anwendungsarchitektur und Tests\n* Entwicklung des neuen mobilen Holidaybooking-Portals weg.de mit React, Redux, Redux Saga und Styled Components\n* Erstellung einer Datensynchronisierung zwischen Frontend und Backend für fluktuierende Internetverbindungen und Offline-Nutzung\n* Beratung zur AngularJS-zu-Angular-Migration mit Schwerpunkt auf RxJS und TypeScript\n* Implementierung der PayPal NodeJS API für langlebige Zahlungsabonnements\n* Lokalisierung, Analyse und Beseitigung von Softwarefehlern\n* Konzeption unternehmenskritischer Web-Clients\n* Konzeptionelle Fortentwicklung der Webclientarchitektur\n",
"usedTechnologies": [
"Angular",
"Ionic",
"Electron",
"MySQL",
"MariaDB",
"MongoDB",
"Meteor",
"PWA",
"Progressive Web Apps",
"Jest",
"Jesmine",
"Karma",
"Protractor",
"Selenium",
"JavaScript",
"TypeORM",
"Mongoose",
"NestJS",
"SailsJS",
"FeathersJS",
"ExpressJS",
"TypeScript",
"NgRx",
"RxJS",
"Softwarearchitektur",
"TypeScript"
],
"teamSize": 50,
"projectSize": 50,
"staffedAmount": 1,
"managementMethod": "Scrum",
"from": "2016-11-01T00:00:00.000Z",
"to": "2019-12-31T00:00:00.000Z"
},
{
"permamentPosition": true,
"customerOrProjectName": "fymio / Teambank",
"employer": "adorsys GmbH & Co KG",
"role": "Senior Software Engineer",
"descriptionMarkdown": "\nDas Projektziel bestand darin, as Frontend von fymio, einer Fintech-Marke der Teambank AG / easyCredit, zu entwickeln. Im Verlauf des Projekts wurde das Frontend von fymio konzipiert, gestaltet und implementiert, um eine benutzerfreundliche und ansprechende Benutzeroberfläche für die Kunden bereitzustellen.\n",
"usedTechnologies": [
"HTML",
"HTML5",
"CSS",
"SASS",
"JavaScript",
"TypeScript",
"AngularJS",
"Angular"
],
"teamSize": 10,
"projectSize": 10,
"staffedAmount": 1,
"managementMethod": "Scrum",
"from": "2016-09-01T00:00:00.000Z",
"to": "2016-11-30T00:00:00.000Z"
},
{
"permamentPosition": true,
"employer": "HOTEL DE AG",
"role": "Senior JavaScript Engineer & Evangelist",
"descriptionMarkdown": "\nDas Projektziel bestand darin, die Entwicklung der neuen responsiven Plattform für die Marken HOTEL DE und HOTEL INFO für den deutschen und internationalen Markt.\n\n* Durchführung von Schulungen und Coaching-Sitzungen für Entwickler, um sie bei der Arbeit an der neuen reaktionsschnellen Plattform zu unterstützen\n* Präsentation von Vorträgen auf Treffen und Konferenzen, um Menschen über neue Technologien zu informieren und die Marken HOTEL DE zu repräsentieren\n* Organisation und Durchführung regelmäßiger interner Workshops und Brownbag-Sessions in allen Entwicklungsteams, um Wissen zu teilen und die Teams zu stärke\n* Darstellung technischer Entscheidungen für andere Abteilungen wie UX, Produktmanagement und Business Intelligence, um die Zusammenarbeit und das Verständnis über alle beteiligten Abteilungen hinweg zu fördern\n* Lokalisierung, Analyse und Beseitigung von Softwarefehlern\n* Technische Leitung von Projektgruppen (Interdisziplinäre Scrum Teams)\n",
"usedTechnologies": [
"HTML",
"HTML5",
"CSS",
"SASS",
"LESS",
"JavaScript",
"AngularJS",
"Gulp",
"Grunt"
],
"teamSize": 15,
"projectSize": 15,
"staffedAmount": 1,
"managementMethod": "Scrumban",
"from": "2015-09-01T00:00:00.000Z",
"to": "2016-08-30T00:00:00.000Z"
},
{
"permamentPosition": true,
"employer": "Ingentis Software Entwicklung GmbH",
"role": "Senior JavaScript Developer",
"descriptionMarkdown": "\nDas Projektziel bestand darin, JavaScript-Entwicklungen für orginio durchzuführen, einer SaaS-Plattform, die darauf ausgerichtet ist, Daten als Organigramme für kleine und mittlere Unternehmen oder Organisationen zu organisieren und zu visualisieren.\n\n* Verantwortlich für die Implementierung von Funktionen und Features auf der Client-Seite der orginio-Plattform unter Verwendung von AngularJS und SASS\n* Arbeit an der Backend-Entwicklung der orginio-Plattform mit ExpressJS, basierend auf Node, um eine reibungslose Kommunikation zwischen Client und Server zu gewährleisten.\n* Teilnahme an der Planung und Umsetzung von Architekturkonzepten und technischen Lösungen für die orginio-Plattform\n* Enge Zusammenarbeit mit dem Entwicklungsteam, um Best Practices zu fördern und die Leistung sowie die Benutzererfahrung der Plattform kontinuierlich zu verbessern\n* Fehlerbehebung, Performance-Optimierung und kontinuierliche Wartung der orginio-Plattform, um einen zuverlässigen und benutzerfreundlichen Service sicherzustellen\n* Lokalisierung, Analyse und Beseitigung von SW-Fehlern\n* Konzeption von Web-Clients\n",
"usedTechnologies": [
"HTML",
"HTML5",
"CSS",
"SASS",
"LESS",
"JavaScript",
"AngularJS",
"Gulp",
"Grunt",
"ExpressJS",
"NodeJS"
],
"teamSize": 3,
"projectSize": 3,
"staffedAmount": 1,
"managementMethod": "Kanban",
"from": "2015-02-01T00:00:00.000Z",
"to": "2015-08-30T00:00:00.000Z"
},
{
"permamentPosition": true,
"employer": "1&1 Internet AG",
"role": "Software Developer",
"descriptionMarkdown": "\nImplementierung von in-house und third-party Applikationen für die Marken **WEB.DE**, **GMX**, **GMX.com** und **mail.com International**. Implementierung eines IAC (Inter Application Communication) Messaging Hubs für alle Anwendungen innerhalb des Portal Bereichs.\n\n* Entwicklung der Kernkomponente\n* Verantwortlich für die Konzeption, das Design und die Implementierung der Navigator-Kernkomponente\n* Integration von Authentifizierungsmechanismen und Schnittstellen\n* Enge Zusammenarbeit mit den Entwicklungsteams\n* Durchführung von Tests, Fehlerbehebungen und Performance-Optimierungen\n* Dokumentation der Entwicklungsschritte\n* Lokalisierung, Analyse und Beseitigung von Softwarefehlern\n* Konzeption unternehmenskritischer Web-Clients\n",
"usedTechnologies": [
"HTML",
"HTML5",
"CSS",
"LESS",
"SASS",
"JavaScript",
"jQuery",
"jQuery Widgets",
"Underscore",
"Backbone",
"Knockout",
"AngularJS",
"PHP",
"Symfony",
"Git",
"Google Caja",
"PostMessage",
"Adobe Flash (Cross Domain Messaging Fallback)"
],
"teamSize": 250,
"projectSize": 250,
"staffedAmount": 1,
"managementMethod": "Kanban",
"from": "2015-02-01T00:00:00.000Z",
"to": "2015-08-30T00:00:00.000Z"
}
]
},
{
"id": "maen",
"name": "Markus Ende",
"education": {
"degree": "M.Sc. Informatik, Technische Hochschule Nürnberg"
},
"role": "Senior Software Engineer / Architect",
"description": "",
"descriptionMarkdown": "Der Berater ist einer der Mitgründer von qupaya. Er ist selbst leidenschaftlicher Entwickler, Berater und Trainer.\nSeit frühester Kindheit befasst er sich mit dem Programmierung und entwickelt seit über 10 Jahren professionell Software als M.Sc. Informatik, unter\nanderem hochperformante Java-Applikationen im Automotive-Bereich, .NET Core Services in der Automatisierungsbranche sowie anspruchsvolle Angular Frontends\nmit RESTful NestJS APIs im Online-Handel. Softwarequalität und Tests sind ihm dabei stets besonders wichtig.\n\nDurch zahlreiche Projekte hat er Erfahrung in vielen Bereichen der Softwareentwicklung gesammelt, von der Konzeption über Entwicklung und Betrieb bis hin zur\nLeitung von Entwicklungsteams. Zu seinen besonderen Stärken zählt, dass er sich sehr schnell in neue Technologien und Konzepte einarbeiten kann, und dieses Wissen auch sehr gerne weitergibt.\nEr ist flexibel im vollen Stack einsetzbar.\n ",
"industries": [
"Automotive",
"E-Commerce",
"Manufacturing",
"Automatisierungstechnik",
"IT-Dienstleistungen",
"Training"
],
"homeBase": "Nürnberg, Bayern, Deutschland",
"availabilityFrom": "2024-11-01T00:00:00.000Z",
"availabilityPercent": 100,
"travel": "Remote / Nach Absprache",
"skillCategories": [
{
"name": "Frameworks",
"display": "Left",
"skills": [
{
"name": "Angular",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "NestJS",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Astro",
"experience": "Gut",
"tenScale": 8
},
{
"name": "Cypress/Playwright",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Jest/Jasmine",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "NodeJS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "RxJS",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "NgRx",
"experience": "Sehr gut",
"tenScale": 8
}
]
},
{
"name": "Programming",
"display": "Left",
"skills": [
{
"name": "TypeScript",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "JavaScript",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "HTML5",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "CSS/SCSS/SASS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Java",
"experience": "Gut",
"tenScale": 6
},
{
"name": "C#",
"experience": "Gut",
"tenScale": 6
},
{
"name": "SQL / MariaDB",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Infrastruktur & DevOps",
"display": "Left",
"skills": [
{
"name": "Docker",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Kubernetes",
"experience": "Gut",
"tenScale": 6
},
{
"name": "REST",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Git",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "CI/CD (GitHub + GitLab)",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Keycloak",
"experience": "Gut",
"tenScale": 8
}
]
},
{
"name": "Tools",
"display": "Right",
"skills": [
{
"name": "GitLab",
"experience": "Gut",
"tenScale": 6
},
{
"name": "GitHub",
"experience": "Gut",
"tenScale": 6
},
{
"name": "ClickUp",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Nx monorepo",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Agile Frameworks",
"display": "Right",
"skills": [
{
"name": "Kanban",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Scrum",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Sprachen",
"display": "Right",
"skills": [
{
"name": "Deutsch (Muttersprache)",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Englisch (fließend)",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Rumänisch (Grundlagen)",
"experience": "Gut",
"tenScale": 6
}
]
}
],
"projects": [
{
"customerOrProjectName": "Schmitt Aufzüge, Nürnberg",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 10,
"projectSize": 10,
"staffedAmount": 3,
"managementMethod": "Kanban",
"role": "Senior Angular Engineer / Berater",
"descriptionMarkdown": "Der Kunde baut und vertreibt Aufzüge. Mit einem Team von drei Entwicklern erstellen wir mehere Angular Applikationen für die interne Schulungsverwaltung und Aufzugskonfiguration.\n\n* Code-Analyse und Code Review der vorhandenen Codebasis\n* Coaching der Mitarbeiter des Kunden\n* Beratung bezüglich Deployment und Architekturentscheidungen\n* Erstellung einer UI-Architektur mit wiederverwendbarer Komponentenbibliothek in einem Nx Monorepo\n* Erstellung eines Themingframeworks für interne und externe Apps\n* Konzeption und Umsetzung einer internen Angular Applikation für die Schulungsverwaltung\n* Umsetzung einer externen Angular-Anwendung zur Konfiguation von Aufzügen\n* Abstimmung von Restful API-Schnittstellen\n* Beratung bezüglich Softwarequalität und Einbindung von verschiedenen automatisierten Testsystemen und statischer Codeanalyse\n ",
"usedTechnologies": [
"Angular 18",
"REST",
"eslint",
"Signal Store",
"Jest",
"Cypress",
"GitLab CI",
"Nx"
],
"from": "2024-05-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Symetics GmbH, Berlin - workshops.de / angular.de Angular Schulungen",
"employer": "freelance / qupaya technologies GmbH",
"permamentPosition": false,
"teamSize": 1,
"projectSize": 1,
"staffedAmount": 1,
"role": "Angular Trainer",
"descriptionMarkdown": "\nIn Zusammenarbeit mit dem Kunden geben wir öffentliche und firmeninterne Angular-Schulungen.\n\n* Durchführung von Workshops vor Ort beim Kunden oder remote\n* Schulung der Teilnehmer in Angular und TypeScript-Themen von Basis- bis Expertenwissen\n* Leiten und korrigieren der Hands-On-Übungen\n* Pflegen der Übungsmaterialien\n ",
"usedTechnologies": [
"Angular",
"TypeScript",
"RxJS"
],
"from": "2019-12-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Restlos Industrieverwertungen & Service GmbH, Nürnberg - Auktionsplattform",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 7,
"projectSize": 8,
"staffedAmount": 7,
"managementMethod": "Scrumban",
"role": "Lead Software Engineer / Architect",
"descriptionMarkdown": "\nDer Kunde ist ein Unternehmen, das sich auf nachhaltige Industrieverwertungen konzentriert. Ein beträchtlicher Teil ihrer Waren wird auf der Online-Plattform https://auktionen.restlos.com versteigert.\n\nMit einem Team von durchschnittlich sieben Entwicklern haben wir die Auktionsplattform neu entwickelt. Wir unterstützen weiterhin langfristig durch Wartung und Erweiterung der Funktionalität, sowie bei Automatisierung und Prozessverbesserungen, Vor-Ort-Abholungen und Rechnungsautomatisierung.\n\n* Konzeption der Cloud-Architektur der Auktionsplattform, dessen Managementsystem und Companion-App (Android)\n* Konzeption, Entwicklung und Containerisierung der beteiligten NestJS REST-APIs\n* Konzeption und Umsetzung der verschiedenen Angular-Frontends und Ionic/Capacitor Applikationen\n* Migration von 60.000 Kundendaten aus einer closed-source Lösung zur neuen Plattform im August 2023\n* Durchführen von Code- und Kundenreviews\n* Anforderungsanalyse und Pflege des Ticketsystems\n* Konfigurieren und Anbinden des Authentifizierungssystems (Keycloak)\n* Unit- und Integationstest der APIs und Frontends\n* End-to-End-Tests\n ",
"usedTechnologies": [
"Angular (12-17)",
"Angular Material",
"Angular CDK",
"Ionic / Capacitor",
"NestJS",
"MariaDB",
"Redis",
"SSR / Angular Universal",
"API",
"Ably",
"REST",
"nx",
"Storybook",
"TypeScript",
"CSS",
"Tailwind",
"TypeORM",
"Jest",
"Cypress",
"Playwright",
"Artillery",
"Docker",
"Kubernetes",
"aws s3",
"aws lambda",
"Keycloak",
"Figma"
],
"from": "2021-12-01T00:00:00.000Z",
"to": "2024-01-31T00:00:00.000Z"
},
{
"customerOrProjectName": "Restlos Industrieverwertungen & Service GmbH, Nürnberg - Webapplikation zur Rechnungsautomatisierung",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 2,
"projectSize": 3,
"staffedAmount": 2,
"managementMethod": "Scrum",
"role": "Lead Software Engineer / Architect",
"descriptionMarkdown": "\nDigitalisierung und Automatisierung der Rechnungsstellung nach Auslaufen der Auktionen.\n\n* Analyse der bestehenden Prozesse zur Rechnungsstellung und -versand\n* Konzeption einer Webapplikation zur Digitalisierung dieser Prozesse\n* Umsetzung der Webapplikation mit Angular im Frontend und RESTful NestJS API im Backend\n* Unterstützung der Inbetriebnahme der Applikation in der Cloud\n ",
"usedTechnologies": [
"Angular (12-17)",
"Angular Material",
"NestJS",
"MariaDB",
"Redis",
"BullMQ",
"REST",
"nx",
"TypeScript",
"TypeORM",
"Jest",
"Cypress"
],
"from": "2021-05-01T00:00:00.000Z",
"to": "2022-01-31T00:00:00.000Z"
},
{
"customerOrProjectName": "marketoolz GmbH, Hamburg - Entsorgungsmanagementplattform",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 5,
"projectSize": 10,
"staffedAmount": 3,
"managementMethod": "Scrum",
"role": "Senior Software Engineer (Angular)",
"descriptionMarkdown": "\nDer Kunde betreibt eine Webplattform für Abfallmanagement, die von verschiedenen Unternehmen in der Abfall- und Recyclingbranche genutzt wird.\nEin Team von drei Softwareentwicklern und Beratern unterstützte marketoolz bei der Erstellung von Angular-Anwendungen und bei deren White-Labeling Architektur.\n\n* Konzeption und Entwicklung von White-Label-fähigen Angular-Anwendungen\n* Überführung einer AngularJS-Codebasis in eine moderne Angular-Applikation\n* Teilen unseres Fachwissens in regelmäßigen Consulting-Sessions und In-House-Workshops\n* Code Reviews\n* Erstellung von Unit- und Integrationstests\n ",
"usedTechnologies": [
"Angular (8-12)",
"Angular Material",
"Angular CDK",
"AngularJS",
"TypeScript",
"Jest",
"Cypress",
"nx"
],
"from": "2020-05-01T00:00:00.000Z",
"to": "2022-03-02T00:00:00.000Z"
},
{
"customerOrProjectName": "Exasol AG - Cluster Management Webfrontend",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 3,
"projectSize": 20,
"staffedAmount": 1,
"managementMethod": "Scrum",
"role": "Senior Frontend Engineer (Angular)",
"descriptionMarkdown": "\nEntwicklung eines Angular-Webfrontends für die Verwaltung von Datenbank-Clustern.\n* Entwicklung von Angular-Komponenten und Businesslogik auf Basis von Screendesigns und Spezifikationen\n* Anbindung der REST-APIs\n* Anpassungen der Go-REST-API für das Frontend\n* Erstellung eines Test-Konzepts\n* Erstellung von Unit- und Integrations-Tests.\n* Code Reviews\n ",
"usedTechnologies": [
"Angular",
"TypeScript",
"RxJS",
"Go",
"Karma/Jasmine",
"Cypress"
],
"from": "2020-08-01T00:00:00.000Z",
"to": "2021-08-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Siemens AG - SIDIS Pro",
"employer": "freiberuflich",
"permamentPosition": false,
"teamSize": 5,
"projectSize": 5,
"staffedAmount": 1,
"managementMethod": "Kanban",
"role": "IT Consultant Softwareentwicklung",
"descriptionMarkdown": "Erweiterung bestehender Applikationen und Dashboards im Umfeld von IoT (Internet of Things).\n* Entwicklung eines Authentifizierungsservers\n* Anbindung eines DevExtreme Dashboards an die vorhandenen REST-Services und Integration dessen in eine Angular-Applikation\n* Erweiterung eines Admin Clients zur Visualisierung von IoT-Daten\n* Erweiterung der Backend-Services\n* Erstellung von Unit- und Integrationstests\n ",
"usedTechnologies": [
"Angular",
"DevExtreme",
"HTML5",
"CSS",
"JavaScript",
"REST",
"OAuth2",
"C#",
".NET Core",
"ASP.NET",
"SQL",
"GitLab"
],
"from": "2019-05-01T00:00:00.000Z",
"to": "2020-05-31T00:00:00.000Z"
},
{
"customerOrProjectName": "e.solutions GmbH - UI Bootcamps",
"employer": "freiberuflich",
"permamentPosition": false,
"teamSize": {
"from": 5,
"to": 10
},
"projectSize": {
"from": 5,
"to": 10
},
"staffedAmount": 0,
"from": "2018-10-01T00:00:00.000Z",
"to": "2019-04-30T00:00:00.000Z",
"role": "Trainer / IT Consultant",
"usedTechnologies": [
"Angular",
"TypeScript",
"JavaScript",
"CSS",
"SASS",
"HTML5",
"RxJS",
"REST",
"GitHub",
"Websockets",
"Jest",
"Cypress"
],
"descriptionMarkdown": "Beratung und Training im Rahmen eines UI Bootcamps\n- Training von Webentwicklern in mehrwöchigen Angular \"UI Bootcamps\"\n- Organisation der Trainingsabläufe\n- Verfeinern der Trainingsunterlagen\n- Code Reviews der Trainingsprojekte\n"
},
{
"customerOrProjectName": "Siemens AG ",
"employer": "freiberuflich",
"permamentPosition": false,
"teamSize": 5,
"projectSize": 5,
"staffedAmount": 1,
"managementMethod": "Kanban",
"role": "IT Consultant Softwareentwicklung / -architektur",
"descriptionMarkdown": "Konzeption und Entwicklung von Angular Applikationen für die MindSphere IoT-Platform.\n* Architekturelles Review und Refactoring der vorhandenen Codebasis\n* Überführung in eine Mono-Repository-Projektarchitektur und Entwicklung von Tooling dafür\n* Einrichten der Continous Integration und Deployment Pipeline\n* Konzeption und Entwicklung von Angular Apps und Basiskomponenten mit deren Bedienlogik\n* Design der REST-Schnittstellen und Abstimmung mit den Backend-Entwicklern\n* Konzeption und Entwicklung einer Echtzeit-Visualisierung von Fahrzeugbewegungsdaten auf einer Karte\n* Erstellung von Unittests und UI-Integrationstests\n* Schulung der Mitarbeiter in Angular und Code Quality Themen sowie Durchführen von Code Reviews\n ",
"usedTechnologies": [
"Angular",
"TypeScript",
"Websockets",
"Bootstrap",
"DevExtreme",
"GitLab",
"NX Monorepo",
"CI/CD",
"MindSphere",
"SVG"
],
"from": "2018-06-01T00:00:00.000Z",
"to": "2019-09-30T00:00:00.000Z"
},
{
"employer": "Consort IT - Consort Microservice Experience",
"permamentPosition": true,
"teamSize": 4,
"projectSize": 10,
"staffedAmount": 0,
"managementMethod": "Scrum",
"from": "2018-02-01T00:00:00.000Z",
"to": "2018-05-01T00:00:00.000Z",
"role": "Senior Frontend Engineer",
"usedTechnologies": [
"TypeScript",
"Angular",
"CSS",
"HTML5",
"JavaScript",
"REST",
"Swagger",
"Pact",
"Docker",
"Kubernetes",
"aws",
"Microservices"
],
"descriptionMarkdown": "Entwicklung des Angular 5 Frontends für das Microservice-Managementsystem \"Consort Microservice Experience\"\n- Definition und Abstimmung der REST-Schnittstellen zu den Microservices via Swagger\n- Erstellung von Pact-Tests für das Contracts Testing der Schnittstellen\n- Planung und Umsetzung des modularen Frontends\n- Planung und Umsetzung der Internationalisierung mittels ngx-translate\n- Unit Testing mit Karma, Jasmine und ts-mockito\n- Erstellung von Tooling in Form von Bash-Scripten"
},
{
"employer": "e.solutions GmbH - Angular Infotainment Porsche",
"permamentPosition": true,
"teamSize": 5,
"projectSize": 40,
"staffedAmount": 0,
"managementMethod": "Scrum",
"from": "2016-10-01T00:00:00.000Z",
"to": "2018-02-01T00:00:00.000Z",
"role": "Senior Software Engineer",
"usedTechnologies": [
"TypeScript",
"Angular",
"AngularJS",
"CSS",
"HTML5",
"JavaScript",
"REST",
"Electron",
"Websockets"
],
"descriptionMarkdown": "Serienentwicklung des Infotainmentsystems von Porsche\n- Mitplanung der produktionsreifen Web-Architektur im Fahrzeug\n- Entwicklung der grafischen Oberfläche für das Premiuminfotainmentsystem von Porsche mit Angular (2-5)\n- Umsetzung einer wiederverwendbaren grafischen Komponenten-Bibliothek („Widgets“) und von komplexen Softwarekomponenten in enger Abstimmung mit anderen Abteilungen\n- Abstimmung der Backendschnittstellen (REST + Websockets)\n- Wissensverteilung in Form von Präsentationen\n- Organisation der teamübergreifenden Abstimmung zwischen verschiedenen Entwicklungsteams\n- Schulung und Unterstützung neuer Teammitglieder\n- Erstellung eines Testkonzepts und Entwicklung eines Testframeworks zur Vereinfachung von Angular-Komponententests\n- Ansprechpartner bei allen Fragen zu Unit Tests\n- Durchführung von Rapid Prototyping Workshops beim Kunden (Porsche)\n- Technischer Experte während Jobinterviews"
},
{
"employer": "e.solutions GmbH - Vorentwicklung Angular-Infotainmentsystem",
"permamentPosition": true,
"teamSize": 8,
"projectSize": 8,
"staffedAmount": 0,
"managementMethod": "Kanban",
"from": "2015-10-01T00:00:00.000Z",
"to": "2016-10-01T00:00:00.000Z",
"role": "Senior Software Engineer",
"usedTechnologies": [
"Angular",
"AngularJS",
"TypeScript",
"JavaScript",
"WebGL",
"Three.js",
"CSS",
"SCSS",
"HTML5",
"REST",
"Electron",
"Bitbucket",
"Jenkins"
],
"descriptionMarkdown": "Vorentwicklung für die Umstellung auf die Verwendung von Webtechnologien für Infotainmentsysteme von Audi und Porsche\n- Evaluierung von AngularJS und Angular 2 (Beta) auf technologische Eignung\n- Entwicklung mehrerer POCs („Proof of Concepts“) eines Infotainmentsystems mit Angular 2 (Beta)\n- Entwicklung einer interaktiven Visualisierung eines Fahrzeugmodells mittels WebGL und Three.js\n- Durchführung von Workshops und Präsentationen beim Kunden\n- Durchführung von Schulungen zur Vorbereitung der Serienentwicklung\n "
},
{
"employer": "e.solutions GmbH - Java-Infotainmentsysteme von Audi",
"permamentPosition": true,
"teamSize": 10,
"projectSize": 60,
"staffedAmount": 0,
"managementMethod": "Scrum",
"from": "2014-02-01T00:00:00.000Z",
"to": "2015-09-01T00:00:00.000Z",
"role": "Software Engineer",
"usedTechnologies": [
"Java",
"Kanzi Engine"
],
"descriptionMarkdown": "Entwicklung der Infotainmentsysteme von Audi basierend auf Java\n- Frontend-Entwicklung für die grafische Benutzeroberfläche des Audi Premiuminfotainmentsystems, welches u.a. im Audi Q7, TT, R8, A3, A4 und A5 zum Einsatz kommt\n- Erstellung von wiederverwendbaren grafischen Komponenten („Widgets“) mittels Java und Kanzi Engine\n- Anforderungsanalyse, Design und Implementierung der Anforderungen im Bereich Texteingabe für alle unterstützten Sprachen und Märkte (15 europäische Sprachen, Nordamerika, China, Japan, Korea, Taiwan, Arabisch)\n- Konzeption und Entwicklung der Abläufe zur Ansteuerung der Texteingabekomponenten\n- Anbindung an das Backend\n- Absprachen extern mit Kunden sowie intern teamübergreifend"
}
]
},
{
"id": "jowi",
"name": "Johannes Witt",
"education": {
"degree": "Fachinformatiker für Anwendungsentwicklung (IHK)",
"stations": [
{
"name": "Fachinformatiker für Anwendungsentwicklung, Staatl. Berufsschule I Ansbach",
"from": "2017",
"to": "2019"
},
{
"name": "Fachinformatiker für Anwendungsentwicklung, Staatl. Berufsschule III Fürth",
"from": "2016",
"to": "2017"
}
]
},
"role": "Senior Software Engineer",
"description": "",
"descriptionMarkdown": "\nDer Berater ist Mitarbeiter der ersten Stunde in unserem Unternehmen und bringt umfassende Erfahrung in der Entwicklung von Full-Stack-Softwarelösungen mit sich.\nSeine Expertise erstreckt sich über modernste Frontend-Technologien, insbesondere Angular, über NestJS bis auf die Datenbankebene hinunter.\nAls Ausbildungsleiter bringt er außerdem eine Leidenschaft für das Vermitteln von Wissen und die Förderung von Talenten mit.\n",
"industries": [
"E-Commerce",
"Software as a Service (SaaS)"
],
"homeBase": "Nürnberg, Bayern, Deutschland",
"availabilityFrom": "2024-10-01T00:00:00.000Z",
"availabilityPercent": 100,
"travel": "Remote / Nach Absprache",
"skillCategories": [
{
"name": "Frameworks",
"display": "Left",
"skills": [
{
"name": "Angular",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "NestJS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Cypress/Playwright",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Jest/Jasmine",
"experience": "Gut",
"tenScale": 6
},
{
"name": "nx",
"experience": "Gut",
"tenScale": 6
},
{
"name": "NodeJS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "RxJS",
"experience": "Gut",
"tenScale": 6
},
{
"name": "MeteorJS",
"experience": "Sehr gut",
"tenScale": 8
}
]
},
{
"name": "Programming",
"display": "Left",
"skills": [
{
"name": "TypeScript",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "JavaScript",
"experience": "Gut",
"tenScale": 6
},
{
"name": "HTML 5",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "CSS / SCSS / SASS",
"experience": "Gut",
"tenScale": 6
},
{
"name": "SQL",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "PHP",
"experience": "Sehr gut",
"tenScale": 8
}
]
},
{
"name": "Infrastruktur",
"display": "Left",
"skills": [
{
"name": "Docker",
"experience": "Gut",
"tenScale": 6
},
{
"name": "MariaDB (MySQL)",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "MongoDB",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Redis",
"experience": "Gut",
"tenScale": 6
},
{
"name": "REST",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Git",
"experience": "Gut",
"tenScale": 6
},
{
"name": "NPM",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Kubernetes",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Tools",
"display": "Right",
"skills": [
{
"name": "GitLab",
"experience": "Gut",
"tenScale": 6
},
{
"name": "GitHub",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Bitbucket",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "JIRA & Confluence",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "ClickUp",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Agile Frameworks",
"display": "Right",
"skills": [
{
"name": "Kanban",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Scrum",
"experience": "Sehr gut",
"tenScale": 8
}
]
},
{
"name": "Sprachen",
"display": "Right",
"skills": [
{
"name": "German (native)",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "English (fluent)",
"experience": "Sehr gut",
"tenScale": 8
}
]
}
],
"projects": [
{
"customerOrProjectName": "Schmitt Aufzüge, Nürnberg",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 10,
"projectSize": 10,
"staffedAmount": 3,
"managementMethod": "Kanban",
"role": "Senior Angular Engineer / Berater",
"descriptionMarkdown": "Der Kunde baut und vertreibt Aufzüge. Mit einem Team von drei Entwicklern erstellen wir mehere Angular Applikationen für die interne Schulungsverwaltung und Aufzugskonfiguration.\n\n* Code-Analyse und Code Review der vorhandenen Codebasis\n* Coaching der Mitarbeiter des Kunden\n* Beratung bezüglich Deployment und Architekturentscheidungen\n* Erstellung einer UI-Architektur mit wiederverwendbarer Komponentenbibliothek in einem Nx Monorepo\n* Erstellung eines Themingframeworks für interne und externe Apps\n* Konzeption und Umsetzung einer internen Angular Applikation für die Schulungsverwaltung\n* Umsetzung einer externen Angular-Anwendung zur Konfiguation von Aufzügen\n* Abstimmung von Restful API-Schnittstellen\n* Beratung bezüglich Softwarequalität und Einbindung von verschiedenen automatisierten Testsystemen und statischer Codeanalyse\n ",
"usedTechnologies": [
"Angular 18",
"REST",
"eslint",
"Signal Store",
"Jest",
"Cypress",
"GitLab CI",
"Nx"
],
"from": "2024-05-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Restlos Industrieverwertungen & Service GmbH, Nürnberg - Auktionsplattform",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 7,
"projectSize": 8,
"staffedAmount": 7,
"managementMethod": "Scrumban",
"role": "Full-Stack Software Engineer",
"descriptionMarkdown": "\nDer Kunde ist ein Unternehmen, das sich auf nachhaltige Industrieverwertungen konzentriert. Ein beträchtlicher Teil ihrer Waren wird auf der Online-Plattform https://auktionen.restlos.com versteigert.\n\nMit einem Team von durchschnittlich sieben Entwicklern haben wir die Auktionsplattform neu entwickelt. Wir unterstützen weiterhin langfristig durch Wartung und Erweiterung der Funktionalität, sowie bei Automatisierung und Prozessverbesserungen, Vor-Ort-Abholungen und Rechnungsautomatisierung.\n\n* Konzeption der Cloud-Architektur der Auktionsplattform, dessen Managementsystem und Companion-App (Android)\n* Konzeption, Entwicklung und Containerisierung der beteiligten NestJS REST-APIs\n* Konzeption und Umsetzung der verschiedenen Angular-Frontends und Ionic/Capacitor Applikationen\n* Migration von 60.000 Kundendaten aus einer closed-source Lösung zur neuen Plattform im August 2023\n* Durchführen von Code- und Kundenreviews\n* Anforderungsanalyse und Pflege des Ticketsystems\n* Konfigurieren und Anbinden des Authentifizierungssystems (Keycloak)\n* Unit- und Integationstest der APIs und Frontends\n* End-to-End-Tests\n ",
"usedTechnologies": [
"Angular (12-17)",
"Angular Material",
"Angular CDK",
"Ionic / Capacitor",
"NestJS",
"MariaDB",
"Redis",
"SSR / Angular Universal",
"API",
"Ably",
"REST",
"nx",
"Storybook",
"TypeScript",
"CSS",
"Tailwind",
"TypeORM",
"Jest",
"Cypress",
"Playwright",
"Artillery",
"Docker",
"Kubernetes",
"aws s3",
"aws lambda",
"Keycloak",
"Figma"
],
"from": "2022-07-01T00:00:00.000Z",
"to": "2024-05-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Siemens AG, München - CERES",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 3,
"projectSize": 3,
"staffedAmount": 2,
"managementMethod": "Kanban",
"role": "Full-Stack Software Engineer",
"descriptionMarkdown": "\nMit einem Team von drei Softwareentwicklern haben wir unserem Kunden dabei geholfen, weitere Funktionen für eine interne Plattform zur Verwaltung von Budgets, Personalmitteln und Materialien zu entwickeln.\n\n* Entwicklung von Angular-Komponenten und Businesslogik auf Basis von Spezifikationen\n* Performanceoptimierung und Refactoring bestehender Komponenten\n* Code Reviews und Handlungsempfehlungen zum Erreichen der Produktroadmap\n* Erstellung von Unit- und Integrationstests.\n ",
"usedTechnologies": [
"Angular (14-15)",
"Angular Material",
"Angular CDK",
"TypeScript",
"nx",
"NestJS",
"ProstgreSQL",
"Jest"
],
"from": "2022-04-01T00:00:00.000Z",
"to": "2022-07-01T00:00:00.000Z"
},
{
"customerOrProjectName": "marketoolz GmbH, Hamburg - Entsorgungsmanagementplattform",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 5,
"projectSize": 10,
"staffedAmount": 3,
"managementMethod": "Scrum",
"role": "Frontend Engineer",
"descriptionMarkdown": "\nDer Kunde betreibt eine Webplattform für Abfallmanagement, die von verschiedenen Unternehmen in der Abfall- und Recyclingbranche genutzt wird.\nEin Team von drei Softwareentwicklern und Beratern unterstützte marketoolz bei der Erstellung von Angular-Anwendungen und bei deren White-Labeling Architektur.\n\n* Konzeption und Entwicklung von White-Label-fähigen Angular-Anwendungen\n* Überführung einer AngularJS-Codebasis in eine moderne Angular-Applikation\n* Teilen unseres Fachwissens in regelmäßigen Consulting-Sessions und In-House-Workshops\n* Code Reviews\n* Erstellung von Unit- und Integrationstests\n ",
"usedTechnologies": [
"Angular (8-12)",
"Angular Material",
"Angular CDK",
"AngularJS",
"TypeScript",
"Jest",
"Cypress",
"nx"
],
"from": "2020-09-01T00:00:00.000Z",
"to": "2022-04-01T00:00:00.000Z"
},
{
"employer": "Tradebyte Software GmbH",
"permamentPosition": true,
"teamSize": 8,
"projectSize": 25,
"staffedAmount": 0,
"managementMethod": "Kanban",
"role": "Software Developer",
"descriptionMarkdown": "Entwicklung eines hochskalierbaren Online-Warehousetools im B2B-Bereich und von weiteren Inhouse-Tools.\n* Konzeption und Entwicklung der REST-Endpunkte\n* Datenbankkonzeption und Performanceverbesserung\n* Abstimmung und Anbindung an third-party REST-Schnittstellen in direkter Zusammenarbeit mit externen Entwicklern\n* Entwicklung der grafischen Benutzeroberfläche\n* Beseitigen von Software-Fehlern\n* Code Reviews",
"usedTechnologies": [
"SQL",
"PHP",
"Python",
"Django",
"Angular",
"JavaScript",
"TypeScript"
],
"from": "2017-04-01T00:00:00.000Z",
"to": "2020-08-31T00:00:00.000Z"
},
{
"employer": "404 Heroes",
"permamentPosition": true,
"teamSize": 3,
"projectSize": 3,
"staffedAmount": 0,
"managementMethod": "Scrum",
"role": "Full Stack Developer",
"descriptionMarkdown": "Entwicklung von kundenspezifischen Softwarelösungen im Bereich Socializing und Datentransfer.\n* Konzeption und Entwicklung der Backend-Endpunkte\n* Entwicklung von Frontend-Komponenten\n* Beseitigen von Software-Fehlern\n* Code Reviews",
"usedTechnologies": [
"SQL",
"MongoDB",
"JavaScript",
"MeteorJS",
"AngularJS",
"HTML5",
"CSS"
],
"from": "2016-09-30T00:00:00.000Z",
"to": "2017-04-30T00:00:00.000Z"
}
]
},
{
"id": "ante",
"name": "Andreas Tennert",
"education": {
"degree": "Diplom-Informatiker, Technische Universität Dresden",
"stations": [
{
"name": "Technische Universität Dresden",
"from": "2006",
"to": "2013"
}
]
},
"role": "Senior Software Engineer / Architect",
"description": "",
"descriptionMarkdown": "\n__Senior Software Architect, Trainer und Berater für wegweisende Technologien__\n\nDer Berater ist ein erfahrener Senior Software Architect, der als **Trainer** bei workshops.de sein Wissen teilt und als **Berater** Unternehmen dabei unterstützt, innovative Lösungen umzusetzen. Seine Fachgebiete umfassen **Angular, NestJS, TypeScript und Kotlin.** Der Berater ist nicht nur ein Experte in der Softwarearchitektur, sondern auch ein gefragter **Public Speaker** auf Konferenzen und Barcamps.\n\nSein Engagement und seine Fachkenntnisse tragen dazu bei, wegweisende Technologien in der Softwareentwicklung voranzutreiben und Unternehmen und Entwicklungsteams zu inspirieren.\n ",
"industries": [
"Automotive",
"E-Commerce",
"Retail Services",
"Software as a Service (SaaS)"
],
"homeBase": "Dresden, Sachsen, Deutschland",
"availabilityFrom": "2024-10-01T00:00:00.000Z",
"availabilityPercent": 100,
"travel": "Nach Absprache, vorwiegend Remote",
"skillCategories": [
{
"name": "Frameworks",
"display": "Left",
"skills": [
{
"name": "Angular",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "NestJS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Astro",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Cypress/Playwright",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Jest/Jasmine",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "nx",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "NgRx",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Tailwind",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "NodeJS",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "RxJS",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Ionic",
"experience": "Sehr gut",
"tenScale": 6
},
{
"name": "Electron",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Programming",
"display": "Left",
"skills": [
{
"name": "Kotlin",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Java",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "TypeScript",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "JavaScript",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "HTML5",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "CSS/SCSS/SASS",
"experience": "Sehr gut",
"tenScale": 8
}
]
},
{
"name": "Infrastruktur",
"display": "Left",
"skills": [
{
"name": "Domain Driven Design",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "Keycloak",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Keycloak plugins",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Micro Frontend Architecture",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Micro Service Architecture",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Cloud Native",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Docker",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "MariaDB (MySQL)",
"experience": "Gut",
"tenScale": 6
},
{
"name": "MongoDB",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Redis",
"experience": "Gut",
"tenScale": 6
},
{
"name": "REST",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Git",
"experience": "Gut",
"tenScale": 6
},
{
"name": "GitHub Actions",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Tools",
"display": "Right",
"skills": [
{
"name": "GitLab",
"experience": "Gut",
"tenScale": 6
},
{
"name": "GitHub",
"experience": "Gut",
"tenScale": 6
},
{
"name": "Bitbucket",
"experience": "Gut",
"tenScale": 6
},
{
"name": "JIRA & Confluence",
"experience": "Gut",
"tenScale": 6
},
{
"name": "ClickUp",
"experience": "Gut",
"tenScale": 6
}
]
},
{
"name": "Agile Frameworks",
"display": "Right",
"skills": [
{
"name": "Kanban",
"experience": "Sehr gut",
"tenScale": 8
},
{
"name": "Scrum",
"experience": "Sehr gut",
"tenScale": 8
}
]
},
{
"name": "Sprachen",
"display": "Right",
"skills": [
{
"name": "German (native)",
"experience": "Exzellent",
"tenScale": 10
},
{
"name": "English (fluent)",
"experience": "Sehr gut",
"tenScale": 8
}
]
}
],
"projects": [
{
"customerOrProjectName": "Schmitt Aufzüge, Nürnberg",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 10,
"projectSize": 10,
"staffedAmount": 3,
"managementMethod": "Kanban",
"role": "Senior Angular Engineer / Berater",
"descriptionMarkdown": "Der Kunde baut und vertreibt Aufzüge. Mit einem Team von drei Entwicklern erstellen wir mehere Angular Applikationen für die interne Schulungsverwaltung und Aufzugskonfiguration.\n\n* Code-Analyse und Code Review der vorhandenen Codebasis\n* Coaching der Mitarbeiter des Kunden\n* Beratung bezüglich Deployment und Architekturentscheidungen\n* Erstellung einer UI-Architektur mit wiederverwendbarer Komponentenbibliothek in einem Nx Monorepo\n* Erstellung eines Themingframeworks für interne und externe Apps\n* Konzeption und Umsetzung einer internen Angular Applikation für die Schulungsverwaltung\n* Umsetzung einer externen Angular-Anwendung zur Konfiguation von Aufzügen\n* Abstimmung von Restful API-Schnittstellen\n* Beratung bezüglich Softwarequalität und Einbindung von verschiedenen automatisierten Testsystemen und statischer Codeanalyse\n ",
"usedTechnologies": [
"Angular 18",
"REST",
"eslint",
"Signal Store",
"Jest",
"Cypress",
"GitLab CI",
"Nx"
],
"from": "2024-05-01T00:00:00.000Z"
},
{
"customerOrProjectName": "SachsenEnerge, Dresden",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 30,
"projectSize": 30,
"staffedAmount": 1,
"role": "Senior Berater Angular und NestJS",
"descriptionMarkdown": "Der Kunde ist ein Energielieferant in Dresden. \n\n* Code-Analyse und Code Review der vorhandenen Codebasis\n* Analyse des NestJS-Backends in Hinsicht auf Best Practices bzgl. Performance, Security, Wartbarkeit\n* Review der Angular Applikation bzgl. Performance, Accessibility und allgemeinen Best Practices\n* Form,ulierung von Handlungsempfehlungen für die schrittweise Verbesserung\n ",
"usedTechnologies": [
"Angular",
"NestJS",
"REST"
],
"from": "2024-04-01T00:00:00.000Z",
"to": "2024-06-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Symetics GmbH, Berlin - workshops.de / angular.de Angular Schulungen",
"employer": "qupaya technologies GmbH",
"permamentPosition": false,
"teamSize": 1,
"projectSize": 1,
"staffedAmount": 1,
"role": "Angular Trainer",
"descriptionMarkdown": "\nIn Zusammenarbeit mit dem Kunden geben wir öffentliche und firmeninterne Angular-Schulungen.\n\n* Durchführung von Workshops vor Ort beim Kunden oder remote\n* Schulung der Teilnehmer in Angular und TypeScript-Themen von Basis- bis Expertenwissen\n* Leiten und korrigieren der Hands-On-Übungen\n* Pflegen der Übungsmaterialien\n ",
"usedTechnologies": [
"Angular",
"TypeScript",
"RxJS"
],
"from": "2024-01-01T00:00:00.000Z",
"to": "2025-03-16T20:30:18.285Z"
},
{
"customerOrProjectName": "upkeepr UG, Köln",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 2,
"projectSize": 4,
"staffedAmount": 2,
"managementMethod": "Kanban",
"role": "Senior Consultant (Angular / Ionic)",
"descriptionMarkdown": "upkeepr ist eine Webplattform und mobile Anwendung zur Verwaltung von Audits. Mit einem Team von zwei Entwicklern unterstützten wir bei der Entwicklung von Funktionen, Refaktorisierung, Datenmigration und langfristiger Wartung.\n* Aktualisierung einer Legacy-Anwendung auf die neuesten stabilen Versionen von Ionic (7) und Angular (17) zur Vorbereitung für Android- und iOS-Zielplattformen\n* Code-Analyse und Code Review\n* Anweisung von Handlungsempfehlungen zur erreichungen der Produktziele\n* Entwurf einer Strategie passend zur Produktroadmap\n* Performance-Improvements der Ionic App unter iOS und Android\n* Bugfixing und Refactoring der bestehenden Codebase\n* Wartung und Pflege\n ",
"usedTechnologies": [
"Angular 17",
"TypeScript",
"CSS",
"Ionic",
"Capacitor",
"SQLite",
"Offline Storage",
"Synchronization",
"Jest"
],
"from": "2022-07-01T00:00:00.000Z",
"to": "2024-03-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Restlos Industrieverwertungen & Service GmbH, Nürnberg - Auktionsplattform",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 7,
"projectSize": 8,
"staffedAmount": 7,
"managementMethod": "Scrumban",
"role": "Senior Software Engineer (Angular / NestJS)",
"descriptionMarkdown": "Restlos ist ein Unternehmen, das sich auf nachhaltige Industrieverwertungen konzentriert. Ein beträchtlicher Teil ihrer Waren wird auf ihrer Plattform [auktionen.restlos.com](https://auktionen.restlos.com/) versteigert.\n Mit einem Team von durchschnittlich sieben Entwicklern haben wir die Auktionsplattform neu entwickelt. Wir unterstützen weiterhin langfristig durch Wartung und Erweiterung der Funktionalität, sowie bei Automatisierung und Prozessverbesserungen, Vor-Ort-Abholungen und Rechnungsautomatisierung.\n* Konfigurieren und Anbinden des Authentifizierungssystems (Keycloak)\n* Entwurf und Entwicklung von Plugins für Keycloak\n* Entwurf und Entwicklung der Newsletter-Anbindung der Auktionsplattform über den gesamten Stack\n* Spezifikation und Erweiterung der beteiligten NestJS REST-APIs\n* Konzeption und Umsetzung der verschiedenen Angular-Frontends und -Komponenten\n* Migration der Daten von über 60.000 Kunden von der vorherigen Closed-Source-Software, auf der die Auktionen vor August 2023 liefen\n* Spezifizieren und Implementieren Unit- und Integationstest der APIs und Frontends\n* Spezifizieren und Implementieren von End-to-End-Tests\n* Durchführen von Code-Reviews\n* Dokumentation und Präsentation von Entwicklungsfortschritten und -ergebnissen",
"usedTechnologies": [
"Angular (12-17)",
"Angular Material",
"Angular CDK",
"NestJS",
"MariaDB",
"REST",
"nx",
"TypeScript",
"CSS",
"Tailwind",
"TypeORM",
"Jest",
"Cypress",
"Playwright",
"aws lambda",
"Keycloak"
],
"from": "2021-09-01T00:00:00.000Z",
"to": "2023-12-01T00:00:00.000Z"
},
{
"customerOrProjectName": "UNOWN Fashion",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 4,
"projectSize": 4,
"staffedAmount": 2,
"managementMethod": "Kanban",
"role": "Senior Software Engineer & Consultant (Angular / NestJS)",
"descriptionMarkdown": "UNOWN war ein E-Commerce-Unternehmen, das sich auf die Circular Economy spezialisierte und Kleidung und Accessoires als Leasing-Modell, aber auch Buy-out-Modell, vertrieb.\n\nWir haben UNOWN dabei unterstützt, mobile Webanwendungen (Tablet und Smartphone) als Progressive Web Application, sowie Backend-APIs mit NestJS zu erstellen, um Produkte während des Checkout-Vorgangs im Geschäft per Lease-Subscription zu erwerben. Darüber hinaus unterstützten wir UNOWN bei der Erfassung der Waren und der Aufnahme in den Warenbestand. Die Zahlung erfolgte beim Check-out via Stripe als Payment-Anbieter.\n\n* Entwurf der Architektur und eines Proof of Concept vor der Erstellung der Anwendung\n* Unterstützung und Ausarbeitung von Architekturentscheidungen\n* Implementierung von Stripe als Zahlungsanbieter\n* Umsetzung der Anwendung anhand des Figma Designs und UX-Flows\n* Einsatz von NestJS Microservices für Realtime-Kommunikation via Websockets\n ",
"usedTechnologies": [
"Angular 15",
"NestJS",
"TypeScript",
"MySQL",
"PWA",
"API",
"REST",
"TypeORM",
"nx",
"Jest"
],
"from": "2022-10-01T00:00:00.000Z",
"to": "2022-12-01T00:00:00.000Z"
},
{
"customerOrProjectName": "Siemens AG, München - CERES",
"employer": "qupaya technologies GmbH",
"permamentPosition": true,
"teamSize": 3,
"projectSize": 3,
"staffedAmount": 2,
"managementMethod": "Kanban",
"role": "Senior Software Engineer (Angular / NestJS)",
"descriptionMarkdown": "\nMit einem Team von drei Softwareentwicklern haben wir unserem Kunden dabei geholfen, weitere Funktionen für eine interne Plattform zur Verwaltung von Budgets, Personalmitteln und Materialien zu entwickeln.\n\n* Entwicklung von Angular-Komponenten und Businesslogik auf Basis von Spezifikationen\n* Performanceoptimierung und Refactoring bestehender Komponenten\n* Code Reviews und Handlungsempfehlungen zum Erreichen der Produktroadmap\n* Erstellung von Unit- und Integrationstests.\n ",
"usedTechnologies": [
"Angular (14-15)",
"Angular Material",
"Angular CDK",
"TypeScript",
"nx",
"NestJS",
"ProstgreSQL",
"Jest"
],
"from": "2022-01-01T00:00:00.000Z",
"to": "2022-07-01T00:00:00.000Z"
},
{
"employer": "TraceTronic GmbH",
"permamentPosition": true,
"teamSize": 5,
"projectSize": 5,
"staffedAmount": 0,
"role": "Senior Softwareentwickler",
"from": "2018-11-01T00:00:00.000Z",
"to": "2021-12-31T00:00:00.000Z",
"descriptionMarkdown": "Entwicklung von Softwaretooling Im AUTOSAR-Umfeld\n- Entwicklung von Software zur Testverwaltung und -ausführung\n- Anpassung des Codes für die Verwendung von WRSOMEIP für die Adaptive AUTOSAR System Test Gruppe innerhalb des Unternehmens\n- Spezifizierung von Diagnosetestfällen für die Adaptive AUTOSAR System Test Gruppe\n- Entwicklung von integrierter Entwicklungssoftware (IDE) für modellbasiertes Systems Engineering",
"usedTechnologies": [
"Java",
"Kotlin",
"JavaFX",
"Webtechnologien",
"JPA",
"Apache Wicket",
"Maven",
"Jenkins",
"Artifactory",
"C++",
"AUTOSAR",
"Systems Engineering",
"Matlab",
"Closure",
"Ruby"
]
},
{
"employer": "e.solutions GmbH, Erlangen",
"permamentPosition": true,
"teamSize": 10,
"projectSize": 60,
"staffedAmount": 0,
"managementMethod": "Scrum",
"role": "Senior Softwareentwickler Full-Stack",
"from": "2017-10-01T00:00:00.000Z",
"to": "2018-10-31T00:00:00.000Z",
"descriptionMarkdown": "Entwicklung eines Angular-basiertem Infotainment-Systems für Porsche\n* Entwurf und Implementierung von Angular-basierter UI-Kernlogik, wie Display- und Popup-Management, Fernsteuerung und Animationen\n* Entwurf und Implementierung von Funktionsprototypen wie die Anbindung an dynamisch installierte Dienste von Drittanbietern\n* Spezifikation von REST-APIs in Kooperation mit anderen Entwicklerteams\n* Dokumentation und Präsentation von Entwicklungsfortschritten und -ergebnissen\n* Code Reviews und Unterstützung von Junior-Entwicklern\n* Beseitigen von Software-Fehlern",
"usedTechnologies": [
"Angular",
"RxJS",
"TypeScript",
"HTML 5",
"CSS / SCSS",
"Java",
"REST",
"Websockets",
"VIWI"
]
},
{
"employer": "e.solutions GmbH, Erlangen",
"permamentPosition": true,
"teamSize": 10,
"projectSize": 60,
"staffedAmount": 0,
"managementMethod": "Scrum",
"role": "(Senior) Softwareentwickler",
"from": "2014-06-01T00:00:00.000Z",
"to": "2017-09-30T00:00:00.000Z",
"descriptionMarkdown": "Entwicklung von Infotainment-Anwendungen für Fahrzeuge der nächsten Generation für Audi, Porsche und Bentley\n* Entwicklung von Infotainment-Anwendungen der nächsten Generation für die Rücksitze von Audi, Porsche und Bentley\n* Technischer Produktverantwortlicher für das Porsche Media Center für die Rücksitze\n* Entwurf und Implementierung von Android-basierten Media-Center-Anwendungen und Navigationsdiensten, sowie Android UI Widgets\n* Entwurf und Implementierung von Java-Geschäftslogik für Tuner, TV und Kernmedienmanagement für Infotainment auf Vorder- und Rücksitzen, Spezialisierung auf die Handhabung von TV-Tunern und SiriusXM\n* Erfolgreiche Einführung neuer Frameworks und Bibliotheken wie RXJava\n* Spezifikation von APIs in Kooperation mit internationalen Kunden und Hardware-Lieferanten",
"usedTechnologies": [
"Java",
"ReactiveX",
"OSGi",
"Multithreading",
"Scheduling",
"Android",
"Distributed Systems"
]
},
{
"customerOrProjectName": "e.solutions GmbH",
"employer": "Valentum Consulting Group GmbH",
"permamentPosition": true,
"teamSize": 10,
"projectSize": 60,
"staffedAmount": 0,
"managementMethod": "Scrum",
"role": "Softwareentwickler",
"from": "2013-05-01T00:00:00.000Z",
"to": "2014-05-31T00:00:00.000Z",
"descriptionMarkdown": "Infotainment-Software im Automobilbereich\n* Entwicklung von Car-Infotainment-Anwendungen der nächsten Generation für Audi, Porsche und Bentley\n* Entwurf und Implementierung von Java-Geschäftslogik für Tuner und TV",
"usedTechnologies": [
"Java",
"OSGi",
"Multithreading"
]
}
]
}
]