| A | B | C | D | E | F | G | H | I | J | K | L | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||
2 | 🫅 Über mich | |||||||||||
3 | ||||||||||||
4 | Mein Name ist Fabian Maximilian Marcus. Ich bin seit vielen Jahren als Webentwickler tätig. Mein Schwerpunkt lag & liegt dabei stets auf der Frontendentwicklung. Ein Blick über den Tellerrand hinaus ins Backend darf, meiner Meinung nach, aber auch nie fehlen. Ich arbeite so gut wie ausschließlich im JavaScript-Bereich - egal, ob Browser oder Server. Frameworks sind schnell gelernt und für mich eher ein Mittel zum Zweck. | |||||||||||
5 | ||||||||||||
6 | ||||||||||||
7 | ||||||||||||
8 | ||||||||||||
9 | ||||||||||||
10 | ||||||||||||
11 | ||||||||||||
12 | Fabian M. Marcus | 🧑🏫 Ausbildung | ||||||||||
13 | ||||||||||||
14 | Webentwickler | |||||||||||
15 | ⚫ | 2010 - 2013 | Duale Ausbildung | |||||||||
16 | 🙋 Kontakt | Fachinformatiker für Anwendungsentwicklung | ||||||||||
17 | COMDOK GmbH / Heinrich-Hertz-Europakolleg | |||||||||||
18 | ||||||||||||
19 | 📬 Theresienau 11, 53227 Bonn | ⚫ | 2006 - 2010 | Studium an der Fachhochschule Bonn-Rhen-Sieg | ||||||||
20 | Computer Science, nicht abgeschlossen | |||||||||||
21 | ☎️ +49 163 30 60 438 | |||||||||||
22 | ⚫ | 2005 - 2006 | Zivildienst im Kinderheim Maria im Walde in Bonn | |||||||||
23 | 🌍 www.fabian-marcus.de | Bürotätigkeiten unter Anwendung von MS Office, Telefondienst | ||||||||||
24 | ||||||||||||
25 | 📧 email@fabian-marcus.de | ⚫ | 1997 - 2005 | Hardtberg Gymnasium Bonn | ||||||||
26 | Abschluss Abitur | |||||||||||
27 | ||||||||||||
28 | ⚫ | 1993 - 1997 | Grundschule Finkenhof in Bonn | |||||||||
29 | ||||||||||||
30 | 🧑🏻🍳 Tech Stack | 🧑💼 Berufserfahrung | ||||||||||
31 | ||||||||||||
32 | ||||||||||||
33 | ⭐ Javascript / Typescript | ⚫ | 2018 - 2025 | Phoenix Reisen GmbH | ||||||||
34 | ⭐ HTML & SCSS | Entwickler mit Schwerpunkt Frontend | ||||||||||
35 | ⭐ Node.js | Entwicklung der After Sale Reiseverwaltung sowie von | ||||||||||
36 | Applikationen für die Verkaufsabteilung. | |||||||||||
37 | ✔️ Webpack / Rollup | (TS/JS, Mithril, React, JSX, HTML, SCSS, Node.js) | ||||||||||
38 | ✔️ React / Mithril / JSX | |||||||||||
39 | ✔️ Jest / Cypress | ⚫ | 2016 - 2018 | Chefkoch GmbH (www.chefkoch.de) | ||||||||
40 | ✔️ Git / Github | Entwickler mit Schwerpunkt Frontend innerhalb eines Scrumteams | ||||||||||
41 | ✔️ REST / GraphQL | Entwicklung und Wartung neuer und bestehender Features der | ||||||||||
42 | ✔️ SQL / OODBMS / ORM | Plattform. (TS/JS, React, AngularJS, HTML, SCSS) | ||||||||||
43 | ✔️ Fastify / Express | |||||||||||
44 | 🤷 Learn What You Need (LWYN)... | ⚫ | 2014 - 2016 | Pirobase Imperia GmbH | ||||||||
45 | Consultant / Anwendungsentwickler | |||||||||||
46 | 🧑💻 Profile | Entwicklung von Websites & -anwendungen basierend | ||||||||||
47 | auf dem hauseigenen Java-CMS "pirobase" mittels | |||||||||||
48 | gängiger Webtechnologien. (Java, Javascript, HTML, CSS) | |||||||||||
49 | 🔗 www.fabian-marcus.de | |||||||||||
50 | 🔗 www.github.com/fabianmarcus | ⚫ | 2013 - Feb. 2014 | COMDOK GmbH | ||||||||
51 | 🔗 www.linkedin.com/in/fabianmarcus | Anwendungsentwickler | ||||||||||
52 | 🔗 www.xing.com/profile/fabian_marcus | Entwicklung datenbankgestützter Webanwendungen mittels | ||||||||||
53 | gängiger Webtechnologien. (Javascript, PHP, C#, Java/GWT) | |||||||||||
54 | 💁 Eigenschaften | |||||||||||
55 | ⚫ | 2010 - 2013 | Duale Ausbildung | |||||||||
56 | Fachinformatiker für Anwendungsentwicklung | |||||||||||
57 | ⚫ Deutsch, Englisch | Entwicklung datenbankgestützter Webanwendungen mittels | ||||||||||
58 | gängiger Webtechnologien. (Javascript, PHP, C#, Java / GWT) | |||||||||||
59 | ⚫ Pragmatisch, lösungsorientiert | |||||||||||
60 | ⚫ | 2007 - 2010 | Verlag für die Deutsche Wirtschaft AG | |||||||||
61 | ⚫ Entscheidungsfreudig, eigeninitiativ | Werkstudent | ||||||||||
62 | Bereich Portalbetreuung unter Anwendung diverser Content | |||||||||||
63 | ⚫ Neugierig, hartnäckig | Management Systeme. (Typo3, Typolight, Imperia, Drupal, | ||||||||||
64 | evoPage, Wordpress) | |||||||||||
65 | ⚫ Autodidakt, Solo Worker, Team Player | |||||||||||
66 | ||||||||||||
67 | ||||||||||||
68 | 🧑💼 Details | Einblicke | |||||||||||
69 | ||||||||||||
70 | ||||||||||||
71 | Allgemein In den mittlerweile knapp sieben Jahren bei Phoenix Reisen habe ich das Frontend der After Sale Plattform "Mein Phoenix" aufgebaut, sowie die Frontends diverser Intranet-Applikationen für die Verkaufsabteilung zur internen Prozessoptimierung entwickelt. Die Plattform ist zu erreichen unter: https://meinereise.phoenixreisen.com. Über den Button "Mein Phoenix kennenlernen" kann eine Demoversion aufgerufen werden. Die Entwicklungsabteilung bei Phoenix besteht grundsätzlich aus zwei Webentwicklern. Während ich für das Frontend zuständig bin, wird das Backend von einem Kollegen übernommen. Daneben gibt es noch Kollegen, die ausschließlich auf den Datenbanken arbeiten. Diese Arbeitsteilung ermöglichte mir, die Frontend-Architektur umfassend selbst zu gestalten. Tools Das Frontend der After Sale Plattform ist in autarke standalone Applikationen (Micro Frontends, wenn man so will) unterteilt, die aber dennoch in einem Monorepo und mit einer Build Chain verwaltelt, gebundled und deployed werden. Die Frontends wurden weitgehend auf Grundlage von Mithril.js und React entwickelt. Mithril.js ist weniger bekannt, ist React aber sehr ähnlich. Es unterstützt ebenfalls die Oberflächenentwicklung in JSX, nutzt Routing und Lifecycle Methoden zum Rendern der Komponenten und beinhaltet ein lokales Statemanagement für jede Komponente. Genauso können Werte von außen in die Komponente durchgereicht werden. Alles andere lässt sich über npm Module erweitern. Dazu kommen weitere übliche Tools zum Einsatz, wie zum Beispiel: ⚫ Typescript zur statischen Typisierung des Codes und von API-Rückgaben ⚫ der Preprozessor SCSS zum Stylen der Komponenten ⚫ ESLint und Stylelint zum Linten des Codes ⚫ Webpack zum Bauen des Codes (mit einer angepassten Buildkonfiguration für ein vereinfachtes Multi App Environment) ⚫ Jest zum Schreiben von Unittests für einzelne Funktionen ⚫ Cypress zum Schreiben von End-to-End-Tests für entwickelte Oberflächen ⚫ npm packaging (Komponentensammlung des Design Systems) ⚫ eine DIY-DevOps-Umgebung (Bashskripte mit zx & clack/prompts) zum Deployen, Rollbacken, Backupen und Entwickeln der SPAs Weitere Erfahrungen Vue.js, SQL, Google Cloud, Bash Design Das Layout der einzelnen Anwendungen basiert auf dem hauseigenen, von mir entwickelten Design System: https://design-system.phoenixreisen.net. Die Styles sind Framework agnostisch. Die zugehörigen Javascript-Komponenten werden per npm packetiert und als Komponentensammlung bereitgestellt. Backend Da ich gerne auch Full Stack arbeite, ist mir die Entwicklung im Backend nicht fremd. Zuletzt habe ich ein Node.js-Projekt auf Basis von FastifyJS aufgesetzt und entwickelt, das via ORM auf eine MSSQL-Datenbank zugreift. In privaten Nebenprojekten kommt zumeist Googles Firebase mit seiner integrierten objektorientierten Datenbank Firestore zum Einsatz. Künstliche Intelligenz Ich arbeite regelmäßig mit KI-Tools wie Github Copilot, die ich insbesondere für automatisierte Vorschläge und Unterstützung bei der Code-Erstellung einsetze. Der Einsatz von KI hilft mir dabei, effizienter zu arbeiten und komplexe Lösungen schneller zu entwickeln. Das Thema KI interessiert mich darüber hinaus privat, und ich verfolge neue Entwicklungen im Bereich maschinelles Lernen und KI-gestützter Softwareentwicklung aktiv und gerne. Organisation Anstehende Aufgaben werden über ein Kanban-Bord in Trello organisiert und dokumentiert. Probleme beschreibe ich stets in User Stories. Lücken Aufgrund der überschaubaren Abteilungsgröße sind Erfahrungen in Technologien wie Docker oder Kubernetes zuletzt bei Chefkoch genutzt worden und daher eher verkümmert. Falls es notwendig ist, sehe ich aber kein Hindernis, sie wieder zu lernen. | |||||||||||
72 | ||||||||||||
73 | ||||||||||||
74 | ||||||||||||
75 | ||||||||||||
76 | ||||||||||||
77 | ||||||||||||
78 | ||||||||||||
79 | ||||||||||||
80 | ||||||||||||
81 | ||||||||||||
82 | ||||||||||||
83 | ||||||||||||
84 | ||||||||||||
85 | ||||||||||||
86 | ||||||||||||
87 | ||||||||||||
88 | ||||||||||||
89 | ||||||||||||
90 | ||||||||||||
91 | ||||||||||||
92 | ||||||||||||
93 | ||||||||||||
94 | ||||||||||||
95 | ||||||||||||
96 | ||||||||||||
97 | ||||||||||||
98 | ||||||||||||
99 | ||||||||||||
100 | ||||||||||||