{"de":{"nav":{"home":"Start","about":"Über mich","references":"Referenzen","menu":"Menü öffnen","close":"Menü schließen","skip":"Zum Inhalt springen","language":"Sprache","main":"Hauptnavigation","game":"Spiel","blog":"Blog","freelance":"Freelance","webmcp":"WebMCP"},"theme":{"toLight":"Zum hellen Modus wechseln","toDark":"Zum dunklen Modus wechseln"},"home":{"metaTitle":"Balázs Csorba – KI-Engineer & B2B-E-Commerce-Entwickler","metaDescription":"Senior KI- & B2B-E-Commerce-Engineer für Unternehmen: KI-Agenten, MCP, SAP/Infor-, Spryker- & Pimcore-Integrationen, Vue/Nuxt. Remote in Europa & UK.","hero":{"hello":"Hallo, ich bin Balázs","role":"Senior Fullstack & AI Engineer","titleStart":"Ich mache KI-generierten Code und Altsysteme","titleSparkle":"produktionsreif","titleEnd":"– ohne Big Bang.","lead":"Coding-Agenten liefern in Tagen, wofür Teams früher Monate brauchten – produktionsreif ist das selten. Ich prüfe, teste und refaktoriere KI-generierten Code und gewachsene Altsysteme im laufenden Betrieb: Tests als Sicherheitsnetz, CI-Gates und menschliches Review bei jeder Änderung. Als Freelancer oder in Festanstellung, Projektsprache: Englisch.","ctaPrimary":"Code-Audit anfragen","ctaSecondary":"Fallstudien ansehen","note":"// fahr über das Netzwerk – es denkt schneller","location":"Aus der Steiermark, Österreich · remote in Europa & UK","h1Kicker":"Balázs Csorba · Senior Engineer für KI-generierten Code & Legacy-Modernisierung","available":"Verfügbar als Freelancer oder in Festanstellung","mailSubject":"Code-Audit"},"paths":{"eyebrow":"Zwei Wege der Zusammenarbeit","title":"Ein Senior Engineer mit KI statt eines ganzen Teams","lead":"Coding-Agenten haben die Wirtschaftlichkeit der Softwareentwicklung verändert. Konzept, Entwicklung, Tests, Integration und Betrieb – bei vielen Roadmaps liefere ich heute allein, wofür du vor einem Jahr eine Agentur oder ein Entwicklerteam gebraucht hast, mit eingebautem Datenschutz. Du wählst das Modell, das zu deinem Unternehmen passt.","options":{"contract":{"label":"Weg 01 · Freelancer","title":"Ersetze deine Agentur","audience":"Für Unternehmen, die Entwicklungs- und KI-Projekte heute bei Agenturen einkaufen.","text":"Du bekommst die Leistung einer Agentur ohne den typischen Agentur-Overhead: keine Account Manager, keine Übergaben zwischen Vertrieb, Projektleitung und Entwicklung, keine Aufschläge für Change Requests. Ein Vertrag, ein verantwortlicher Senior – von der ersten Spezifikation bis in die Produktion.","points":["Festpreis-Meilensteine, Tagessatz oder monatlicher Retainer – planbare Budgets","Ein schriftliches Angebot innerhalb von drei Werktagen","NDA und Auftragsverarbeitungsvertrag nach Art. 28 DSGVO als Standard – KI-Anbieter nur als von dir genehmigte Unterauftragsverarbeiter","Exklusive Nutzungsrechte an allem, was für dich entsteht (Open-Source-Teile unter ihren eigenen Lizenzen) – kein Lock-in"],"cta":"Angebot anfragen","mailSubject":"Freelancer – Angebotsanfrage"},"employ":{"label":"Weg 02 · Festanstellung","title":"Stell einen ein statt eines Teams","audience":"Für Unternehmen, die KI-Kompetenz langfristig im eigenen Haus aufbauen wollen.","text":"Statt ein ganzes Entwicklerteam zu rekrutieren, einzuarbeiten und zu führen, stellst du einen Senior AI Engineer ein, der mit Coding-Agenten arbeitet. Das Wissen, das Tooling und deine KI-Governance bleiben im Unternehmen.","points":["Vollzeit – für Arbeitgeber in Europa und UK, remote aus Österreich oder hybrid in der Steiermark","Führt deine Enterprise-KI-Toolchain ein – SSO und Audit-Logs, DSGVO- und EU-AI-Act-Anforderungen von Anfang an berücksichtigt","Macht dein bestehendes Team mit Coding-Agenten produktiv","Keine Headhunter-Gebühr – und eine Arbeitsprobe an einem realistischen Problem aus deiner Branche, bevor du entscheidest"],"cta":"Über eine Stelle sprechen","mailSubject":"Festanstellung – Senior AI Engineer"}},"cost":{"eyebrow":"Die Wirtschaftlichkeit","title":"Was ein Jahr Entwicklung wirklich kostet","lead":"Dieselbe Roadmap, drei Arten, sie zu besetzen. Geschätzte Jahreskosten für ein mittelständisches Unternehmen in Österreich und Deutschland.","perYear":"pro Jahr","rows":{"agency":{"label":"Agentur-Team","detail":"Projektleitung, 2–3 Entwickler:innen, QA – 3–4 FTE zu 800–1.200 € pro Personentag","amount":"480.000–960.000 €"},"team":{"label":"Internes Entwicklerteam","detail":"3–4 Entwickler:innen inkl. 20–30 % Lohnnebenkosten, plus Recruiting-Gebühren im ersten Jahr","amount":"250.000–510.000 €"},"me":{"label":"Ein Senior AI Engineer","amount":"Nach Vereinbarung","note":"Deutlich günstiger als beide Alternativen","detail":"Ein Senior plus Enterprise-KI-Abo – nach einem kurzen Gespräch auf deinen Umfang kalkuliert"}},"highlights":[{"value":"1","label":"verantwortlicher Senior statt eines Teams aus drei bis vier Personen"},{"value":"0 €","label":"Headhunter-Gebühren, Agenturaufschläge und Change-Request-Zuschläge"},{"value":"3","label":"Werktage bis zum schriftlichen Angebot mit deinem genauen Preis"}],"assumptionsTitle":"So sind die Zahlen gerechnet","assumptions":"Eigene Schätzungen auf Basis typischer Marktpreise in Österreich und Deutschland, 2026: Agentursätze von 800–1.200 € pro Personentag für 3–4 FTE bei 200 abrechenbaren Tagen; Gehälter von 60.000–80.000 € brutto für 3–4 Entwickler:innen plus 20–30 % Lohnnebenkosten; Recruiting-Gebühren von 20–30 % eines Jahresgehalts. Mein Preis wird individuell vereinbart und liegt auch mit dem Enterprise-KI-Abo deutlich unter beiden Alternativen. Der Vergleich setzt eine vergleichbare gelieferte Leistung voraus – das prüfst du an einer echten Aufgabe, bevor du dich festlegst. Als Freelancer zahlst du vereinbarte Ergebnisse oder gebuchte Tage statt eines Gehalts – ohne Lohnnebenkosten, Recruiting-Gebühren und langfristige Bindung.","cta":"Deinen Preis anfragen","mailSubject":"Preisanfrage – Senior AI Engineer"},"trust":{"title":"Warum das auch in mittleren und großen Unternehmen trägt","items":{"privacy":{"title":"Datenschutz by Design","text":"KI-Tools nur in dem Setup, das du freigibst – ein Enterprise-Plan mit kommerziellen Bedingungen: kein Training mit deinem Code oder deinen Daten, Auftragsverarbeitungsvertrag mit dem Anbieter, konfigurierbare Aufbewahrung. Wo Daten die EU oder dein Netzwerk nicht verlassen dürfen, läuft die KI, die ich für dich baue, in EU-Cloud-Regionen oder On-Premise."},"continuity":{"title":"Kein Single Point of Failure","text":"Tests, CI, Dokumentation und Runbooks liegen in deinem Repository – dein Team oder eine Nachfolge kann jederzeit übernehmen."},"compliance":{"title":"Vorbereitet für die Freigabe","text":"Technische Dokumentation für deine Risikoeinstufung nach EU AI Act, Audit-Logs und rollenbasierte Zugriffe – die Grundlage, die IT-Security, Rechtsabteilung und Betriebsrat für ihre Prüfung und eine Betriebsvereinbarung brauchen."}}}},"stats":{"years":"Jahre Erfahrung","products":"Produkte in ein PIM migriert","skills":"selbst gebaute KI-Agent-Skills","projects":"Projekte in meinen Referenzen"},"agentic":{"eyebrow":"Agentic Engineering","title":"KI-Agenten, die liefern – mit Tests als Leitplanke.","lead":"Ich prompte nicht nur. Ich baue die Tools, mit denen Coding-Agenten sicher in echten Kunden-Codebasen, Ticketsystemen und CI arbeiten.","points":{"pipeline":{"title":"Ticket-to-PR-Pipelines","text":"Agent-Skills, die einen Produktionsbug anhand echter Daten reproduzieren, die Ursache belegen, ihn beheben, Unit- und Playwright-Tests ergänzen und den Pull Request öffnen."},"guardrails":{"title":"Leitplanken statt Bauchgefühl","text":"Tests, statische Analyse und CI-Gates entscheiden, was live geht – und jede Änderung geht trotzdem durch ein menschliches Review."}},"caption":"Replay meiner Bugfix-Agenten-Pipeline in einem B2B-Shop (vereinfacht)."},"services":{"eyebrow":"Leistungen","title":"Wo ich für dein Unternehmen Wert schaffe","lead":"Drei Bereiche, für die mich Unternehmen holen – gemessen an Ergebnissen, nicht an Codezeilen.","items":{"commerce":{"title":"B2B-Commerce & Integrationen","text":"B2B-Shops, Produktkonfiguratoren und Kundenportale auf Spryker, Pimcore und TYPO3 – angebunden an SAP und Infor, damit Aufträge, Preise und Bestände synchron bleiben."},"frontend":{"title":"Schnelle, wartbare Frontends","text":"Vue-, Nuxt-, React- und Next.js-Anwendungen, die schnell laden, gut ranken, Barrierefreiheitsregeln erfüllen und jahrelang wartbar bleiben."},"ai":{"title":"KI-Agenten & LLM-Integration","text":"KI-Agenten und MCP-Server auf deinen eigenen Daten – automatisieren Support-, Content- und Entwicklungsarbeit, gemessen an klaren KPIs."}},"more":"Mehr erfahren"},"featured":{"eyebrow":"Ausgewählte Projekte","title":"Ergebnisse für B2B- und Enterprise-Kunden","lead":"Industrieunternehmen, B2B-Shops und Agent-Tooling – echte Projekte mit echten Rahmenbedingungen.","viewAll":"Alle Referenzen ansehen"},"trusted":"Unternehmen, für die ich gebaut habe","cta":{"title":"Eine Codebasis, die keiner mehr anfassen will?","text":"Erzähl mir von deinem Projekt oder der Stelle, die du besetzen willst. Dann sehen wir gemeinsam, ob ich der Richtige bin. Arbeitssprache: Englisch.","email":"Kontakt aufnehmen","linkedin":"Auf LinkedIn vernetzen","mailSubject":"Projekt oder Stelle"},"hire":{"badge":"Offen für neue Rollen · ab 1. Dezember","title":"Senior Fullstack & AI Engineer – ohne Headhunter-Gebühr","lead":"Ein ungewöhnlicher Vorschlag – ein finanzieller, deshalb hier die Zahlen.","costTitle":"Typische Kosten einer Senior-Engineer-Einstellung","costs":["Headhunter-Gebühr: 20–35 % des Jahresgehalts (auf diesem Niveau 12.000–21.000 €)","Stellenanzeigen, Sichtung, Interviewrunden: Wochen an Zeit deines Teams","Falls es nicht passt: 3–6 Monatsgehälter verloren"],"offerTitle":"Mein Angebot – streich diese Kosten","offerFirst":"{bold} – du sprichst direkt mit mir.","offerBold":"Keine Headhunter-Gebühr","offers":["Vorab eine kostenlose Probeaufgabe: Nenn mir ein typisches Problem aus deinem Alltag – ich löse es als Prototyp, bevor du dich entscheidest.","Im Probemonat jederzeit ohne Angabe von Gründen beendbar. Dein Risiko: ein Monatsgehalt statt 20–35 % eines Jahresgehalts."],"whyTitle":"Warum ich","whys":["10+ Jahre Fullstack (Zumtobel, Meusburger, Messerle) – PIM-Migrationen, B2B-E-Commerce, Headless-Plattformen, ERP-Integrationen.","Agentic Engineering im Produktiveinsatz: mein eigener MCP-Server und Agenten-Pipelines, die vom Ticket bis zum getesteten Pull Request reichen.","PHP, Python, Go, Rust, TypeScript – und jedes Framework darin. Mit KI-Agenten kostet mich ein neuer Stack Tage, keine Monate."],"availability":"Ab 1. Dezember verfügbar – remote in ganz Europa und UK oder hybrid in der Steiermark.","cta":"Lass uns darüber reden","mailSubject":"Senior Fullstack & AI Engineer ohne Headhunter-Gebühr"},"hirePilot":{"badge":"Offen für Projekte & Festanstellung","title":"Senior Fullstack & AI Engineer – erst überzeugen, dann entscheiden","offerFirst":"{bold}: 2–6 Wochen, ein klar abgegrenztes Ergebnis, zum Einführungs-Fixpreis.","offerBold":"Ein Pilotprojekt","offers":["Überzeugt dich das Ergebnis und du stellst mich an oder beauftragst mich weiter, zahlst du die vorab vereinbarte Differenz zum regulären Preis. Sonst nicht.","Falls nicht: Wir trennen uns freundschaftlich. Dein Risiko ist nur der Fixpreis – ein Bruchteil einer Headhunter-Gebühr. Mit der Bezahlung gehören dir alle Rechte am Ergebnis.","Mein Tooling (Claude Max, Codex …) bringe ich selbst mit – du stellst nur den Zugang zu Repository und Testumgebung."],"availability":"Remote in ganz Europa und UK oder hybrid in der Steiermark.","cta":"Pilotprojekt besprechen","mailSubject":"Pilotprojekt – Senior Fullstack & AI Engineer","models":"Alle Zusammenarbeitsmodelle"},"metaTitleBusiness":"Balázs Csorba – KI- & Nuxt-Freelancer in Graz","metaDescriptionBusiness":"Selbstständiger Fullstack- & KI-Entwickler bei Graz: KI-Agenten, MCP-Server, LLM-Integration, Vue und Nuxt. Pilotprojekt, Festpreis oder nach Aufwand.","value":{"eyebrow":"Für dein Unternehmen","title":"Was dein Unternehmen bekommt","lead":"Nicht mehr Stunden, sondern bessere Ergebnisse: kürzere Durchlaufzeiten, saubere Integrationen und Code, den dein Team übernehmen kann.","items":{"speed":{"title":"Schneller geliefert","text":"Coding-Agenten und Ticket-to-PR-Pipelines machen aus Tagen Routinearbeit Stunden – damit sich deine Roadmap bewegt, nicht nur das Backlog."},"integration":{"title":"Systeme, die zusammenspielen","text":"Shop, PIM, ERP und CRM sauber verbunden – SAP, Infor, Spryker, Pimcore – inklusive einer Migration von über 500.000 Produkten in ein PIM."},"risk":{"title":"Geringes Risiko, keine Blackbox","text":"Tests, CI-Gates und menschliches Review bei jeder Änderung; KI-Setups, ausgelegt auf die DSGVO und ohne Training mit deinen Daten; dokumentierter Code mit exklusiven Nutzungsrechten für dich."},"fit":{"title":"Passt in dein Team","text":"Remote in ganz Europa und UK, auf Englisch, in deinen Werkzeugen – dein Repository, deine Tickets, deine CI. Kein Onboarding-Marathon."}}},"process":{"eyebrow":"So starten wir","title":"Vom ersten Gespräch bis zur Produktion – ohne Großprojekt-Risiko","steps":[{"title":"30-Minuten-Gespräch","text":"Du beschreibst das geschäftliche Problem; ich sage dir ehrlich, ob und wie ich helfen kann – und was es braucht."},{"title":"Zuerst eine echte Aufgabe","text":"Wir starten mit einer klar abgegrenzten Aufgabe aus deinem Backlog – so beurteilst du die Qualität an deinem eigenen Code, bevor es größer wird."},{"title":"Lieferung mit Verantwortung","text":"Getestete Pull Requests, Dokumentation und regelmäßige Demos – bis es produktiv läuft und dein Team es übernehmen kann."}]},"symptoms":{"eyebrow":"Kommt dir das bekannt vor?","title":"Wenn der Prototyp auf echte Nutzer trifft","lead":"KI-Werkzeuge bringen dich schnell zur ersten Version. Echte Last, echte Daten und das erste Sicherheitsaudit zeigen, was dabei liegen geblieben ist.","items":{"untouchable":{"title":"Keiner traut sich ran","text":"Ein Modul, das niemand mehr versteht – jede Änderung ist ein Risiko, also bleibt sie liegen."},"regressions":{"title":"Jeder Fix bricht etwas anderes","text":"Ohne Tests fallen Fehler erst in Produktion auf. Was einen Tag dauern sollte, dauert eine Woche."},"security":{"title":"Lücken, die keiner sieht","text":"Offene API-Endpunkte, fehlende Berechtigungsprüfungen, Secrets im Repository – typische Spuren von ungeprüftem, KI-generiertem Code."},"scale":{"title":"Langsam, sobald es ernst wird","text":"N+1-Abfragen, kein Caching, dieselbe Logik in zehn Varianten – in der Demo unsichtbar, unter Last teuer."},"releases":{"title":"Jedes Release ist Handarbeit","text":"Kein CI, kein Rollback, kein Staging – ein Deployment am Freitag wird zur Mutprobe."},"knowledge":{"title":"Wissen in einem Kopf – oder einem Prompt","text":"Keine Doku, keine festgehaltenen Architekturentscheidungen. Neue Entwickler brauchen Wochen statt Tage."}}},"audit":{"eyebrow":"Der Einstieg","title":"Code-Audit zum Festpreis","lead":"Bevor irgendwer umbaut: ein ehrlicher Blick auf deinen Code. Ich prüfe Architektur, Sicherheit, Tests, Performance und Deployment – und schreibe auf, was solide ist, wo die Risiken liegen und was zuerst drankommt.","facts":{"duration":{"label":"Dauer","value":"5–10 Werktage"},"result":{"label":"Ergebnis","value":"Priorisierte Liste mit Schweregrad und Aufwand je Punkt"},"billing":{"label":"Abrechnung","value":"Festpreis, vorab vereinbart"},"scope":{"label":"Geprüft wird","value":"Eigene Software, Agentur-Code und Apps aus Cursor, Claude Code oder Copilot"}},"keep":"Der Bericht gehört dir – auch wenn du danach nicht mit mir weitermachst.","cta":"Audit anfragen"},"method":{"eyebrow":"So gehe ich vor","title":"Schrittweise statt Big Bang","lead":"Dein System bleibt online, während es besser wird. Jeder Schritt ist klein genug, um ihn zurückzunehmen.","steps":{"understand":{"title":"Verstehen","text":"Audit, Abhängigkeiten kartieren, Risiken nach Schweregrad sortieren – mit Agenten schnell durch große Codebasen, jede Aussage von mir geprüft."},"secure":{"title":"Absichern","text":"Charakterisierungstests halten das heutige Verhalten fest, CI-Gates und statische Analyse verhindern, dass es schlechter wird."},"rebuild":{"title":"Umbauen","text":"Modul für Modul nach dem Strangler-Fig-Prinzip: Neue Teile entstehen neben den alten, umgeschaltet wird Funktion für Funktion."},"handover":{"title":"Übergeben","text":"Getestete Pull Requests, Doku und Architekturentscheidungen in deinem Repository – damit dein Team ohne mich weitermachen kann."}}},"faq":{"eyebrow":"Häufige Fragen","title":"Was Teams vor dem Start fragen","items":{"rebuild":{"q":"Refaktorierst du oder baust du neu?","a":"Meistens refaktoriere ich. Die KI hat die Struktur oft halbwegs richtig getroffen; die Probleme stecken in Randfällen und fehlenden Absicherungen. Wo ein Teil nicht zu retten ist, baue ich ihn neu und dokumentiere, warum."},"tools":{"q":"Prüfst du Code aus Cursor, Claude Code oder Copilot?","a":"Ja – das ist der Kern meiner Arbeit. Ich arbeite selbst täglich mit Coding-Agenten und kenne ihre typischen Fehlerbilder."},"downtime":{"q":"Muss der Betrieb dafür stehen?","a":"Nein. Änderungen gehen in kleinen, getesteten Schritten live, jeder davon ist rückrollbar."},"data":{"q":"Was passiert mit unserem Code und unseren Daten?","a":"Ich arbeite in deinem Repository und deiner Infrastruktur, mit KI-Setups, die auf die DSGVO ausgelegt sind und nicht mit deinen Daten trainieren. Ein NDA ist selbstverständlich."},"stack":{"q":"Welche Stacks?","a":"PHP (TYPO3, Symfony, Spryker, Pimcore), TypeScript (Vue, Nuxt, React, Next.js, Node), Python und Go. Mit Coding-Agenten kostet mich ein neuer Stack Tage, keine Monate."},"engage":{"q":"Freelance oder Festanstellung?","a":"Beides. Als Freelancer für ein Audit oder einen klar abgegrenzten Umbau – oder fest im Team, wenn KI-generierter Code und Altsysteme dauerhaft Thema sind. Remote in DACH, Europa und UK oder hybrid in der Steiermark."}}},"contact":{"eyebrow":"Kontakt","fields":{"name":"Name","email":"E-Mail","company":"Unternehmen (optional)","topic":"Worum geht es?","message":"Deine Nachricht"},"topics":{"audit":"Code-Audit","project":"Projekt / Freelance","job":"Festanstellung","other":"Etwas anderes"},"consent":"Ich bin einverstanden, dass meine Angaben zur Beantwortung meiner Anfrage verwendet werden. Mehr in der","privacy":"Datenschutzerklärung","submit":"Nachricht senden","sending":"Wird gesendet …","note":"Kein Newsletter, kein Tracking – nur eine Antwort.","sentTitle":"Danke – deine Nachricht ist unterwegs.","sentText":"Ich lese jede Nachricht selbst und melde mich persönlich bei dir.","errors":{"email":"Bitte prüfe deine E-Mail-Adresse.","short":"Bitte schreib etwas mehr (mindestens 20 Zeichen).","consent":"Bitte stimme der Verarbeitung deiner Angaben zu.","links":"Bitte höchstens drei Links einfügen.","rate":"Zu viele Nachrichten in kurzer Zeit – bitte später erneut versuchen oder eine E-Mail schreiben.","too-fast":"Das ging schnell – bitte prüfe deine Nachricht und sende sie erneut.","expired":"Das Formular war lange geöffnet – bitte sende es erneut.","generic":"Etwas ist schiefgelaufen. Bitte versuch es erneut oder schreib eine E-Mail."}}},"about":{"metaTitle":"Über Balázs Csorba – Senior Fullstack & AI Engineer","metaDescription":"Senior Fullstack & AI Engineer bei Graz: 10+ Jahre Vue.js, Nuxt, Node.js und PHP – Headless Commerce, PIM-Migrationen, MCP-Server und KI-Agenten.","eyebrow":"Über mich","title":"Hallo nochmal! Ich bin Balázs.","intro":["Ich bin Senior Fullstack & AI Engineer und lebe in Voitsberg in der Steiermark. Seit über 10 Jahren baue ich Webanwendungen – von kleinen Rechnern, die Menschen bei finanziellen Entscheidungen helfen, bis zu Enterprise-Plattformen für globale Marktführer.","Heute sind KI-Agenten ein fester Teil meiner Arbeit – und ich schreibe die Tools, die sie in echten Projekten nützlich machen: Agent-Skills, die Bugs anhand echter Daten reproduzieren, beheben und getestete Pull Requests öffnen.","Was gleich geblieben ist: Am meisten Spaß macht es mir, Kompliziertes einfach wirken zu lassen – eine halbe Million Produkte in ein neues PIM migrieren, einen gewachsenen Shop entwirren, bis er wieder schnell ist, oder einen riesigen Katalog in einen geführten Konfigurator verwandeln. Saubere Architektur, messbare Erfolge und Teams, in denen man sich gegenseitig weiterbringt."],"facts":{"title":"Kurz & knapp","items":["Über 10 Jahre Fullstack-Erfahrung","Eigenen MCP-Server & Agenten-Pipelines gebaut","Kunden wie Zumtobel, Meusburger, Messerle, ujszo.com & diginomica.com","Komplette Migration von Vue 2 auf Vue 3 geleitet","Remote, hybrid, Vollzeit oder Projektbasis"]},"journey":{"eyebrow":"Erfahrung","title":"Mein bisheriger Weg","present":"heute"},"jobs":{"antiloop":{"title":"Senior Full Stack Engineer","points":["End-to-End-E-Commerce-Lösungen für B2B- und B2C-Kunden in der DACH-Region umgesetzt – Backends mit PHP, Node.js und Commercetools, Frontends mit Vue.js/Nuxt.","Zumtobel Group: Teil einer PIM-Migration, bei der über 500.000 Produkte, 14.000 Kategorien und 50 Produktklassen in 3 Monaten nach Pimcore übertragen wurden – mit stabilem Delta-Sync zwischen SAP, PDB und Pimcore.","Messerle: einen B2B-Shop (TYPO3/PHP) mit Infor-ERP- und PIM-Anbindung gerettet und modernisiert – Performance-Engpässe refaktoriert, kritische Fehler im Bestellprozess behoben und die Ladezeit um 65 % gesenkt (4,6 s → 1,6 s).","Meusburger: Headless-Produktkonfigurator für über 100.000 Präzisionsartikel mit Nuxt.js, TypeScript und der Spryker Glue API – inklusive geführter Konfiguration und automatischer Preislogik.","Agentische Delivery-Pipeline aufgebaut: Agent-Skills, die Produktionsbugs anhand synchronisierter Daten reproduzieren, die Ursache belegen, das Jira-Ticket anlegen, den Fix mit Unit- und Playwright-E2E-Tests umsetzen und den Pull Request öffnen – abgesichert durch PHPUnit/PHPStan-Gates und menschliches Review.","Täglicher KI-nativer Workflow mit Claude Code, OpenCode, Codex und GitHub Copilot für Implementierung, Code-Review und Dokumentation."]},"ingenious":{"title":"Senior Software Engineer (freiberuflich)","points":["Das Frontend-Team bei der Migration einer großen SaaS-Anwendung von Vue 2 auf Vue 3 und TypeScript mit strikter Typisierung geleitet.","Bearbeitungszeit beim Anlegen von Einträgen durch gezielte UX- und Komponenten-Verbesserungen um 45 % verkürzt.","Features mit 95 % Playwright-Testabdeckung ausgeliefert und eine wiederverwendbare Vue.js-Komponentenbibliothek aufgebaut.","Strukturierte Code-Reviews durchgeführt und Junior-Entwickler:innen begleitet."]},"vioma":{"title":"Senior Software Engineer (freiberuflich)","points":["Ein stark frequentiertes Hotel-Management-Dashboard mit Echtzeit-Analysen gebaut, das täglich von Tausenden Hoteliers genutzt wird.","Ein Buchungs-Widget für Hunderttausende Endkund:innen entwickelt – Verfügbarkeit, Preise und Reservierungslogik.","Ein eng gekoppeltes Altsystem auf eine moderne Headless-Vue.js-Architektur migriert.","Verantwortlich für die ungarische Lokalisierung der Anwendung."]},"array":{"title":"Software Engineer","points":["Kredit-Score-Rechner und Finanz-Optimierungstools für mehrere Anbieter mit Svelte und Vanilla JavaScript gebaut.","Zusammenarbeit in einem weltweit verteilten, multikulturellen Team."]},"brainsum":{"title":"Full-Stack Web Developer (freiberuflich)","points":["Plattform für wiederkehrende und einmalige Spenden für ein großes ungarisches Nachrichtenportal.","Echtzeit-Anzeigenpreisrechner mit Nuxt.js, PWA-Funktionen mit Offline-Seiten und ein Text-to-Speech-Microservice.","Mobile- und SPA-Prototypen mit Nuxt + Capacitor und Next.js."]},"coreconsult":{"title":"Full-Stack Developer","points":["Kreditrechner mit mehreren Optionen, Lead-Management und REST-API-Wrapper für Bankmonitor.hu.","Kompletter Sparrechner inklusive Frontend, Lead-Flow und API-Anbindung."]},"creativesales":{"title":"PHP Developer","points":["Eine komplette Business-Plattform von Grund auf gebaut: Authentifizierung, Kundenverwaltung, Mehrsprachigkeit und ein E-Mail-Kampagnensystem."]},"blackjuice":{"title":"Web Developer","points":[]}},"skills":{"eyebrow":"Werkzeugkiste","title":"Womit ich arbeite","groups":{"ai":"KI & Agenten","frontend":"Frontend","backend":"Backend","commerce":"Commerce & CMS","craft":"Handwerk & Praxis"}},"values":{"eyebrow":"Wie ich arbeite","title":"Worauf du dich verlassen kannst","items":{"ownership":{"title":"Verantwortung","text":"Ich bringe ein Problem von „hmm“ bis „fertig“ – inklusive der langweiligen, aber wichtigen Teile."},"performance":{"title":"Messbare Ergebnisse","text":"Schnellere Seiten, weniger Bugs, zufriedenere Nutzer:innen. Ich mag Zahlen, die in die richtige Richtung gehen."},"people":{"title":"Freundliche Zusammenarbeit","text":"Klare Kommunikation, durchdachte Reviews und ein Team, in dem alle wachsen."}}},"portraitAlt":"Porträtfoto von Balázs Csorba, Senior Fullstack & AI Engineer"},"references":{"metaTitle":"Portfolio & Referenzen – Balázs Csorba, AI Engineer","metaDescription":"19 Projekte von Balázs Csorba: KI-Agenten und MCP-Server, Headless-B2B-E-Commerce (Spryker, Pimcore), SaaS, PWAs – für Zumtobel, Meusburger u. a.","eyebrow":"Referenzen","title":"Woran ich mitgebaut habe","lead":"Von KI-Agenten-Tooling bis Enterprise-Commerce – jedes Projekt hier hat mir etwas beigebracht. Nach Art filtern und die Live-Seiten besuchen.","filterLabel":"Projekte filtern","all":"Alle","categories":{"ai":"KI & Agenten","commerce":"E-Commerce & PIM","saas":"SaaS & Plattformen","media":"Medien & Community","finance":"Fintech","mobile":"Mobile & PoC","tools":"Tools & Services"},"visit":"Seite besuchen","internal":"Internes Projekt","via":"über {company}","own":"Eigenes Projekt","count":"keine Projekte | 1 Projekt | {count} Projekte","items":{"agent-pipeline":{"title":"Ticket-to-PR-Agenten-Pipeline","desc":"Agent-Skills, die einen Bug vom Report bis zum Pull Request bringen: anhand synchronisierter Daten reproduzieren, die Ursache belegen, das Jira-Ticket anlegen, mit Unit- und Playwright-E2E-Tests beheben und das PHPUnit/PHPStan-Gate bestehen."},"agent-ready-site":{"title":"Agentenfähiges Portfolio","desc":"Diese Seite spricht mit KI-Agenten: WebMCP-Tools im Browser, llms.txt und llms-full.txt sowie jede Seite als Markdown per Content Negotiation – alles aus demselben Build generiert."},"zumtobel":{"title":"PIM-Migration nach Pimcore","desc":"Über 500.000 Produkte, 14.000 Kategorien und 50 Produktklassen in 3 Monaten nach Pimcore – mit stabilem Delta-Sync zwischen SAP, PDB und Pimcore und pünktlichem Go-live in Italien."},"meusburger":{"title":"Headless-Produktkonfigurator","desc":"Ein geführter Konfigurator für über 100.000 Präzisionsartikel mit automatischer Preislogik – gebaut mit Nuxt.js auf der Spryker Glue API."},"messerle":{"title":"B2B-Shop Refactoring & Speed-up","desc":"Komplettes Refactoring eines TYPO3/PHP-B2B-Shops: 65 % schnellere Ladezeiten (4,6 s → 1,6 s), ein zuverlässiger Bestellprozess und stabile Infor-ERP- und PIM-Anbindungen."},"ingenious":{"title":"Migration Vue 2 → Vue 3","desc":"Migration einer großen SaaS-App für Bauprojektmanagement auf Vue 3 geleitet – technische Schulden abgebaut und fit für die Zukunft gemacht."},"vioma":{"title":"Headless-Vue.js-Architektur","desc":"Ein eng gekoppeltes Altsystem auf Headless Vue.js umgestellt und die ungarische Lokalisierung der Oberfläche verantwortet."},"array":{"title":"Kredit-Score-Tools","desc":"Kredit-Score-Rechner und Finanz-Widgets für mehrere Anbieter, gebaut mit Svelte und Vanilla JavaScript."},"remp":{"title":"Spendenplattform für Leser:innen","desc":"Wiederkehrende und einmalige Spenden auf Basis von REMP – für nachhaltige Leser-Einnahmen eines großen ungarischen Nachrichtenportals."},"ujszo":{"title":"Anzeigenpreis-Rechner","desc":"Ein Echtzeit-Preisrechner für Werbeanzeigen mit Nuxt.js, der den Verkaufsprozess deutlich vereinfacht hat."},"diginomica-pwa":{"title":"Progressive Web App","desc":"PWA-Funktionen und Offline-Zugriff – inklusive einer zeitkritischen Seite, die auch ohne Verbindung lesbar bleibt."},"diginomica-tts":{"title":"Text-to-Speech-Microservice","desc":"Ein Express.js-Microservice, der Artikel in Audio verwandelt – für mehr Barrierefreiheit für sehbeeinträchtigte Leser:innen."},"xshore":{"title":"Mobile-App-Prototyp","desc":"Ein plattformübergreifender Mobile-PoC für einen Hersteller von Elektrobooten, gebaut mit Nuxt.js und Capacitor.js."},"mobily":{"title":"Single-Page-App-PoC","desc":"Ein Next.js-Prototyp als Single-Page-Application für einen Mobilfunkanbieter."},"css-converter":{"title":"CSS-Animation → Video","desc":"Ein Tool, das Websites und CSS-Animationen aufnimmt und mit FFmpeg und Node.js als MOV-Video exportiert."},"tudatosvasarlo":{"title":"Plattform für Produkttests","desc":"Eine akkreditierte Testplattform mit Bewertungen und Rezensionen von Nutzer:innen, gebaut mit React und Drupal."},"bankmonitor":{"title":"Kreditrechner","desc":"Ein Kreditrechner mit mehreren Optionen, Lead-Management, REST-API und Multi-Logic-API-Wrapper für ein Finanz-Vergleichsportal."},"lakastakarek":{"title":"Sparrechner","desc":"Ein persönlicher Sparrechner mit komplettem Frontend, Lead-Flow und API-Anbindung."},"vivarent":{"title":"Business-Plattform von Null","desc":"Authentifizierung, Formulare, Kunden- und Benutzerverwaltung, Mehrsprachigkeit und ein E-Mail-Kampagnensystem – alles aus einer Hand."}},"cta":{"title":"Dein Projekt könnte das nächste sein","text":"Lass uns darüber reden, was du baust."},"readArticle":"Zum Artikel"},"game":{"metaTitle":"Dragon Voyage – ein 3D-Segelspiel im Browser","metaDescription":"Segle eine Drachen-Dschunke durch einen Laternenhafen – mit allen auf der Seite: fünf Quests, Piratenschlachten, Live-Multiplayer, gebaut mit three.js.","eyebrow":"Spielwiese","title":"Dragon Voyage","intro":"Ein kleines Echtzeit-3D-Spiel direkt im Browser – und alle, die gerade auf dieser Seite sind, segeln im selben Hafen. Entzündet gemeinsam die schwimmenden Laternen, fahrt durch die Torii-Tore, rettet Schiffbrüchige und schlagt eine Piratenflotte zurück, an Bord einer Dschunke mit goldener Drachen-Galionsfigur. Zwischen den Quests handelst du mit Tee, Porzellan, Seide und Gewürzen quer über die Bucht und bezahlst damit Verbesserungen für dein Schiff.","facts":["three.js · WebGL","Live-Multiplayer","5 Quests · Piratenflotte","2 Häfen · Handel & Upgrades","0 Bild- oder Modelldateien","Tastatur, Maus, Touch und Gamepad"],"name":"Dragon Voyage","kicker":"Ein Hafen in der Dämmerung","tagline":"Fünf Quests, eine Piratenflotte und ein gemeinsamer Hafen – segle mit allen, die gerade hier sind.","regionLabel":"Dragon Voyage – interaktives 3D-Spiel","load":"3D-Szene laden","loadHint":"Lädt etwa 1 MB und nutzt deine Grafikkarte.","loading":"Der Hafen entsteht…","start":"Segel setzen","save":{"continue":"Fahrt fortsetzen","detail":"Quest {n} von {total} · {time}","new":"Neue Fahrt"},"touchHint":"Steuern mit ◀ ▶, Segel trimmen mit ▲ ▼, feuern mit ✹, ziehen zum Umsehen.","keys":{"sails":"Segel setzen / reffen","steer":"steuern","boost":"Windböe","camera":"Kamera","dragKey":"Ziehen","drag":"umsehen","left":"Nach links steuern","right":"Nach rechts steuern","lower":"Segel reffen","raise":"Segel setzen","broadside":"Breitseite Backbord / Steuerbord","space":"Leertaste","fire":"auf den nächsten Piraten feuern","fireTouch":"Kanonen abfeuern","pause":"Pause","trade":"im Hafen handeln"},"camera":{"chase":"Verfolger","cinematic":"Kino","bow":"Bug"},"hud":{"time":"Zeit","speed":"Tempo","sails":"Segel","quest":"Quest {n}/{total}","finished":"Geschafft","hull":"Rumpf","guns":"Kanonen","aboard":"{n} Schiffbrüchiger an Bord → Kai | {n} Schiffbrüchige an Bord → Kai","online":"{n} online","net":{"connecting":"Verbinde…","offline":"Solo","full":"Hafen voll – solo"},"wind":"Wind","windFrom":"Wind aus {dir}","irons":"Im Wind – abfallen","inRange":"In Reichweite","port":"B","starboard":"S","hit":"TREFFER","purse":"Börse","hold":"Laderaum {n}/{cap}"},"tools":{"camera":"Kamera wechseln (aktuell: {mode})","sound":"Ton","restart":"Neu starten","fullscreen":"Vollbild","pause":"Pause"},"toast":{"collect":"Laterne {n} von {total} steigt auf","bump":"Flaches Wasser – abfallen!","boundary":"Die offene See ist eine andere Reise – wir drehen um","camera":"Kamera: {mode}","questDone":"Quest geschafft: {title}","gate":"Tor {n} von {total}","raceStart":"Die Uhr läuft – {s} Sekunden!","raceFail":"Zeit abgelaufen – zurück zum ersten Tor","pickup":"Schiffbrüchige an Bord ({n}) – ab zum Kai","deliver":"Schiffbrüchige in Sicherheit · {n}/{total}","enemySunk":"Pirat versenkt! Noch {n}","bossSunk":"Das Flaggschiff sinkt!","newRound":"Eine neue Runde beginnt!","critical":"Rumpf kritisch – am Hafenkai reparieren","sunk":"Deine Dschunke sinkt…","respawn":"Zurück in den Hafen geschleppt","repaired":"Rumpf repariert","reloading":"Nachladen…","playerJoin":"{name} ist im Hafen","playerLeave":"{name} hat den Hafen verlassen","windShift":"Der Wind dreht – jetzt aus {dir}","irons":"Im Wind gefangen – fall ab (A / D), bis die Segel ziehen","portEnter":"{port} – drück T zum Handeln","cargoLost":"{n} Kiste mit dem Schiff verloren | {n} Kisten mit dem Schiff verloren","upgraded":"{name} eingebaut","portEnterTouch":"{port} – tippe auf Handeln, um den Markt zu öffnen","bumpPier":"Vorsicht – das ist der Steg! Längsseits anlegen, nicht hineinfahren"},"won":{"kicker":"Reise abgeschlossen","title":"Der Hafen ist gerettet","text":"Laternen entzündet, Rennen gewonnen, Schiffbrüchige zu Hause und das Piratenflaggschiff versenkt – in {time}.","again":"Von vorne","newRound":"Eine neue Runde beginnt in {s} s.","keep":"Weitersegeln"},"error":{"noWebgl":"Dein Browser oder Gerät unterstützt kein WebGL, deshalb kann die 3D-Szene hier nicht laufen.","lost":"Der Grafikkontext ist verloren gegangen. Lade die Szene neu, um weiterzusegeln.","failed":"Das Spiel konnte nicht starten. Bitte versuche es erneut."},"making":{"eyebrow":"So ist es gemacht","title":"Alles, was du siehst, entsteht im Code","intro":"Es gibt keine heruntergeladenen Modelle, Texturen oder Sounds. Der ganze Hafen – Wasser, Berge, Stadt, Schiffe, Piraten und Drache – entsteht beim Laden aus rund 7.700 Zeilen TypeScript und GLSL.","items":[{"title":"Nativ im Browser","text":"Gebaut mit three.js auf WebGL statt als Unity- oder Unreal-Export: kein Plugin, keine mehrere Megabyte große Runtime, geladen erst, wenn du diese Seite öffnest."},{"title":"Ein gemeinsamer Hafen","text":"Ein winziger WebSocket-Relay ohne Abhängigkeiten bringt alle auf der Seite in dieselbe Session. Wer am längsten verbunden ist, hostet die Quests und die Piraten-KI; Schiffe, Kanonenfeuer und Fortschritt werden etwa zehnmal pro Sekunde synchronisiert, und ohne Verbindung läuft das Spiel solo weiter."},{"title":"Physikalisch basierter Ozean","text":"Sechs Gerstner-Wellen laufen identisch auf GPU und CPU, deshalb stampft und rollt das Schiff auf genau den Wellen, die du siehst. Himmels- und Bergspiegelungen, Fresnel, Gischt und Laternenglitzern werden pro Pixel berechnet."},{"title":"Prozedurale Welt","text":"Noise-Funktionen formen die Bucht, die schroffen Berge und die Inseln; fünftausend instanzierte Kiefern, eine terrassierte Stadt mit leuchtenden Fenstern und eine fünfstöckige Pagode werden nach Regeln platziert, nicht von Hand."},{"title":"Ein lebendiges Schiff","text":"Der Rumpf der Dschunke ist aus mathematischen Spanten geformt. Die Lattensegel sind Stoffnetze, die sich nach Lee blähen und beim Reffen einholen, und der goldene Drache ist aus Kurven und auf ein Canvas gemalten Schuppentexturen modelliert."},{"title":"Filmische Bildqualität","text":"Eine HDR-Pipeline mit bildbasierter Beleuchtung aus dem Dämmerungshimmel, Bloom an jeder Laterne, ACES-Tonemapping, Luftperspektive, die in den Sonnenuntergang übergeht, Vignette und Filmkorn."},{"title":"Gebaut für flüssiges Spielen","text":"Eine adaptive Auflösung hält die Bildrate, das Spiel pausiert, sobald es aus dem Bild scrollt oder der Tab verborgen ist, und alle GPU-Ressourcen werden freigegeben, wenn du die Seite verlässt."}],"note":"Entwickelt in einem agentischen Workflow mit Claude Code als KI-Pair-Programmer – genauso, wie ich Produktivsoftware baue."},"banner":"Quest {n} von {total}","quest":{"lanterns":{"title":"Laternenfest","goal":"Laternen aufsteigen lassen · {progress}/{goal}","intro":"Zwölf Lotuslaternen treiben in der Bucht. Segle durch jede hindurch, um sie in den Himmel zu schicken."},"race":{"title":"Drachenbootrennen","goal":"Durch die Tore segeln · {progress}/{goal}","intro":"Segle der Reihe nach durch die sieben Torii-Tore. Die Uhr startet am ersten Tor – folge dem goldenen Strahl."},"rescue":{"title":"Schiffbrüchige","goal":"Gerettete Schiffbrüchige · {progress}/{goal}","intro":"Piraten haben einen Händler versenkt. Nimm die Überlebenden auf den Flößen auf und bring sie zum Hafenkai."},"pirates":{"title":"Piratenangriff","goal":"Versenkte Piraten · {progress}/{goal}","intro":"Aus dem Norden kommen Piraten. Bring sie querab und feuere Breitseiten mit Q und E."},"flagship":{"title":"Das schwarze Flaggschiff","goal":"Flaggschiff zerstören · {pct}%","intro":"Das Flaggschiff des Piratenfürsten ist mit Geleitschutz da. Versenke es und der Hafen ist sicher."},"done":{"title":"Hafen gerettet","goal":"Neue Runde in {s} s"},"next":"Die nächste Quest beginnt gleich…"},"mp":{"nameLabel":"Name deines Kapitäns","defaultName":"Kapitän"},"wind":{"dir":["N","NO","O","SO","S","SW","W","NW"]},"padHint":"Gamepad: linker Stick segelt & steuert · A feuert · LB/RB Breitseiten · RT Böe · Y Kamera · X Handel · Start pausiert.","records":{"line":"Beste Fahrt {best} · {voyages} abgeschlossen · {sunk} Piraten versenkt","newBest":"Neue Bestzeit!"},"pause":{"kicker":"Anker geworfen","title":"Pausiert","solo":"Der Hafen hält den Atem an, bis du zurück bist.","shared":"Andere Kapitäne segeln – der Hafen läuft weiter, nur dein Ruder ist festgezurrt.","resume":"Weiter"},"stats":{"sunk":"Versenkt","accuracy":"Trefferquote","shots":"Treffer","taken":"Schaden"},"ports":{"harbour":"Hafenstadt","market":"Lotusmarkt"},"goods":{"tea":"Tee","porcelain":"Porzellan","silk":"Seide","spice":"Gewürze"},"trade":{"kicker":"Angelegt in","open":"Handeln","close":"Markt schließen","goods":"Markt","yard":"Werft","good":"Ware","aboard":"An Bord","buy":"Kaufen","sell":"Verkaufen","elsewhere":"Erlös in {port}","holdFull":"Der Laderaum ist voll","noGold":"Nicht genug Gold","noneToSell":"Nichts davon an Bord","hintHarbour":"Tee und Porzellan werden hier hergestellt – bring sie zum Lotusmarkt. Die Werft baut Verbesserungen ein.","hintMarket":"Seide und Gewürze sind hier günstig – die Hafenstadt zahlt gut dafür. Preise schwanken, und ein überschwemmter Markt drückt sie."},"yard":{"hull":{"name":"Eisenholz-Rumpf","desc":"Nimmt 30 % weniger Schaden durch Kanonenfeuer."},"guns":{"name":"Bronzekanonen","desc":"Breitseiten laden in 1,7 s statt 2,4 s nach."},"sails":{"name":"Seidenlatten","desc":"10 % mehr Tempo auf jedem Kurs."},"hold":{"name":"Tiefer Laderaum","desc":"Platz für 18 statt 10 Kisten."},"owned":"Eingebaut ✓"},"sky":{"dusk":"Abenddämmerung","night":"Nacht","dawn":"Morgendämmerung","day":"Tag"}},"like":{"label":"Ein bisschen Liebe schicken","thanks":"Danke!","max":"Wow, maximale Liebe! 💜","count":"{count} von {max}"},"footer":{"tagline":"Senior Fullstack & AI Engineer. Baut seit 2016 fürs Web – jetzt mit Agenten.","built":"Gebaut mit Nuxt, three.js & ein paar KI-Agenten.","rights":"Alle Rechte vorbehalten.","backToTop":"Nach oben","navTitle":"Navigation","contactTitle":"Kontakt","legalTitle":"Rechtliches","privacy":"Datenschutz","imprint":"Impressum","cookieSettings":"Cookie-Einstellungen","accessibility":"Barrierefreiheit"},"notFound":{"title":"404 – diese Route ist nicht im Index","text":"Vielleicht wurde sie verschoben – oder es gab sie nie. Ich bring dich zurück zur Startseite.","back":"Zur Startseite","errorTitle":"Da ist etwas schiefgelaufen"},"seo":{"keywords":"AI Engineer, AI Engineer Österreich, KI Engineer, KI Entwickler Graz, Agentic Engineering, KI-Agenten Entwicklung, MCP Server Entwickler, LLM Integration, Vektorsuche, Embeddings, semantische Suche, LLM Evals, Multi-Agenten-Systeme, Tool Calling, Prompt Engineering, Context Engineering, Generative KI Entwickler, Claude Code, Fullstack Entwickler, Senior Fullstack Entwickler, Webentwickler, Webentwickler Graz, Webentwickler Steiermark, Webentwickler Österreich, Freelancer Webentwicklung, Vue.js Entwickler, Nuxt Entwickler, React Entwickler, Node.js Entwickler, Frontend Entwickler, TypeScript Entwickler, Headless Commerce, Composable Commerce, B2B E-Commerce, B2C E-Commerce, D2C, Direct-to-Consumer, Omnichannel Commerce, ERP Integration, SAP Integration, PIM Integration, API-first, Spryker Entwickler, Pimcore Entwickler, PWA Entwicklung, Remote Entwickler, Freelancer KI, KI-Entwickler Freelancer, IT-Freelancer Graz, IT-Freelancer Steiermark, Freelancer Österreich, Softwareentwickler Graz, selbstständiger Softwareentwickler, externer Entwickler, Vue.js Freelancer, Nuxt Freelancer, KI-Beratung Graz, KI-Beratung Steiermark, LLM Beratung, MCP-Server Entwicklung"},"consent":{"region":"Cookie-Einwilligung","title":"Cookies & Statistik","text":"Darf ich Google Analytics nutzen, um zu sehen, wie diese Website verwendet wird? „Alle akzeptieren“ aktiviert zusätzlich Google Signals für zusammengefasste demografische und geräteübergreifende Berichte. Geladen wird nur mit deiner Zustimmung – ändern kannst du das jederzeit im Footer.","more":"Datenschutz","analyticsOnly":"Nur Statistik","accept":"Alle akzeptieren","reject":"Ablehnen"},"legal":{"role":"Senior Fullstack & AI Engineer","country":"Österreich","email":"E-Mail","seePrivacy":"Wie auf dieser Website mit personenbezogenen Daten umgegangen wird:","privacyLink":"Datenschutzerklärung","seeImprint":"Medieninhaber und Offenlegung:","imprintLink":"Impressum","business":{"trade":"Unternehmensgegenstand","gisa":"GISA-Zahl","authority":"Gewerbebehörde","chamber":"Mitglied der","law":"Berufsrecht","lawText":"Gewerbeordnung (GewO), abrufbar unter","uid":"UID-Nummer"}},"privacy":{"metaTitle":"Datenschutzerklärung – Balázs Csorba","metaDescription":"Wie balazscsorba.com mit personenbezogenen Daten umgeht: Hosting, Server-Logs, Cookies, optionales Google Analytics und deine Rechte nach der DSGVO.","eyebrow":"Datenschutz","title":"Datenschutzerklärung","updated":"Stand: Oktober 2026","intro":"Deine Privatsphäre ist mir wichtig. Hier erfährst du, welche personenbezogenen Daten beim Besuch von balazscsorba.com oder balazscsorba.at verarbeitet werden, warum, und welche Rechte du nach der Datenschutz-Grundverordnung (DSGVO) und dem Telekommunikationsgesetz 2021 (TKG 2021) hast.","sections":[{"title":"Verantwortlicher","kind":"contact","body":["Verantwortlicher im Sinne von Art. 4 Z 7 DSGVO ist:"],"note":["Bei Fragen zum Datenschutz schreib mir einfach eine E-Mail."]},{"title":"Hosting und Server-Logfiles","body":["Diese Website läuft auf einem virtuellen Server, den ich bei der Contabo GmbH, Welfenstraße 22, 81541 München, Deutschland (contabo.com) miete. Der Server steht in Contabos EU-Region, deine Daten werden also innerhalb der EU verarbeitet. Den Server administriere ich selbst; Contabo stellt Hardware und Netzwerk bereit und verarbeitet die Daten ausschließlich in meinem Auftrag auf Grundlage eines Auftragsverarbeitungsvertrags (Art. 28 DSGVO). Contabos eigene Datenschutzerklärung findest du unter contabo.com/de/legal/privacy.","Bei jedem Seitenaufruf schreibt der Webserver automatisch einen Log-Eintrag: deine IP-Adresse, Datum und Uhrzeit, die aufgerufene Adresse, die verweisende Seite, den HTTP-Statuscode, die übertragene Datenmenge und den User-Agent deines Browsers. Das ist nötig, um die Website sicher auszuliefern und Fehler oder Angriffe zu erkennen. Rechtsgrundlage ist mein berechtigtes Interesse an einer sicheren, funktionierenden Website (Art. 6 Abs. 1 lit. f DSGVO). Die Logfiles und das Systemprotokoll des Servers werden nach 14 Tagen automatisch gelöscht.","Auf diesem Server läuft auch der Online-Modus des Spiels Dragon Voyage. Während du online spielst, leitet ein Relay den von dir gewählten Spielernamen, deine Farbe und die Position deines Schiffs an die anderen Spieler:innen weiter, die gerade online sind. Gespeichert wird davon nichts: Sobald du das Spiel verlässt, ist es weg. Im Systemprotokoll steht nur, dass eine zufällige Sitzungs-ID beigetreten ist oder das Spiel verlassen hat – nie dein Spielername. Rechtsgrundlage ist mein berechtigtes Interesse, das Mehrspieler-Spiel anzubieten, dem du beitrittst (Art. 6 Abs. 1 lit. f DSGVO)."]},{"title":"Cookies und lokaler Speicher (notwendig)","body":["Ein paar kleine Informationen werden in deinem Browser gespeichert, weil sie für Funktionen, die du selbst nutzt, unbedingt erforderlich sind. Dafür ist keine Einwilligung nötig (§ 165 Abs. 3 TKG 2021), und sie verlassen dein Gerät nicht – mit Ausnahme des Sprach-Cookies, das nur an den Server dieser Website gesendet wird:"],"items":["bc_pick (Cookie, 1 Jahr): die Sprache, die du im Sprachmenü gewählt hast – damit dich balazscsorba.at nicht wieder auf Deutsch umstellt.","bc-consent (lokaler Speicher): deine Auswahl im Cookie-Banner und wann du sie getroffen hast.","bc-theme (lokaler Speicher): heller oder dunkler Modus.","bc-motion (lokaler Speicher): ob du die Animationen mit dem Knopf „Animationen pausieren“ angehalten hast.","bc-likes (lokaler Speicher): wie oft du das Herz im Footer angeklickt hast.","bc-tetris-highscore (lokaler Speicher): dein Highscore im versteckten Konsolen-Spiel."],"note":["Außerdem nutzt diese Website einen Service Worker und den Cache-Speicher (Cache Storage) deines Browsers, um Kopien ihrer Seiten, Skripte und Bilder auf deinem Gerät abzulegen – damit sie schneller lädt und auch offline funktioniert. Dort werden keine personenbezogenen Daten gespeichert, und du kannst sie jederzeit entfernen, indem du die Websitedaten in deinem Browser löschst.","Du kannst sie jederzeit in den Einstellungen deines Browsers löschen."]},{"title":"Google Analytics (nur mit deiner Einwilligung)","body":["Nur wenn du im Cookie-Banner „Nur Statistik“ oder „Alle akzeptieren“ wählst, verwendet diese Website Google Analytics 4, einen Webanalysedienst der Google Ireland Limited, Gordon House, Barrow Street, Dublin 4, Irland („Google“). Vorher wird keinerlei Verbindung zu Google aufgebaut.","Google Analytics hilft mir zu verstehen, wie die Website genutzt wird – etwa welche Seiten wie lange gelesen werden, mit welcher Art von Gerät und ungefähr aus welchem Land –, damit ich sie verbessern kann. Dazu werden die Cookies _ga und _ga_9WM1TQG2PT gesetzt, die eine zufällige, pseudonyme Kennung für bis zu 2 Jahre speichern. GA4 protokolliert und speichert keine IP-Adressen. Google bewahrt die Analysedaten 14 Monate lang auf.","Nur wenn du „Alle akzeptieren“ wählst, werden zusätzlich Google Signals und die Werbe-Einwilligungssignale aktiviert: Bei Besucher:innen, die in einem Google-Konto angemeldet sind und dort personalisierte Werbung erlaubt haben, verknüpft Google den Besuch mit diesem Konto. So sehe ich zusammengefasste Berichte zu Alter, Geschlecht, Interessen und geräteübergreifender Nutzung. Ich sehe nur zusammengefasste Berichte, die keine einzelnen Personen erkennen lassen, und schalte auf dieser Website keine Werbung; Google kann diese Daten nach eigenen Bedingungen nutzen, auch für Werbung. Mit „Nur Statistik“ bleiben Google Signals und die Werbesignale ausgeschaltet. Zwischen beiden Stufen kannst du jederzeit über „Cookie-Einstellungen“ im Footer wechseln.","Die Daten können auch an die Google LLC in den USA übermittelt werden. Die Google LLC ist nach dem EU-US Data Privacy Framework zertifiziert, für das die Europäische Kommission am 10. Juli 2023 einen Angemessenheitsbeschluss erlassen hat (Art. 45 DSGVO).","Rechtsgrundlage ist deine Einwilligung (Art. 6 Abs. 1 lit. a DSGVO, § 165 Abs. 3 TKG 2021). Du kannst sie jederzeit mit Wirkung für die Zukunft über „Cookie-Einstellungen“ im Footer jeder Seite widerrufen; die Google-Analytics-Cookies werden dann gelöscht. Mehr dazu in der Datenschutzerklärung von Google: policies.google.com/privacy."]},{"title":"Kontakt per E-Mail","body":["Wenn du mir eine E-Mail schreibst, verwende ich deine E-Mail-Adresse und den Inhalt deiner Nachricht nur, um dir zu antworten und gegebenenfalls eine Zusammenarbeit vorzubereiten (Art. 6 Abs. 1 lit. b und f DSGVO). Ich lösche die Korrespondenz, sobald sie nicht mehr benötigt wird, sofern keine gesetzlichen Aufbewahrungspflichten bestehen. Meine E-Mails laufen über Zoho Mail (Zoho Corporation); die Daten werden dabei in Rechenzentren in den USA verarbeitet.","Wenn du das Kontaktformular nutzt, werden Name, E-Mail-Adresse, optional das Unternehmen, das Thema und deine Nachricht verschlüsselt an einen kleinen Dienst auf meinem Server übertragen, der sie als E-Mail an mich weiterleitet und nichts speichert. Gegen Spam löst dein Browser eine kleine Rechenaufgabe – ohne Drittanbieter; deine IP-Adresse wird nur kurz im Arbeitsspeicher verwendet, um wiederholte Absendungen zu begrenzen, und erscheint in der E-Mail nur als Einweg-Hash. Rechtsgrundlage und Löschung wie bei E-Mails."]},{"title":"Externe Links und Schriften","body":["Alle Schriften, Bilder und Skripte dieser Website kommen von ihrem eigenen Server – es gibt keine Schriften von Drittanbietern, keine eingebetteten Inhalte, keine Social-Media-Plugins und keine Tracking-Pixel. Links zu anderen Websites (z. B. LinkedIn oder Kunden-Websites) sind normale Links: Daten werden erst übertragen, wenn du sie anklickst, und dort gelten deren eigene Datenschutzerklärungen."]},{"title":"Deine Rechte","body":["Nach der DSGVO hast du das Recht auf:"],"items":["Auskunft (Art. 15)","Berichtigung (Art. 16)","Löschung (Art. 17)","Einschränkung der Verarbeitung (Art. 18)","Datenübertragbarkeit (Art. 20)","Widerspruch gegen eine Verarbeitung aufgrund berechtigter Interessen (Art. 21)","jederzeitigen Widerruf deiner Einwilligung, ohne dass die Rechtmäßigkeit der bis dahin erfolgten Verarbeitung berührt wird (Art. 7 Abs. 3)"],"note":["Schreib mir dafür einfach eine E-Mail. Wenn du meinst, dass die Verarbeitung deiner Daten gegen das Datenschutzrecht verstößt, kannst du dich auch bei der Österreichischen Datenschutzbehörde beschweren: Barichgasse 40–42, 1030 Wien, www.dsb.gv.at."]}]},"imprint":{"metaTitle":"Impressum – Balázs Csorba","metaDescription":"Impressum und Offenlegung für balazscsorba.com und balazscsorba.at gemäß § 25 Mediengesetz (MedienG).","eyebrow":"Rechtliches","title":"Impressum","updated":"Offenlegung gemäß § 25 Mediengesetz (MedienG)","sections":[{"title":"Medieninhaber und für den Inhalt verantwortlich","kind":"contact"},{"title":"Angaben gemäß § 5 E-Commerce-Gesetz (ECG)","kind":"business","only":"business"},{"title":"Grundlegende Richtung (Blattlinie)","body":["Persönliche Website und Portfolio von Balázs Csorba: Informationen über seine Arbeit als Senior Fullstack & AI Engineer, seine Berufserfahrung und Referenzen. Die Website enthält keine Werbung."],"only":"private"},{"title":"Grundlegende Richtung (Blattlinie)","body":["Website von Balázs Csorba, selbständiger Softwareentwickler: Informationen über seine Leistungen als Senior Fullstack & AI Engineer, seine Berufserfahrung und Referenzen."],"only":"business"},{"title":"Haftung für Links","body":["Diese Website enthält Links zu externen Websites. Auf deren Inhalte habe ich keinen Einfluss und kann dafür keine Haftung übernehmen; für den Inhalt verlinkter Seiten ist stets der jeweilige Anbieter verantwortlich. Sollte ich von Rechtsverletzungen erfahren, entferne ich den Link umgehend."]},{"title":"Urheberrecht","body":["Texte, Illustrationen und die Gestaltung dieser Website sind urheberrechtlich geschützt. Namen und Marken von Kunden gehören ihren jeweiligen Inhabern und werden nur genannt, um Projekte zu beschreiben, an denen ich mitgearbeitet habe."]}]},"a11y":{"newTab":"(öffnet in neuem Tab)","pauseMotion":"Animationen pausieren","techStack":"Tech-Stack"},"standards":{"title":"Standards & Konformität","note":"Selbstbewertung, zuletzt geprüft im September 2026 –","statementLink":"zur Erklärung","items":{"wcag":"Barrierefreiheit · ISO/IEC 40500:2025","en301549":"Europäische Norm für Barrierefreiheit","gdpr":"Datenschutz · Analyse nur mit Einwilligung","security":"security.txt · ISO/IEC 29147","iso":"Datum, Sprachen & Länder","schema":"Strukturierte Daten für Suchmaschinen"}},"accessibility":{"metaTitle":"Erklärung zur Barrierefreiheit – Balázs Csorba","metaDescription":"Erklärung zur Barrierefreiheit von balazscsorba.com: WCAG 2.2 AA und EN 301 549, Prüfmethode und Kontakt bei Barrieren.","eyebrow":"Barrierefreiheit","title":"Erklärung zur Barrierefreiheit","updated":"Zuletzt geprüft: 23. September 2026","intro":"Diese Website soll für alle nutzbar sein – mit Maus, Tastatur, Screenreader, vergrößert oder ohne Animationen. Hier steht, welche Standards die Seite erfüllt, wie das geprüft wurde und wie du mich erreichst, wenn dich etwas behindert.","sections":[{"title":"Stand der Vereinbarkeit","body":["Nach den unten beschriebenen Prüfungen ist diese Website vollständig konform mit den Web Content Accessibility Guidelines (WCAG) 2.2, Konformitätsstufe AA. WCAG 2.2 ist auch als internationale Norm ISO/IEC 40500:2025 veröffentlicht. Damit erfüllt die Seite auch die Web-Anforderungen der europäischen Norm EN 301 549 (Abschnitt 9).","Vollständig konform heißt: Die Inhalte erfüllen die Norm ohne Ausnahmen. Es handelt sich um eine Selbstbewertung; eine Zertifizierungsstelle war nicht beteiligt."]},{"title":"Was das konkret bedeutet","items":["Alles funktioniert allein mit der Tastatur, in logischer Reihenfolge, mit gut sichtbarem Fokusrahmen und einem Link „Zum Inhalt springen“.","Texte und Bedienelemente erfüllen die AA-Kontrastwerte im hellen und im dunklen Design.","Seiten lassen sich auf 400 % vergrößern und bei 320 px Breite ohne horizontales Scrollen oder Inhaltsverlust nutzen.","Animationen beachten die Systemeinstellung „Bewegung reduzieren“, und im Header gibt es jederzeit einen Button zum Pausieren.","Interaktive Elemente sind mindestens 24 × 24 CSS-Pixel groß oder haben genug Abstand, dass man sie nicht versehentlich trifft (WCAG 2.5.8).","Seiten haben aussagekräftige Titel, Überschriften, Landmarks und Sprachangaben; Bilder haben Textalternativen oder sind als dekorativ gekennzeichnet.","Der Cookie-Banner ist mit der Tastatur bedienbar, für assistive Technologien als eigener Bereich beschriftet und verdeckt nie das fokussierte Element."]},{"title":"Bekannte Einschränkungen","items":["Das animierte 3D-Netzwerk auf der Startseite ist rein dekorativ. Es ist für assistive Technologien ausgeblendet und steht still, wenn Bewegung reduziert ist.","Das Tetris-Spiel in der Browser-Konsole ist ein verstecktes Easter Egg für Entwickler:innen. Es gehört nicht zum Inhalt und ist nicht für Screenreader gedacht.","Verlinkte externe Websites (etwa von Kund:innen oder LinkedIn) liegen außerhalb meines Einflusses und erfüllen den Standard möglicherweise nicht."]},{"title":"Wie geprüft wurde","body":["Jede Seite wurde in allen drei Sprachen (Englisch, Deutsch, Ungarisch), in beiden Farbdesigns sowie in Handy- und Desktop-Breite geprüft: automatisiert mit axe-core und Lighthouse, dazu mit skriptgesteuerten Browsertests für Tastaturbedienung, Fokusreihenfolge und -sichtbarkeit, den Cookie-Banner, Umbruch bei 320 px, 200 % Textgröße und erhöhte Textabstände, reduzierte Bewegung und Farbkontraste. Ein Test mit einem echten Screenreader steht noch aus – wenn du einen nutzt und etwas nicht funktioniert, freue ich mich über deinen Hinweis. Die Prüfungen werden bei jeder größeren Änderung wiederholt."]},{"title":"Weitere Standards, die diese Website einhält","items":["DSGVO: Die Webanalyse wird erst nach ausdrücklicher Einwilligung geladen, die jederzeit widerrufen werden kann – siehe Datenschutzerklärung.","RFC 9116: Ein Sicherheitskontakt ist unter /.well-known/security.txt veröffentlicht, nach dem Vorgehen zur Offenlegung von Schwachstellen gemäß ISO/IEC 29147.","ISO 8601, ISO 639-1 und ISO 3166-1 für Datumsangaben, Sprach- und Ländercodes (z. B. „de-AT“).","Strukturierte Daten nach schema.org, damit Suchmaschinen verstehen, wer hinter der Seite steht."]},{"title":"Feedback und Kontakt","body":["Bist du auf eine Barriere gestoßen oder ist etwas schwer zu bedienen? Schreib mir bitte – ich lese jede Nachricht persönlich und antworte meist innerhalb weniger Tage. Wenn du Inhalte in einem anderen Format brauchst, schicke ich sie dir gerne."],"kind":"contact"},{"title":"Über diese Erklärung","body":["Dies ist eine private, persönliche Website; die Erklärung erfolgt freiwillig. Sie folgt dem Aufbau der EU-Mustererklärung zur Barrierefreiheit (Durchführungsbeschluss (EU) 2018/1523)."]}]},"expertise":{"eyebrow":"Expertise","navTitle":"Expertise","pointsTitle":"Was ich mitbringe","projectsTitle":"Projekte, die es belegen","projectsLead":"Echte Projekte, echte Zahlen – die ganze Liste findest du bei den Referenzen.","allRefs":"Alle Referenzen ansehen","toolboxTitle":"Werkzeugkasten","faqTitle":"Häufige Fragen","otherTitle":"Auch auf dieser Seite","ctaTitle":"Klingt nach dem, was du suchst?","ctaText":"Erzähl mir von deinem Projekt oder deiner Stelle – ich freue mich, von dir zu hören.","contact":"Kontakt aufnehmen","shared":[{"q":"Wo bist du ansässig – und arbeitest du remote?","a":"In Voitsberg, westlich von Graz in der Steiermark. {availability}"},{"q":"Bist du verfügbar?","a":"{badge}. Am schnellsten erreichst du mich per E-Mail oder LinkedIn."},{"q":"In welchen Sprachen arbeitest du?","a":"Englisch und Ungarisch. Projektkommunikation, Tickets, Dokumentation und Code laufen auf Englisch – auf Deutsch arbeite ich nicht."}],"topics":{"ai-engineer":{"metaTitle":"KI-Entwickler Österreich – MCP & KI-Agenten · Balázs Csorba","metaDescription":"Senior AI Engineer in der Steiermark: MCP-Server, LLM-Integration und Agenten-Pipelines vom Ticket zum getesteten Pull Request. Remote oder bei Graz.","nav":"KI-Entwicklung & MCP-Server","title":"AI Engineer für MCP-Server, LLM-Integration und Coding-Agenten","lead":"Ich baue die Werkzeuge, mit denen KI-Agenten in echten Codebasen, Ticketsystemen und CI arbeiten – und Tests, statische Analyse und menschliches Review entscheiden trotzdem, was live geht.","points":[{"title":"Agenten-Pipelines vom Ticket zum PR","text":"Agent Skills, die einen Produktionsfehler mit synchronisierten Daten reproduzieren, die Ursache belegen, das Jira-Ticket anlegen, ihn mit Unit- und Playwright-Tests beheben und den Pull Request öffnen."},{"title":"LLM-Integration","text":"LLM-Funktionen in bestehenden Produkten: Embeddings und Vektorsuche, Tool Calling und strukturierte Ausgaben – mit Evals und Guardrails statt Blackbox."},{"title":"Agent-ready Websites","text":"Diese Seite spricht mit KI-Agenten: WebMCP-Tools im Browser, llms.txt und jede Seite als Markdown – aus demselben Build wie das HTML."}],"faq":[{"q":"Was ist ein MCP-Server?","a":"Das Model Context Protocol (MCP) ist ein offener Standard, über den KI-Assistenten und Coding-Agenten Werkzeuge und Daten anderer Systeme nutzen. Ein MCP-Server verpackt ein System – zum Beispiel Jira – in klar beschriebene Tools, sodass ein Agent Issues suchen oder Testläufe erfassen kann, ohne eigenen Glue-Code."},{"q":"Können KI-Agenten sicher in einer bestehenden Codebasis arbeiten?","a":"Ja, wenn die Guardrails echt sind. In meinen Pipelines entscheiden Unit- und End-to-End-Tests, statische Analyse und CI-Gates, was live geht – und jede Änderung geht trotzdem durch ein menschliches Review."},{"q":"Mit welchen KI-Werkzeugen und Modellen arbeitest du?","a":"Im Alltag mit Claude Code und Agent Skills, OpenCode und Codex – und mit den APIs von Anthropic und OpenAI für LLM-Funktionen in Produkten."}]},"vue-nuxt-developer":{"metaTitle":"Vue.js- & Nuxt-Entwickler in Österreich · Balázs Csorba","metaDescription":"Senior Vue.js- und Nuxt-Entwickler, 10+ Jahre Erfahrung: Headless-Konfiguratoren, Vue-2-→-3-Migrationen, PWAs und schnelle Websites. Steiermark, remote.","nav":"Vue.js- & Nuxt-Entwicklung","title":"Senior Vue.js- & Nuxt-Entwickler","lead":"Vue-, Nuxt-, React- und Next.js-Apps, die schnell laden, gut skalieren und auch Jahre später Freude machen – vom Headless-Produktkonfigurator bis zur großen SaaS-Migration.","points":[{"title":"Headless-Frontends","text":"Ein geführter Produktkonfigurator für 100.000+ Präzisionsartikel mit automatisierter Preisberechnung – mit Nuxt.js auf der Spryker Glue API für Meusburger."},{"title":"Migration von Vue 2 auf Vue 3","text":"Ich habe die Vue-3-Migration einer großen SaaS-App für Baumanagement bei INGENIOUS.BUILD geleitet und dabei technische Schulden abgebaut."},{"title":"Schnell, barrierearm, mehrsprachig","text":"Diese Seite ist eine statisch generierte Nuxt-App in drei Sprachen mit Erklärung zur Barrierefreiheit – und einem Echtzeit-3D-Multiplayer-Spiel mit three.js."},{"title":"Fullstack, wenn nötig","text":"Node.js, Express.js, PHP und REST-APIs hinter dem Frontend – etwa ein Express.js-Microservice, der Artikel in Audio verwandelt."}],"faq":[{"q":"Vue oder React?","a":"Beides. Der Großteil meiner Arbeit ist Vue und Nuxt, aber ich habe auch React- und Next.js-Projekte umgesetzt – und Svelte-Widgets für Array."},{"q":"Kannst du eine Vue-2-App auf Vue 3 migrieren?","a":"Ja – genau diese Migration habe ich für die Baumanagement-SaaS von INGENIOUS.BUILD geleitet."},{"q":"Baust du auch das Backend?","a":"Ja: Node.js und Express, PHP und REST-APIs – vom Text-to-Speech-Microservice bis zu Kreditrechner-APIs mit Lead-Management."}]},"b2b-ecommerce-developer":{"metaTitle":"B2B-E-Commerce-Entwickler – Spryker, Pimcore · Balázs Csorba","metaDescription":"B2B-E-Commerce-Entwickler in Österreich: Pimcore-Migrationen (500.000+ Produkte), Spryker-Headless-Konfiguratoren, TYPO3-Shops und SAP-/Infor-ERP.","nav":"B2B-E-Commerce & PIM","title":"B2B-E-Commerce-Entwickler für Spryker, Pimcore und TYPO3","lead":"Headless-B2B-Shops, Produktkonfiguratoren und PIM-Plattformen – sauber angebunden an SAP und Infor.","points":[{"title":"PIM-Migrationen","text":"500.000+ Produkte, 14.000 Kategorien und 50 Produktklassen in 3 Monaten nach Pimcore migriert – für die Zumtobel Group, mit stabilem Delta-Sync zwischen SAP, PDB und Pimcore."},{"title":"Headless-Konfiguratoren","text":"Ein Nuxt.js-Konfigurator auf der Spryker Glue API, der Einkäufer mit automatisierter Preisberechnung durch 100.000+ Artikel führt."},{"title":"Refactorings, die sich lohnen","text":"Komplettes Refactoring des TYPO3/PHP-B2B-Shops von Messerle: 65 % schnellere Ladezeiten (4,6 s → 1,6 s), ein verlässlicher Bestellprozess und stabile Infor-ERP- und PIM-Anbindungen."}],"faq":[{"q":"Mit welchen E-Commerce-Plattformen arbeitest du?","a":"Spryker, Pimcore und TYPO3, Headless- und Composable-Setups, PIM/DAM – und ERP-Anbindungen an SAP und Infor."},{"q":"Wie groß waren die Kataloge?","a":"Die Zumtobel-Migration umfasste 500.000+ Produkte und 14.000 Kategorien; der Meusburger-Konfigurator deckt 100.000+ Präzisionsartikel ab."},{"q":"Kannst du einen langsamen Shop schnell machen?","a":"Der B2B-Shop von Messerle lädt nach einem kompletten Refactoring in 1,6 statt 4,6 Sekunden – 65 % schneller."}]}},"articlesTitle":"Artikel zum Thema","articlesAll":"Alle Artikel"},"blog":{"eyebrow":"Blog","nav":"Blog","title":"KI-Agenten, MCP & Web-Engineering: Notizen aus der Werkstatt","lead":"Technische Notizen zu KI-Agenten, MCP, LLM-Evals und KI-Sicherheit – und zu den Web-Apps drumherum. Mit Quellen und Diagrammen. Die meisten Artikel sind auf Englisch.","metaTitle":"Blog – KI-Agenten, MCP und Web-Engineering · Balázs Csorba","metaDescription":"Fachartikel von Balázs Csorba, KI-Engineer in Österreich: Agent-Loops, MCP-Server, LLM-Evals, Prompt Injection, EU AI Act und Nuxt.","readingTime":"{n} Min. Lesezeit","tags":"Schlagwörter","more":"Weitere Artikel","authorTitle":"Geschrieben von Balázs Csorba","authorText":"Senior Fullstack & AI Engineer in der Steiermark – über 10 Jahre Vue, Nuxt, Node.js und PHP, heute baue ich Werkzeuge für KI-Agenten.","filter":"Nach Thema filtern","all":"Alle","categories":{"agents":"KI-Agenten","rag":"Retrieval & Suche","llmops":"LLMOps & Evals","security":"Sicherheit & Compliance","web":"Web-Engineering"},"takeaways":"Das Wichtigste in Kürze","toc":"Auf dieser Seite","faq":"Häufige Fragen","updated":"aktualisiert","writtenBy":"Autor","readingLabel":"Lesezeit","englishOnly":"Dieser Artikel ist nur auf Englisch verfügbar.","englishOriginal":"Englische Seite öffnen","englishBadge":"Auf Englisch","audio":"Diesen Artikel anhören","audioPlay":"Abspielen","audioPause":"Pause","audioSeek":"Wiedergabeposition","audioSpeed":"Wiedergabegeschwindigkeit","audioShort":"Anhören","codeCopy":"Kopieren","codeCopied":"Kopiert","allArticles":"Alle Artikel","topicMore":"Weitere Artikel zu diesem Thema","tagEyebrow":"Schlagwort","categoryEyebrow":"Thema","tagTitle":"Artikel über {tag}","tagLead":"{n} Artikel mit dem Schlagwort {tag}, neueste zuerst. Jeder ist belegt und für Leute geschrieben, die Software ausliefern.","tagMetaTitle":"Artikel über {tag} · Balázs Csorba","tagMetaDescription":"{n} Artikel von Balázs Csorba über {tag}: belegte Praxisnotizen eines AI Engineers aus Österreich, neueste zuerst.","categoryMetaTitle":"Thema: {label} · Balázs Csorba","categoryIntro":{"agents":"KI-Agenten bauen: Agent-Schleifen, Tool-Design, Gedächtnis, Identität sowie Review und Tests, die Agenten-Code mergebar machen.","rag":"Retrieval für LLM-Anwendungen: Hybridsuche, Chunking, Reranking, Vektorspeicher, GraphRAG und die Bewertung von RAG-Antworten.","llmops":"LLMOps und Evals: Modell-Routing und Kosten, Prompt-Caching, Eval-Gates in der CI sowie Tracing für LLM-Agenten im Betrieb.","security":"KI-Sicherheit und Compliance: Prompt Injection, MCP-Tool-Poisoning, Agenten mit minimalen Rechten, PII und der EU AI Act.","web":"Webentwicklung mit KI: Nuxt- und Vue-Funktionen, agentenfähige Websites, strukturierte Daten, Core Web Vitals und E-Commerce."}},"freelance":{"metaTitle":"KI- & Nuxt-Freelancer in Österreich · Balázs Csorba","metaDescription":"Selbstständiger Senior Fullstack- & KI-Entwickler aus Graz: KI-Agenten, MCP-Server und Vue/Nuxt-Apps. Pilotprojekt, Festpreis, nach Aufwand oder Retainer.","keywords":["Freelancer KI","KI-Entwickler Freelancer","IT-Freelancer Graz","IT-Freelancer Österreich","Freelancer Vue.js","Nuxt Freelancer","Fullstack Freelancer","externer Softwareentwickler","Softwareentwickler Graz","KI-Beratung Steiermark","LLM-Integration","MCP-Server Entwicklung","KI-Agenten Entwicklung","Vue 3 Migration","Nuxt Migration","Headless Commerce Freelancer"],"eyebrow":"Freelance & Projektarbeit","title":"Selbstständiger Senior Fullstack- & KI-Entwickler für dein Produkt","lead":"Ich verstärke dein Team als externer Entwickler – als Pilotprojekt, als Festpreis-Projekt oder laufend nach Aufwand. KI-Agenten, MCP-Server und LLM-Features plus die Vue-, Nuxt- und Node.js-Arbeit rundherum, geliefert mit Tests und Code-Review.","facts":["Eingetragenes Gewerbe in Österreich","Attraktive Stunden-, Tages- & Aufgabenpreise","Verträge nach österreichischem Recht","NDA & Auftragsverarbeitungsvertrag (DSGVO)","Reverse Charge für EU-Kunden","Arbeitssprache: Englisch · Ungarisch"],"cta":"Angebot anfragen","mailSubject":"Projektanfrage – Freelance","services":{"title":"Wofür du mich buchen kannst","lead":"Senior-Arbeit über den ganzen Stack – ich übernehme Verantwortung von der ersten Spezifikation bis zum gemergten, getesteten Pull Request.","items":[{"title":"KI-Agenten & MCP-Server","text":"MCP-Server, die Coding- und Business-Agenten sicheren Zugriff auf deine Tools geben, Ticket-zu-PR-Pipelines, Agent-Skills und Evals."},{"title":"LLM-Features & Suche","text":"Suche, Assistenten und Dokumenten-Workflows auf deinen eigenen Daten: Retrieval, hybride Suche, Prompt-Caching, Streaming-UIs und Kostenkontrolle."},{"title":"Vue- & Nuxt-Entwicklung","text":"Neue Apps, Migrationen von Vue 2 → 3 und Nuxt 2 → 4, Design-Systeme und SSR/SSG-Setups, die schnell und wartbar bleiben."},{"title":"Headless Commerce & Schnittstellen","text":"B2B-Shops, Produktkonfiguratoren, PIM- und ERP-Anbindungen (Spryker, Pimcore, SAP, Infor) – API-first und ohne Drama."},{"title":"Performance, SEO & Barrierefreiheit","text":"Core Web Vitals, Lighthouse, strukturierte Daten, Sichtbarkeit in KI-Suchen (llms.txt, Markdown für Agenten) sowie WCAG 2.2 und Barrierefreiheitsgesetz (BaFG)."},{"title":"Beratung, Reviews & Workshops","text":"Architektur- und Code-Reviews, KI-Readiness-Checks und praxisnahe Workshops, damit dein Team mit Coding-Agenten produktiv wird."}]},"models":{"title":"Modelle der Zusammenarbeit","lead":"Wähle das Modell, das zu deinem Risiko und deiner Planung passt – wechseln können wir später immer noch.","billingLabel":"Abrechnung","contractLabel":"Vertrag","items":[{"title":"Pilotprojekt","bestFor":"Ideal, um die Zusammenarbeit mit wenig Risiko zu testen.","text":"2–6 Wochen, ein klar abgegrenztes Ergebnis zum Einführungs-Fixpreis. Arbeiten wir danach weiter zusammen, wird die vorab vereinbarte Differenz zum regulären Preis fällig – sonst nicht.","billing":"Einführungs-Fixpreis, verrechnet nach Abnahme.","contract":"Pilot-Werkvertrag mit Abnahmekriterien."},{"title":"Festpreis-Projekt","bestFor":"Ideal bei klarem Ziel, Budget und Termin.","text":"Spezifikation, Meilensteine und Abnahme vorab – oder fertige Aufgabenpakete für Tickets, Audits, Migrationen und Prototypen. Du bekommst ein fixes Angebot und ein funktionierendes, getestetes und dokumentiertes Ergebnis.","billing":"Fixpreis je Meilenstein.","contract":"Rahmenvertrag + Leistungsbeschreibung (Werkvertrag)."},{"title":"Nach Aufwand","bestFor":"Ideal, um dein Team für Wochen oder Monate zu verstärken.","text":"Ich arbeite in deinem Backlog, in Teilzeit oder Vollzeit, remote oder vor Ort – mit monatlichem Leistungsnachweis und denselben Standards wie dein Team.","billing":"Tagessatz, monatliche Rechnung mit Leistungsnachweis.","contract":"Rahmenvertrag + Einzelauftrag je Einsatz."},{"title":"Retainer","bestFor":"Ideal für Wartung, Reviews und einen Senior auf Abruf.","text":"Ein fixes Kontingent an Tagen pro Monat für Updates, Sicherheits-Fixes, Code-Reviews, KI-Tooling und Fragen deines Teams.","billing":"Monatliche Pauschale für das vereinbarte Kontingent.","contract":"Rahmenvertrag + Retainer-Auftrag, monatlich kündbar."}],"pricing":"Attraktive Preise – spürbar unter den üblichen Sätzen erfahrener Freelancer im DACH-Raum und in UK, weil ich mit Coding-Agenten schneller liefere, ohne bei der Qualität zu sparen. Wähle zwischen Stunden-, Tages- oder Aufgabenpreisen (Fixpreise für Tickets, Audits und Prototypen); die genauen Beträge bekommst du innerhalb von drei Werktagen in einem schriftlichen Angebot."},"process":{"title":"So starten wir","steps":[{"title":"Kennenlernen","text":"30 Minuten, kostenlos: dein Ziel, dein Stack, dein Zeitplan."},{"title":"Angebot","text":"Innerhalb von drei Werktagen: Umfang, Modell, Zeitplan und ein schriftliches Angebot."},{"title":"Vertrag","text":"Rahmenvertrag und Leistungsbeschreibung; bei Bedarf NDA und Auftragsverarbeitungsvertrag."},{"title":"Kick-off","text":"Zugang zu Repository, Umgebungen und euren Kommunikations-Tools."},{"title":"Umsetzung","text":"Kleine Pull Requests mit Tests, eine wöchentliche Demo und ein kurzer schriftlicher Status."},{"title":"Übergabe","text":"Dokumentation, Wissenstransfer und die Nutzungsrechte – kein Lock-in."}]},"terms":{"title":"Klare Bedingungen ab dem ersten Tag","lead":"Die Verträge liegen bereit, bevor wir starten – damit sich das Projekt auf die Arbeit konzentrieren kann.","items":[{"title":"Das Ergebnis gehört dir","text":"Mit der Bezahlung erhältst du das ausschließliche, unbeschränkte Werknutzungsrecht an allem, was für dich entsteht. Open-Source-Teile behalten ihre Lizenzen."},{"title":"Vertraulichkeit","text":"Auf Wunsch eine gegenseitige Geheimhaltungsvereinbarung, bevor die ersten Details fließen – Vertraulichkeit ist ohnehin Teil jedes Vertrags."},{"title":"DSGVO","text":"Ein Auftragsverarbeitungsvertrag nach Art. 28 DSGVO, sobald ich mit personenbezogenen Daten arbeite, inklusive dokumentierter technischer und organisatorischer Maßnahmen."},{"title":"KI-Tools nur mit Zustimmung","text":"Coding-Agenten nur in der Konfiguration, die du freigibst – Business-Tarife ohne Training auf deinem Code, und jede Änderung geht durch ein menschliches Review."},{"title":"Rechnungen","text":"Rechnungen in Euro mit österreichischer Umsatzsteuer oder mit Reverse Charge für Unternehmen in anderen EU-Ländern; Zahlung per Überweisung binnen 14 Tagen."},{"title":"Remote oder vor Ort","text":"Remote in ganz Europa und UK; vor Ort in der Steiermark, in Graz und Wien nach Absprache."}]},"faq":[{"q":"Arbeitest du als Freelancer oder angestellt?","a":"Beides ist möglich. Als Freelancer führe ich ein eingetragenes Einzelunternehmen in Österreich und arbeite projektbezogen für mehrere Kunden; für das richtige Team bin ich auch offen für eine Festanstellung."},{"q":"Arbeitest du auf Deutsch?","a":"Nein – meine Arbeitssprachen sind Englisch und Ungarisch. Meetings, Tickets, Dokumentation, Code und Verträge laufen auf Englisch, wie in den meisten Tech-Teams im DACH-Raum. Deutschsprachige Inhalte für deine Nutzer können trotzdem Teil eines Projekts sein – übersetzt und geprüft von deinem Team."},{"q":"Was kostet ein Projekt?","a":"Weniger, als du vielleicht erwartest: Meine Preise sind attraktiv im Vergleich zu erfahrenen Freelancern im DACH-Raum und in UK, und mit Aufgabenpaketen bekommst du Fixpreise für Tickets, Audits und Prototypen. Eine Preisliste gibt es auf der Website nicht – nach einem kostenlosen 30-Minuten-Gespräch bekommst du innerhalb von drei Werktagen ein schriftliches Angebot."},{"q":"Wem gehört der Code?","a":"Dir. Mit der Bezahlung erhältst du das ausschließliche und unbeschränkte Recht, alles, was für dich entsteht, zu nutzen, zu ändern und weiterzugeben. Ich behalte nur mein allgemeines Know-how und bestehende Werkzeuge, die du als Teil des Ergebnisses nutzen darfst."},{"q":"Unterschreibst du ein NDA und einen Auftragsverarbeitungsvertrag?","a":"Ja. Eine gegenseitige Geheimhaltungsvereinbarung und einen Auftragsverarbeitungsvertrag nach Art. 28 DSGVO habe ich fertig vorbereitet – deine eigenen Vorlagen unterschreibe ich gerne nach Prüfung."},{"q":"Setzt du KI-Coding-Agenten auf Kundencode ein?","a":"Nur mit deiner Zustimmung und in dem Setup, das du freigibst – zum Beispiel Business-Tarife ohne Modelltraining auf deinen Daten oder eure eigenen Firmen-Accounts. Tests, statische Analyse und menschliches Review entscheiden, was ausgeliefert wird."},{"q":"Wie verrechnest du Kunden außerhalb Österreichs?","a":"Unternehmen in anderen EU-Ländern bekommen eine Rechnung ohne österreichische Umsatzsteuer (Reverse Charge, bitte UID-Nummer mitschicken). Auch Kunden außerhalb der EU – etwa in UK oder der Schweiz – erhalten eine Rechnung ohne österreichische USt; Kunden in Österreich zahlen 20 % USt."},{"q":"Kannst du vor Ort arbeiten?","a":"Ja, nach Absprache: in der Steiermark und in Graz kurzfristig, in Wien oder anderswo in Europa für Workshops, Kick-offs und Planungswochen. Der Großteil der Arbeit passiert remote, in ganz Europa und UK."},{"q":"Wie schnell kannst du starten?","a":"Meist zwei bis vier Wochen nach Vertragsunterzeichnung, kleine Pilotprojekte und Audits oft früher. Frag einfach nach meiner aktuellen Verfügbarkeit."}],"ctaTitle":"Erzähl mir von deinem Projekt","ctaText":"Eine kurze E-Mail mit Ziel, Stack und Zeitplan reicht – du bekommst innerhalb eines Werktags eine Antwort."},"webmcp":{"metaTitle":"WebMCP für KI-Agenten – Balázs Csorba","metaDescription":"Diese Website stellt KI-Agenten fünf Tools über die W3C-WebMCP-API bereit. Probier jedes davon auf dieser Seite aus oder lies die Definitionen dahinter.","eyebrow":"WebMCP","title":"Diese Website spricht mit KI-Agenten","lead":"Die Website registriert fünf Tools über die W3C-WebMCP-API, damit ein Agent im Browser Artikel suchen und lesen, Kontaktdaten abrufen und Seiten öffnen kann, statt das HTML auszulesen. Unten kannst du jedes Tool selbst ausprobieren.","status":{"checking":"Browser wird geprüft…","visible":"Unterstützt: noch keine Tools sichtbar | Unterstützt: 1 Tool sichtbar | Unterstützt: {count} Tools sichtbar","unknown":"Unterstützt, aber die Anzahl der Tools lässt sich nicht lesen","unsupported":"In diesem Browser nicht unterstützt. Du kannst alle Tools unten trotzdem ausprobieren."},"tools":{"eyebrow":"Tools","title":"Die fünf Tools","lead":"Jede Karte zeigt, was ein Agent sieht: den Namen, die Beschreibung und das Eingabeschema. Die Seite führt dieselben Definitionen aus, die die Website registriert. Deshalb kannst du hier jedes Tool ausprobieren."},"toolNotes":{"get_page_content":"Liest eine Seite der Website als Markdown.","search_articles":"Findet Blogbeiträge und Tool-Reviews nach Stichwörtern, ohne Suchbegriff die neuesten zuerst.","get_article":"Liest einen Blogbeitrag oder ein Tool-Review als Markdown.","get_contact_details":"Gibt Name, Rolle, E-Mail, LinkedIn, Standort und Sprachen zurück.","open_page":"Öffnet eine Seite oder einen Artikel in diesem Tab."},"toolTitles":{"get_page_content":"Seite lesen","search_articles":"Artikel suchen","get_article":"Artikel lesen","get_contact_details":"Kontaktdaten","open_page":"Seite öffnen"},"chips":{"readOnly":"Nur lesend","changesPage":"Ändert die Seite"},"agentSees":"Was der Agent sieht","parameters":"Parameter","noParameters":"Keine Parameter.","required":"Pflicht","optional":"optional","values":"Werte","tryIt":"Ausprobieren","default":"Standard","run":"Tool ausführen","running":"Läuft…","result":"Ergebnis","errorTitle":"Fehler","truncated":"… {count} weitere Zeichen","navigatesAway":"Dieses Tool verlässt die Seite: Das Ziel öffnet sich in diesem Tab.","connect":{"eyebrow":"Verbinden","title":"Einen Agenten verbinden","lead":"Die Unterstützung ist noch begrenzt, und einiges davon ist noch in der Testphase. Stand Oktober 2026:","chrome":"In Chrome 149 läuft ein Origin Trial. Für lokale Tests aktivierst du chrome://flags/#enable-webmcp-testing und startest Chrome neu.","edge":"In Edge 150 läuft ebenfalls ein Origin Trial.","chatgpt":"ChatGPT Desktop unterstützt WebMCP. Brave hat experimentelle Unterstützung in Leo.","inspector":"Die Chrome-Erweiterung „Model Context Tool Inspector“ listet die Tools einer Seite auf und führt sie aus.","spec":"WebMCP-Spezifikation (W3C)","guide":"Chromes WebMCP-Anleitung"},"build":{"eyebrow":"Unter der Haube","title":"So ist es gebaut","text":"Die fünf Tool-Definitionen stehen in einem einzigen Modul. Das Plugin registriert sie beim Browser, und diese Seite führt dieselben Definitionen aus. So können die beiden nicht auseinanderlaufen.","readMore":"Weiterlesen:","guide":"WebMCP in der Praxis: eine Website agentenfertig machen mit deklarierten Tools","review":"WebMCP: Tools veröffentlichen statt Pixel ausliefern"},"doors":{"eyebrow":"Für Agenten","title":"Weitere Türen für Agenten","llms":"Ein Inhaltsverzeichnis für Agenten, mit einer Zusammenfassung jedes Artikels und Tools.","llmsFull":"Der vollständige Text aller englischen Seiten in einer Datei.","markdown":"Jede Seite gibt es auch als Markdown: Hänge .md an die Adresse an oder sende den Header Accept: text/markdown."},"privacy":{"eyebrow":"Datenschutz","title":"Wo die Tools laufen","text":"Die Tools laufen in deinem Browser. Der Server der Website sieht nur die üblichen Seiten- und Markdown-Anfragen, und die Website sendet nichts an einen KI-Anbieter."}}}}