From 91c8a825be4cff76093dc87c31e883e0f1a11d8e Mon Sep 17 00:00:00 2001 From: Kai Moschcau Date: Sat, 28 Mar 2026 22:27:02 +0100 Subject: [PATCH] feat(skills): auto-calc years experience and add back arrow --- src/duration-utils.ts | 11 ++ src/icons/back.svg | 8 + src/pages/index.astro | 2 +- src/pages/skills.astro | 420 ++++++++++++++++++++--------------------- 4 files changed, 229 insertions(+), 212 deletions(-) create mode 100644 src/duration-utils.ts create mode 100644 src/icons/back.svg diff --git a/src/duration-utils.ts b/src/duration-utils.ts new file mode 100644 index 0000000..af06197 --- /dev/null +++ b/src/duration-utils.ts @@ -0,0 +1,11 @@ +const UNIX_EPOCH_YEAR = 1970; + +export function getDurationInYearsBetween(start: Date, end: Date): number { + return ( + new Date(end.getTime() - start.getTime()).getUTCFullYear() - UNIX_EPOCH_YEAR + ); +} + +export function getDurationInYearsFrom(from: Date): number { + return getDurationInYearsBetween(from, new Date()); +} diff --git a/src/icons/back.svg b/src/icons/back.svg new file mode 100644 index 0000000..e4657b1 --- /dev/null +++ b/src/icons/back.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/pages/index.astro b/src/pages/index.astro index 4e9da08..5486838 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -11,7 +11,7 @@ import portrait from "../images/portrait.jpg"; import BaseLayout from "../layouts/BaseLayout.astro"; --- - +
- Back -
-
-

Kai Moschcau

-

Meine Skills und was ich die letzten Jahre getrieben habe

-

- Hier siehst du auf einen Blick, wo ich meine StΓ€rken habe und welche - Technologien und Methoden in Projekten aktiv einsetzt wurden.
- Die Übersicht zeigt, wie ich mit meinem Know-how deine Projekte voran bringe - - von der Entwicklung über Architektur bis hin zur Team- und Kundenarbeit. -

- -

πŸ’» Softwareentwicklung & Technologien

-
    -
  • - {/* 2018-… */} - Webentwicklung – 8+ Jahre
    - (moderne Web-UIs, Responsive Design, komplexe Komponenten, Frontend-Integration, - Web Accessibility, Web App Security)
    - (HTML, CSS, JavaScript, Typescript, TailwindCSS, daisyUI, SASS, vite, WebSocket, - jQuery, drizzle ORM, Mocha, Chai, Jest) -
  • -
  • - {/* 2018-… */} - Frontend-Frameworks – 8+ Jahre
    - (Erweitern und Umbauen von statischen Web-App Frontends in reactive Frontends, - Neubau von reaktiven Frontends)
    - (Vue 2, Vue 3, Svelte, SvelteKit, React) -
  • -
  • - {/* 2018-2023, 2026 */} - Java – 6+ Jahre
    - (Enterprise B2B und B2C Web-Anwendungen, Web-APIs, Keycloak-Plugins, saubere - Architekturen, Web App Security)
    - (Spring Boot, Spring MVC, Spring Security, Hibernate, JPA, Freemarker, Thymeleaf, - JSP, REST, JUnit, Mockito, Gradle, Maven) -
  • -
  • - {/* 2020-… */} - C# - 5+ Jahre
    - (REST- und SOAP-APIs mit hohem Durchsatz, Enterprise-Anwendungen, Web-APIs, - Backend-Systeme, saubere Architekturen, Web App Security)
    - (.NET 8, .NET Framework 4.8, Entity Framework Core, NHibernate, ASP.NET - Core, Blazor, Razor, REST, SOAP, NUnit, Moq) -
  • -
  • - {/* 2018-… */} - REST-APIs & Backend-Services - 8+ Jahre
    - (Schnittstellenkonzeption, REST, SignalR, WebSockets) -
  • -
- -

πŸ›‘οΈ IT-Sicherheit

-
    -
  • - {/* 2018-… */} - Sichere Anwendungsentwicklung & Design – 8+ Jahre
    - (OWASP, SSDLC, Threat Modeling, Web App Security) -
  • -
  • - {/* 2018-… */} - Authentication & Authorization – 8+ Jahre
    - (in-App & extern)
    - (OAuth2, OIDC, Keycloak) -
  • -
  • - {/* 2018-… */} - Observability im Betrieb – 8+ Jahre
    - (Log-Analyse und statistische Auswertung, Telemetrie und Alarme) -
  • -
  • - {/* 2018-2023 */} - Sicherheits-Analyse und Tests – 5+ Jahre
    - (statische und Dynamische Code Analyse, manuelles Penetration Testing)
    - (SonarQube, Veracode, Qualys, Zed Attack Proxy) -
  • -
- -

☁️ Cloud, DevOps & Betrieb

-
    -
  • - {/* 2018-2024 */} - Public, Private & Clouds – 7+ Jahre
    - (AWS Certified Solutions Architect – Associate, AWS, GCP, Azure, CloudFormation, HashiCorp Terraform) -
  • -
  • - {/* 2018-… */} - CI/CD & DevOps – 8+ Jahre
    - (Git, GitHub Actions, GitLab, Gitrunner, Azure DevOps, Jenkins) -
  • -
  • - {/* 2018-… */} - Containerisierung & Images – 8+ Jahre
    - (Docker, Docker Compose, Kubernetes, Helm, HashiCorp Packer) -
  • -
  • - {/* 2018-… */} - Deployment- & Release-Management – 8+ Jahre -
  • -
- -

πŸ—„οΈ Datenbanken & Persistence

-
    -
  • - {/* 2015-… */} - Relationale Datenbanken – 11+ Jahre
    - (MySQL, Oracle DB, Microsoft SQL Server, SQLite, PostgreSQL) -
  • -
  • - {/* 2018-2024… */} - Datenmodellierung & Performance-Optimierung – 6+ Jahre -
  • -
  • - {/* 2014-2016 */} - Data Warehousing – 2+ Jahre -
  • -
- -

🧱 Architektur & Software Design

-
    -
  • - {/* 2018-… */} - Software-Architektur & Systemdesign – 8+ Jahre -
  • -
  • - {/* 2018-… */} - Modulare Systeme & Multitenancy-Architekturen – 8+ Jahre -
  • -
  • - {/* 2018-… */} - Clean Code, Wartbarkeit & Skalierbarkeit – 8+ Jahre -
  • -
- -

πŸ” Methoden & Projektarbeit

-
    -
  • - {/* 2014-… */} - Agile Entwicklung (Scrum) – 12+ Jahre -
  • -
  • - {/* 2018-2024 */} - Technische Projektverantwortung – 7+ Jahre -
  • -
  • - {/* 2024-… */} - Kundenberatung & technische Abstimmung – 2+ Jahre -
  • -
  • - {/* 2018-… */} - Code Reviews & technische QualitΓ€tssicherung – 8+ Jahre -
  • -
- -

πŸ§ͺ Weitere Technologien & Interessen

-
    -
  • - {/* 2024-… */} - Mentoring & Wissensvermittlung im Team – 2+ Jahre -
  • -
  • - {/* 2014-… */} - Git & GitHub (Open Source, Versionskontrolle) – 12+ Jahre -
  • -
  • - Betriebssysteme: Linux (Daily Driver privat), Windows (Daily Driver - Arbeit) -
  • -
  • - Weitere Sprachen, Frameworks und Tools: Ruby, Rust, LaTeX, Lua, - treesitter, Shell, Python, C/C++, SSH, systemd, cron, Vim, Neovim -
  • -
  • - Interesse an 3D-Grafik: 3D Modellierung, Blender, Grundkonzepte - 3D-Renderer -
  • -
- -

- πŸ”— kmoschcau.de +

+
+ +
+
+

πŸ’» Softwareentwicklung & Technologien

+
    +
  • + Webentwicklung – {from(cbtStart)}+ Jahre
    + (moderne Web-UIs, Responsive Design, komplexe Komponenten, Frontend-Integration, + Web Accessibility, Web App Security)
    + (HTML, CSS, JavaScript, Typescript, TailwindCSS, daisyUI, SASS, vite, + WebSocket, jQuery, drizzle ORM, Mocha, Chai, Jest) +
  • +
  • + Frontend-Frameworks – {from(cbtStart)}+ Jahre
    + (Erweitern und Umbauen von statischen Web-App Frontends in reactive + Frontends, Neubau von reaktiven Frontends)
    + (Vue 2, Vue 3, Svelte, SvelteKit, React) +
  • +
  • + Java – {between(...cbt) + from(kcStart)}+ Jahre
    + (Enterprise B2B und B2C Web-Anwendungen, Web-APIs, Keycloak-Plugins, + saubere Architekturen, Web App Security)
    + (Spring Boot, Spring MVC, Spring Security, Hibernate, JPA, Freemarker, + Thymeleaf, JSP, REST, JUnit, Mockito, Gradle, Maven) +
  • +
  • + C# - {from(pfmStart)}+ Jahre
    + (REST- und SOAP-APIs mit hohem Durchsatz, Enterprise-Anwendungen, Web-APIs, + Backend-Systeme, saubere Architekturen, Web App Security)
    + (.NET 8, .NET Framework 4.8, Entity Framework Core, NHibernate, ASP.NET + Core, Blazor, Razor, REST, SOAP, NUnit, Moq) +
  • +
  • + REST-APIs & Backend-Services - {from(cbtStart)}+ Jahre
    + (Schnittstellenkonzeption, REST, SignalR, WebSockets) +
  • +
+
+ +
+

πŸ›‘οΈ IT-Sicherheit

+
    +
  • + Sichere Anwendungsentwicklung & Design – {from(cbtStart)}+ + Jahre
    + (OWASP, SSDLC, Threat Modeling, Web App Security) +
  • +
  • + Authentication & Authorization – {from(cbtStart)}+ Jahre
    + (in-App & extern)
    + (OAuth2, OIDC, Keycloak) +
  • +
  • + Observability im Betrieb – {from(cbtStart)}+ Jahre
    + (Log-Analyse und statistische Auswertung, Telemetrie und Alarme) +
  • +
  • + Sicherheits-Analyse und Tests – {between(...cbt)}+ Jahre
    + (statische und Dynamische Code Analyse, manuelles Penetration Testing)
    + (SonarQube, Veracode, Qualys, Zed Attack Proxy) +
  • +
+
+ +
+

☁️ Cloud, DevOps & Betrieb

+
    +
  • + Public, Private & Clouds – {between(cbtStart, mcB2cEnd)}+ + Jahre
    + (AWS Certified Solutions Architect – Associate, AWS, GCP, Azure, CloudFormation, HashiCorp Terraform) +
  • +
  • + CI/CD & DevOps – {from(cbtStart)}+ Jahre
    + (Git, GitHub Actions, GitLab, Gitrunner, Azure DevOps, Jenkins) +
  • +
  • + Containerisierung & Images – {from(cbtStart)}+ Jahre
    + (Docker, Docker Compose, Kubernetes, Helm, HashiCorp Packer) +
  • +
  • + Deployment- & Release-Management – {from(cbtStart)}+ Jahre +
  • +
+
+ +
+

πŸ—„οΈ Datenbanken & Persistence

+
    +
  • + Relationale Datenbanken – {from(trustStart)}+ Jahre
    + (MySQL, Oracle DB, Microsoft SQL Server, SQLite, PostgreSQL) +
  • +
  • + Datenmodellierung & Performance-Optimierung – { + between(...cbt) + between(...bp) + }+ Jahre +
  • +
  • + Data Warehousing – {between(trustStart, migrEnd)}+ Jahre +
  • +
+
+ +
+

🧱 Architektur & Software Design

+
    +
  • + Software-Architektur & Systemdesign – {from(cbtStart)}+ Jahre +
  • +
  • + Modulare Systeme & Multitenancy-Architekturen – { + from(cbtStart) + }+ Jahre +
  • +
  • + Clean Code, Wartbarkeit & Skalierbarkeit – {from(cbtStart)}+ + Jahre +
  • +
+
+ +
+

πŸ” Methoden & Projektarbeit

+
    +
  • + Agile Entwicklung (Scrum) – {from(trustStart)}+ Jahre +
  • +
  • + Technische Projektverantwortung – { + between(...cbt) + between(...bp) + from(kcStart) + }+ Jahre +
  • +
  • + Kundenberatung & technische Abstimmung – {from(mcB2cStart)}+ + Jahre +
  • +
  • + Code Reviews & technische QualitΓ€tssicherung – { + from(cbtStart) + }+ Jahre +
  • +
+
+ +
+

πŸ§ͺ Weitere Technologien & Interessen

+
    +
  • + Mentoring & Wissensvermittlung im Team – {from(mcB2cStart)}+ + Jahre +
  • +
  • + Git & GitHub (Open Source, Versionskontrolle) – { + from(trStart) + }+ Jahre +
  • +
  • + Betriebssysteme: Linux (Daily Driver privat), Windows (Daily + Driver Arbeit) +
  • +
  • + Weitere Sprachen, Frameworks und Tools: Ruby, Rust, LaTeX, Lua, + treesitter, Shell, Python, C/C++, SSH, systemd, cron, Vim, Neovim +
  • +
  • + Interesse an 3D-Grafik: 3D Modellierung, Blender, Grundkonzepte + 3D-Renderer +
  • +
+
+