// content.jsx — full portfolio data (EN/TR/NL), ported from portfolio.ts → window.CONTENT

window.CONTENT = {
  identity: {
    name: "M. Ali ŞEN",
    handle: "mashen.dev",
    email: "muhalishen@gmail.com",
    phone: "+90 541 338 10 19",
    location: "Flanders, Belgium",
    github: "shenmali",
    linkedin: "alimshen",
    medium: "@malishen",
  },

  role: {
    en: "AI/ML Engineer // Data Scientist",
    tr: "AI/ML Mühendisi // Data Scientist",
    nl: "AI/ML Engineer // Data Scientist",
  },

  now: {
    en: "Building an end-to-end agentic game-dev framework — delegating the full production line to agents: from idea and design doc, through style-consistent visuals and code, to audio and video/animation generation.",
    tr: "Uçtan uca agentic bir game-dev framework'ü inşa ediyorum. Fikir aşamasından dizayn dokümanına, stil-tutarlı görsel üretiminden kodlamaya, ses üretiminden video/animasyona kadar tüm production hattını agent'lara delege eden bir sistem.",
    nl: "End-to-end agentic game-dev framework — van idee en design-doc tot stijl-consistente visuals, code, audio en video/animatie — gedelegeerd aan agents.",
  },
  nowStack: ["LangGraph", "MCP", "ComfyUI + FLUX", "Claude Code", "Suno / ElevenLabs", "Runway / Kling", "n8n"],

  languages: [
    { code: "TR", level: { en: "Native", tr: "Anadil", nl: "Moedertaal" }, pct: 100 },
    { code: "EN", level: { en: "C1", tr: "C1", nl: "C1" }, pct: 85 },
    { code: "NL", level: { en: "A1 → learning", tr: "A1 → öğreniyor", nl: "A1 → lerend" }, pct: 20 },
  ],

  focus: [
    { id: "agentic", code: "AGT",
      title: { en: "Agentic Frameworks", tr: "Agentic Frameworks", nl: "Agentic Frameworks" },
      body: {
        en: "Multi-agent orchestration with LangGraph, LangChain, CrewAI, AutoGen. Tool-use, memory, planner/executor separation and MCP — decision-making systems shipped in production.",
        tr: "LangGraph, LangChain, CrewAI, AutoGen ile multi-agent orkestrasyonu. Tool-use, memory, planlayıcı/executor ayrımı ve MCP ile ürün içinde karar veren sistemler.",
        nl: "Multi-agent orkestratie met LangGraph, LangChain, CrewAI, AutoGen. Tool-use, geheugen, planner/executor en MCP — beslissingssystemen in productie.",
      },
      stack: ["LangGraph", "LangChain", "CrewAI", "AutoGen", "MCP", "Pydantic-AI"],
      proof: { en: "7+ agent QA loop in production · avg decision latency < 2s", tr: "Üretimde 7+ agent'li QA loop'u · ortalama karar gecikmesi < 2sn", nl: "7+ agent QA-loop in productie · gem. latency < 2s" } },
    { id: "automation", code: "AUT",
      title: { en: "AI Automation", tr: "AI Automation", nl: "AI Automation" },
      body: {
        en: "Always-on automation with n8n, Make, Zapier, and Temporal. AI positioned as decision-maker across email, CRM, and internal tool integrations.",
        tr: "n8n, Make, Zapier ve Temporal ile sürekli çalışan otomasyon hatları. AI'yi tetikleyici olarak değil, karar mercii olarak konumluyorum.",
        nl: "Altijd-aan automatisering met n8n, Make, Zapier, Temporal. AI als beslisser in e-mail, CRM en interne tools.",
      },
      stack: ["n8n", "Make", "Zapier", "Temporal", "Airflow", "Celery"],
      proof: { en: "60%+ reduction in manual ops hours · 200+ workflows/week", tr: "Manuel operasyon saatlerinde %60+ azalma · haftada 200+ workflow", nl: "60%+ minder handmatige ops-uren · 200+ workflows/week" } },
    { id: "rag", code: "RAG",
      title: { en: "RAG & Knowledge", tr: "RAG & Knowledge", nl: "RAG & Kennis" },
      body: {
        en: "Hybrid retrieval, rerank, graph-RAG, knowledge graphs. Neo4j, Qdrant, pgvector — enterprise answer quality grounded in your data.",
        tr: "Hybrid retrieval, rerank, graph-RAG ve knowledge-graph mimarisi. Neo4j, Qdrant, pgvector ile kurumsal bilgi üzerinden endüstriyel kalitede yanıt.",
        nl: "Hybride retrieval, rerank, graph-RAG en knowledge graphs. Neo4j, Qdrant, pgvector voor enterprise-antwoordkwaliteit.",
      },
      stack: ["Neo4j", "Qdrant", "pgvector", "LlamaIndex", "Cohere-rerank", "BM25"],
      proof: { en: "Hybrid retrieval + rerank · +35pt gain in groundedness score", tr: "Hybrid retrieval + rerank · groundedness skorunda +35pt iyileşme", nl: "Hybride retrieval + rerank · +35pt in groundedness" } },
    { id: "generative", code: "GEN",
      title: { en: "Generative Media", tr: "Generative Media", nl: "Generative Media" },
      body: {
        en: "ComfyUI, FLUX, SD, LoRA fine-tunes for brand-consistent visuals; Suno, ElevenLabs for audio; Runway, Kling, Sora for video. Game assets to ad creative.",
        tr: "ComfyUI, FLUX, SD, LoRA ile marka-tutarlı görsel; Suno & ElevenLabs ile ses; Runway, Kling, Sora ile video. Game asset'ten reklam kreatifine kadar.",
        nl: "ComfyUI, FLUX, SD, LoRA voor merk-consistente visuals; Suno, ElevenLabs voor audio; Runway, Kling, Sora voor video.",
      },
      stack: ["ComfyUI", "FLUX", "SD", "LoRA", "Suno", "ElevenLabs", "Runway"],
      proof: { en: "Brand-consistent LoRA fine-tunes · 10× faster asset delivery", tr: "Marka-tutarlı LoRA fine-tune · asset teslim süresinde 10× hızlanma", nl: "Merk-consistente LoRA's · 10× snellere asset-levering" } },
    { id: "devtools", code: "DEV",
      title: { en: "AI-Native Dev", tr: "AI-Native Dev", nl: "AI-Native Dev" },
      body: {
        en: "End-to-end product vibe-coding with Claude Code, Cursor, Windsurf, v0, Aider. Custom MCP servers, bespoke agents, review automation, spec-driven delivery.",
        tr: "Claude Code, Cursor, Windsurf, v0, Aider ile uçtan uca ürün vibe-coding'i. MCP sunucuları, özel agent'lar, review otomasyonu ve spec-driven geliştirme.",
        nl: "End-to-end product vibe-coding met Claude Code, Cursor, Windsurf, v0, Aider. MCP-servers, agents, review-automatisering, spec-driven delivery.",
      },
      stack: ["Claude Code", "Cursor", "Windsurf", "v0", "MCP", "Aider"],
      proof: { en: "Custom MCP servers · prototype cycles halved via spec-driven delivery", tr: "Özel MCP server'lar · spec-driven delivery ile prototip sürelerinde yarılanma", nl: "Custom MCP-servers · prototype-cycli gehalveerd" } },
    { id: "localization", code: "L10N",
      title: { en: "Localization / NMT", tr: "Localization / NMT", nl: "Lokalisatie / NMT" },
      body: {
        en: "LLM + custom NMT (OpenNMT, Marian) hybrid pipelines. Style-guided, term-consistent, QA-able translation for games, e-commerce, docs.",
        tr: "LLM + özel NMT (OpenNMT, Marian) hibrit pipeline. Stil rehberli, terim-tutarlı, QA'lanabilir çeviri akışları; oyun, e-ticaret, dokümantasyon.",
        nl: "LLM + custom NMT (OpenNMT, Marian) hybride pijplijnen. Stijlgestuurd, term-consistent, QA-baar vertalen.",
      },
      stack: ["GPT", "Gemini", "LLaMA", "OpenNMT", "Marian", "COMET"],
      proof: { en: "12+ language in-game text pipeline · 40% translation cost reduction", tr: "12+ dile oyun içi metin pipeline'ı · çeviri maliyetinde %40 düşüş", nl: "12+ talen in-game-tekstpijplijn · 40% kostenreductie" } },
    { id: "mlops", code: "OPS",
      title: { en: "MLOps & Eval", tr: "MLOps & Eval", nl: "MLOps & Eval" },
      body: {
        en: "LLM observability via Langfuse, LangSmith, Arize; evaluation via Ragas and DeepEval. Model comparisons, prompt versioning, cost/latency budgets.",
        tr: "Langfuse, LangSmith, Arize ile LLM observability; Ragas ve DeepEval ile kalite ölçümü. Model karşılaştırma, prompt versiyonlama, cost/latency bütçeleri.",
        nl: "LLM-observability via Langfuse, LangSmith, Arize; evaluatie met Ragas, DeepEval.",
      },
      stack: ["Langfuse", "LangSmith", "Arize", "Ragas", "DeepEval", "W&B"],
      proof: { en: "Prompt versioning + cost/latency budgets · regressions caught pre-merge", tr: "Prompt versiyonlama + cost/latency bütçeleri · regresyonları pre-merge yakalama", nl: "Prompt-versioning + budgetten · regressies pre-merge gevangen" } },
    { id: "forecast", code: "FCST",
      title: { en: "Forecast & RL", tr: "Forecast & RL", nl: "Forecast & RL" },
      body: {
        en: "Time-series and reinforcement learning for LTV, demand forecasting, supply-chain optimization. Production models for e-commerce and games.",
        tr: "Zaman serisi ve reinforcement learning ile LTV, talep tahmini, supply-chain optimizasyonu. E-ticaret ve oyun için üretim modelleri.",
        nl: "Tijdreeksen en RL voor LTV, vraagvoorspelling, supply-chain optimalisatie.",
      },
      stack: ["Prophet", "XGBoost", "PyTorch", "Stable-Baselines", "Optuna"],
      proof: { en: "90-day LTV forecast · MAPE under 12% · 3+ months in production", tr: "LTV 90-gün tahmin modeli · MAPE %12 altında · üretimde 3 aydır canlı", nl: "90-dagen LTV-model · MAPE < 12% · 3+ maanden live" } },
    { id: "gamelab", code: "GAME",
      title: { en: "Game Lab", tr: "Game Lab", nl: "Game Lab" },
      body: {
        en: "End-to-end web game production and level-design automation. AI vibe-coding for rapid iteration, procedural levels, style-consistent asset generation.",
        tr: "Uçtan uca web oyun üretimi ve level-design otomasyonu. AI vibe coding ile hızlı iterasyon, procedural level, stil-tutarlı asset üretimi.",
        nl: "End-to-end webgame-productie en level-design-automatisering. AI vibe-coding voor snelle iteratie.",
      },
      stack: ["Three.js", "Phaser", "Canvas", "Claude", "ComfyUI"],
      proof: { en: "Idea to working prototype in 48h · procedural levels + style-consistent art", tr: "Fikirden çalışan prototipe 48 saat · procedural level + stil-tutarlı asset", nl: "Idee naar prototype in 48u · procedurele levels + stijl-consistente art" } },
  ],

  experience: [
    { year: "2025", current: true, company: "Unico Studio",
      role: { en: "AI/ML Engineer", tr: "AI/ML Engineer", nl: "AI/ML Engineer" },
      note: {
        en: "Asset generation (FLUX/SD), localization pipelines (GPT/Gemini/LLaMA + OpenNMT/Marian), LTV forecasting, MCP-driven QA agents, LangGraph/n8n automations, ComfyUI workflows.",
        tr: "Asset üretimi (FLUX/SD), lokalizasyon pipeline'ları (GPT/Gemini/LLaMA + OpenNMT/Marian), LTV tahmini, MCP ile QA agent'ları, LangGraph/n8n otomasyonları, ComfyUI workflow'ları.",
        nl: "Asset-generatie (FLUX/SD), lokalisatiepijplijnen, LTV-voorspelling, MCP-QA-agents, LangGraph/n8n-automatiseringen, ComfyUI-workflows.",
      } },
    { year: "2023", company: "Nomination Italy Turkey",
      role: { en: "IT Project Manager", tr: "IT Project Manager", nl: "IT Project Manager" },
      note: {
        en: "E-commerce, Shopify, ERP, SAP system design. SQL reporting, sales forecasting, and dynamic generative AI product/ad/marketing systems.",
        tr: "E-ticaret, Shopify, ERP, SAP sistem tasarımı. SQL raporlama, satış tahmini ve generative AI ile dinamik ürün/reklam/pazarlama sistemleri.",
        nl: "E-commerce, Shopify, ERP, SAP-systeemontwerp. SQL-rapportage, verkoopvoorspelling en generatieve AI.",
      } },
    { year: "2023", company: "Freelance",
      role: { en: "AI/ML Engineer // Data Scientist", tr: "AI/ML Engineer // Data Scientist", nl: "AI/ML Engineer // Data Scientist" },
      note: {
        en: "RAG chatbots, fine-tuned agents, ComfyUI workflows (BabyFaceGenerator, FaceSwap, StyleTransfer), LTV time-series, supply-chain RL, n8n automations.",
        tr: "RAG chatbotlar, fine-tuned agent'lar, ComfyUI workflow'ları (BabyFaceGenerator, FaceSwap, StyleTransfer), LTV zaman serisi, supply-chain RL, n8n otomasyonları.",
        nl: "RAG-chatbots, fine-tuned agents, ComfyUI-workflows, LTV-tijdreeksen, supply-chain RL, n8n-automatiseringen.",
      } },
    { year: "2023", company: "UPOD.dev",
      role: { en: "Lead Assistant // Data Science", tr: "Lead Assistant // Data Science", nl: "Lead Assistant // Data Science" },
      note: {
        en: "Software developer training platform. Lead assistant in the Data Science track.",
        tr: "Yazılım geliştirici eğitim platformu. Data Science track'inde lead asistan.",
        nl: "Trainingsplatform voor softwareontwikkelaars. Lead-assistent Data Science.",
      } },
    { year: "2022", company: "E-Commint",
      role: { en: "Software Developer", tr: "Software Developer", nl: "Software Developer" },
      note: {
        en: "SAP Commerce Cloud (Hybris) Silver Partner. Java/Spring/Angular for Karaca and Awasr NL & RU e-commerce sites.",
        tr: "SAP Commerce Cloud (Hybris) Silver Partner. Karaca ve Awasr e-commerce sitelerinin Hollanda ve Rusya implementasyonlarında Java/Spring/Angular.",
        nl: "SAP Commerce Cloud (Hybris) Silver Partner. Java/Spring/Angular voor Karaca en Awasr NL & RU sites.",
      } },
  ],

  skills: [
    { name: "Python", level: 6 },
    { name: "LLM / RAG / Agents", level: 6 },
    { name: "LangGraph / LangChain", level: 5 },
    { name: "ComfyUI / SD / FLUX", level: 6 },
    { name: "PyTorch / HuggingFace", level: 5 },
    { name: "n8n / Make / Zapier", level: 5 },
    { name: "MCP / Claude Code", level: 5 },
    { name: "Neo4j / Cypher", level: 4 },
    { name: "SQL (MS / PSQL)", level: 5 },
    { name: "Java (Spring)", level: 5 },
    { name: "JS (React / Angular)", level: 4 },
    { name: "Swift (UIKit / SwiftUI)", level: 4 },
  ],

  education: [
    { year: "2024 –", degree: { en: "MSc Computer Engineering", tr: "Bilgisayar Müh. Yüksek Lisans", nl: "MSc Computer Engineering" }, school: "Yıldız Technical University" },
    { year: "2020–23", degree: { en: "BSc Computer Engineering · GPA 3.17", tr: "Bilgisayar Müh. Lisans · GPA 3.17", nl: "BSc Computer Engineering · GPA 3.17" }, school: "Yıldız Technical University" },
    { year: "2018–20", degree: { en: "Associate · Web Design & Coding · GPA 3.83", tr: "Önlisans · Web Tasarım & Kodlama · GPA 3.83", nl: "Associate · Web Design & Coding · GPA 3.83" }, school: "Anadolu University" },
  ],

  certs: [
    "NewMind AI Bootcamp Assistant // 2025",
    "Quantum Computing & Programming (QBronze) // 2024",
    "Red Hat RH124 / RH134 // 2023",
    "Cisco CCNA 1-3 v7 // 2022",
    "IBB & Ecodation Data Science // 2022",
    "Java Spring Bootcamp (E-Commint) // 2022",
  ],

  github: [
    { name: "AGRAGraph", url: "https://github.com/shenmali/AGRAGraph",
      desc: { en: "Self-correcting agentic RAG on a LangGraph cyclic state machine — validates answers, catches hallucinations, and auto-refines queries.", tr: "LangGraph döngüsel state machine üzerinde kendini düzelten agentic RAG — yanıtı doğrular, halüsinasyonu yakalar, sorguyu otomatik iyileştirir.", nl: "Zelfcorrigerende agentic RAG op een LangGraph cyclische state machine — valideert antwoorden, detecteert hallucinaties, verfijnt queries automatisch." },
      tags: ["LangGraph", "Agentic RAG", "Python"] },
    { name: "industrial-vision", url: "https://github.com/shenmali/industrial-vision",
      desc: { en: "End-to-end production-line defect detection — unsupervised anomaly detection + pixel localization, deployed on Jetson via TensorRT and Modbus PLC.", tr: "Uçtan uca üretim hattı hata tespiti — denetimsiz anomali tespiti + piksel lokalizasyonu, Jetson'da TensorRT ve Modbus PLC ile.", nl: "End-to-end defectdetectie aan de productielijn — unsupervised anomaliedetectie + pixel-lokalisatie, op Jetson via TensorRT en Modbus PLC." },
      tags: ["Computer Vision", "TensorRT", "MLOps"] },
    { name: "RetAgGen-PowerUP", url: "https://github.com/shenmali/RetAgGen-PowerUP",
      desc: { en: "Agentic RAG evaluation workbench for maintenance-doc QA — cited answers, evidence cards, and diagnostic traces over a synthetic corpus.", tr: "Bakım-dokümanı QA için agentic RAG değerlendirme tezgahı — alıntılı yanıtlar, kanıt kartları ve sentetik korpus üzerinde tanı izleri.", nl: "Agentic RAG-evaluatiewerkbank voor onderhoudsdoc-QA — geciteerde antwoorden, evidence cards en diagnostische traces over een synthetisch corpus." },
      tags: ["RAG", "Eval", "React"] },
    { name: "gennai_rag_project", url: "https://github.com/shenmali/gennai_rag_project",
      desc: { en: "RAG medical chatbot over 167k+ doctor–patient Q&A — vector search with ChromaDB + Gemini for grounded Turkish answers.", tr: "167b+ doktor–hasta Q&A üzerinde RAG tıbbi chatbot — ChromaDB ile vektör arama + Gemini ile dayanaklı Türkçe yanıtlar.", nl: "RAG medische chatbot over 167k+ arts–patiënt Q&A — vector search met ChromaDB + Gemini voor onderbouwde antwoorden." },
      tags: ["RAG", "ChromaDB", "Gemini"] },
    { name: "LLM-Chess-Arena", url: "https://github.com/shenmali/LLM-Chess-Arena",
      desc: { en: "An arena where LLMs battle at chess — a referee engine runs games between OpenAI and Anthropic models for tool-use and model comparison.", tr: "LLM'lerin satrançta savaştığı arena — hakem motoru OpenAI ve Anthropic modelleri arasında oyunları yürütür; tool-use ve model karşılaştırması.", nl: "Een arena waar LLM's schaken — een scheidsrechter-engine draait partijen tussen OpenAI- en Anthropic-modellen voor tool-use en modelvergelijking." },
      tags: ["LLM", "Agents", "Eval"] },
    { name: "HairTransplant_Flux_Project", url: "https://github.com/shenmali/HairTransplant_Flux_Project",
      desc: { en: "AI-powered hair-transplant outcome prediction — before/after visual generation with a FLUX diffusion pipeline.", tr: "AI destekli saç ekimi sonuç tahmini — FLUX diffusion pipeline'ı ile before/after görsel üretimi.", nl: "AI-gestuurde voorspelling van haartransplantatie-resultaten — voor/na-beeldgeneratie met een FLUX diffusion-pijplijn." },
      tags: ["FLUX", "Diffusion", "Python"] },
  ],

  ui: {
    en: { now: "CURRENTLY BUILDING", focus: "FOCUS AREAS", work: "EXPERIENCE", skills: "SKILLS", langs: "LANGUAGES", repos: "REPOSITORIES", edu: "EDUCATION", certs: "CERTIFICATES", contact: "CONTACT",
      nav: { focus: "Focus", work: "Experience", repos: "Code", contact: "Contact" },
      contactLede: "Open to full-time AI/ML roles — Flanders or remote EU. Let's build the layer that thinks.", cta: "Get in touch", entries: "ENTRIES", footer: "Designed & built in the matrix · no templates" },
    tr: { now: "ŞU AN İNŞA EDİYORUM", focus: "ODAK ALANLARI", work: "DENEYİM", skills: "YETENEKLER", langs: "DİLLER", repos: "REPOLAR", edu: "EĞİTİM", certs: "SERTİFİKALAR", contact: "İLETİŞİM",
      nav: { focus: "Alanlar", work: "Deneyim", repos: "Kod", contact: "İletişim" },
      contactLede: "Tam-zamanlı AI/ML rollerine açığım — Flanders ya da remote EU. Düşünen katmanı birlikte kuralım.", cta: "İletişime geç", entries: "KAYIT", footer: "Matrix içinde tasarlandı & kodlandı · şablon yok" },
    nl: { now: "NU AAN HET BOUWEN", focus: "FOCUSGEBIEDEN", work: "ERVARING", skills: "VAARDIGHEDEN", langs: "TALEN", repos: "REPOSITORIES", edu: "OPLEIDING", certs: "CERTIFICATEN", contact: "CONTACT",
      nav: { focus: "Focus", work: "Ervaring", repos: "Code", contact: "Contact" },
      contactLede: "Beschikbaar voor full-time AI/ML-rollen — Vlaanderen of remote EU. Laten we de denkende laag bouwen.", cta: "Neem contact op", entries: "ITEMS", footer: "Ontworpen & gebouwd in de matrix · geen templates" },
  },
};
