Coloration syntaxique • aucun lien externe • 100 % autonome
{
"meta": {
"title": "乌洛姆·苏万纳冯(Oulom Souvannavong)— DevOps 集成与主权云技术负责人 — Linux、K8s、AI",
"description": "技术负责人 — 拥有 20 多年 Linux 关键生产环境经验,专注 DevOps 集成(Ansible、Terraform、GitLab CI)、主权云(OpenStack/NUBO、Kubernetes/Onyxia)以及生产环境 AI(Ollama、n8n、Claude API)。法国财政部、法国广播电台、法国国家图书馆、INPI。"
},
"person": {
"fullName": "Oulom Souvannavong",
"initials": "OS",
"roleShort": "DevOps 集成与主权云技术负责人 — Linux、K8s、AI",
"shortRole": "DevOps 与主权云技术负责人",
"tagline": "我为您设计并加固关键平台 — 从裸金属到 Kubernetes 集群、从主权云到生产环境 AI 智能体。",
"heroLead": "拥有 20 多年 Linux 关键生产环境运维经验,融合 DevOps 集成(Ansible、Terraform、GitLab CI)、虚拟化与主权云(VMware、OpenStack/NUBO、Kubernetes/Onyxia),并将 AI 投入生产。曾担任法国财政部、法国广播电台、法国国家图书馆、INPI 等机构的跨部门技术负责人。",
"heroTags": [
"DevOps 技术负责人",
"主权云与 K8s",
"Linux 关键生产",
"生产环境 AI 与智能体"
],
"cardLine": "集成 · 平台 · 生产 AI"
},
"stats": [
{
"value": "20+",
"unit": "年",
"label": "Linux 生产环境经验"
},
{
"value": "500+",
"unit": "VM",
"label": "在关键环境中运行"
},
{
"value": "8",
"unit": "项任务",
"label": "重要项目 · 公共部门、媒体、金融、能源"
},
{
"value": "3",
"unit": "数据中心",
"label": "迁移过程中无任何业务中断"
}
],
"valueProps": {
"title": "为何选择我",
"intro": "罕见的复合背景:兼具 Linux 系统专家的技术深度与 DevOps 集成工程师交付落地的严谨。",
"items": [
{
"icon": "shield",
"title": "关键生产,零中断",
"body": "精心准备的上线、系统化的回滚方案、跨数据中心 DRP。在存款机构和公共服务领域有可证明的连续性运行经验。"
},
{
"icon": "stack",
"title": "全栈:从硬件到云",
"body": "从机柜上架与光纤通道 SAN,到 Kubernetes 集群与 S3 / Ceph 存储。具备少有人能宣称的端到端视野。"
},
{
"icon": "wrench",
"title": "集成与自动化",
"body": "Ansible、Terraform、Jenkins、GitLab CI、Helm。把脆弱链路改造成可靠交付 — 并把过程文档化。"
},
{
"icon": "people",
"title": "跨团队技术参考人",
"body": "支持项目经理,在 Linux/AD、虚拟化与 ANSSI 安全等方面为团队解锁,并传递经验。"
},
{
"icon": "sparkle",
"title": "AI 作为运维能力的延伸",
"body": "将 LLM 融入工具链:Cursor、n8n + Claude 智能体、本地 Ollama / Mistral 推理、RAG。具体而言:在小微企业落地生产级 AI 智能体、在黑客松交付法律 RAG,以及以数据驱动方式构建本作品集。"
}
]
},
"aiSection": {
"eyebrow": "AI · 智能体 · 推理",
"title": "AI 融入日常工作",
"intro": "AI 对我而言不是流行词:自从可用的 LLM 出现以来,我就把它们既作为日常工作伙伴,也作为实验领域。我用它来写代码、做设计、做推理 — 并构建在生产中运行的智能体,包括用于保障数据主权的本地推理。",
"groups": [
{
"title": "增强代码与推理(日常)",
"items": [
{
"name": "Cursor",
"role": "AI 增强 IDE",
"note": "我的主要开发环境,内置智能体与自动化"
},
{
"name": "Claude",
"vendor": "Anthropic",
"role": "主要 LLM 助手",
"note": "设计、分析、文档、重构、代码评审"
},
{
"name": "Grok",
"vendor": "xAI",
"role": "调研与推理",
"note": "技术观察、基准测试、多源综合"
},
{
"name": "GitHub Copilot",
"role": "上下文自动补全",
"note": "在 GitHub 托管的项目上偶尔补充使用"
}
]
},
{
"title": "智能体与推理(生产环境)",
"items": [
{
"name": "n8n",
"role": "智能体编排器",
"note": "文档分类与处理流水线、触发器与 API 调用"
},
{
"name": "Claude API",
"vendor": "Anthropic",
"role": "识别与抽取",
"note": "发票、会计单据、非结构化文档的结构化"
},
{
"name": "Ollama",
"role": "本地 LLM 推理",
"note": "在工作站 / 服务器上运行,保障数据主权"
},
{
"name": "Mistral",
"role": "开放权重 LLM",
"note": "通过 Ollama 在本地提供模型服务,已在小微企业首次部署"
}
]
},
{
"title": "黑客松与 RAG(实验)",
"items": [
{
"name": "Whisper",
"vendor": "OpenAI",
"role": "ASR — 语音转文本",
"note": "2025 年 2 月黑客松:法律聊天机器人的语音输入"
},
{
"name": "LightRAG",
"role": "上下文化 RAG",
"note": "答案锚定于法国法典(来源 git.tricoteuses.fr)"
},
{
"name": "FastAPI",
"role": "REST API",
"note": "Python 层连接 ASR、RAG 引擎与渲染"
}
]
}
],
"projects": [
"AI 辅助的艺术品藏品管理门户(2026)",
"AI 黑客松 — 基于法国法典的语音聊天机器人,Whisper / LightRAG / SPESYS GPU K8s(2025 年 2 月)",
"面向数据科学家的数据科学与 AI 软件门户(自 2023 年起)",
"为某小微企业会计链开发的 AI 智能体(生产中)"
]
},
"trustOrgs": {
"title": "他们曾信任过我",
"items": [
"法国财政部 — Bercy HUB 与 DGFIP",
"法国广播电台(Radio France)",
"法国国家图书馆(BnF)",
"INPI(法国国家工业产权局)",
"Naarea",
"Sungard / Neoxam",
"Enedis",
"Fayat IT",
"UCAD — Arts décoratifs"
]
},
"profile": {
"paragraph": "法国国籍 — 居住于巴黎。在关键环境中担任技术参考人:作为生产与开发之间的桥梁,负责交付自动化、安全加固与大规模运维(数百台 VM、监控、存储)。"
},
"partners": {
"title": "合作伙伴",
"intro": "在自有项目之外,我经常与合作伙伴一起承接更大范围的需求(多学科团队、GPU 基础设施、AI 等)。",
"items": [
{
"name": "SpeSYS Services",
"url": "https://spesys-services.fr/",
"tagline": "信息系统专家事务所",
"description": "在基础设施、AI 与数据等领域定期合作 — 尤其通过他们的 Kubernetes GPU 集群(在 2025 年 2 月 AI 黑客松期间使用)以及 ReSItal 软件家族(Data、Forge、Infra、Pilotage)。"
},
{
"name": "Cabinet RYC",
"url": "mailto:cabinet.ryc@gmail.com",
"linkLabel": "邮件联系",
"tagline": "为企业提供日常协助 — 已逾 20 年",
"description": "为企业日常运营(行政、预记账)提供陪伴的事务所。在 IT 与自动化方面长期合作:Windows 客户机 + Linux 服务器 + Sage Coala,会计链集成,并已在生产中落地首批 AI 智能体。"
}
]
},
"humanProfile": "一位好奇、沉稳且投入的工程师:二十年来,我深耕法国大型机构的关键信息系统 — 法国财政部、法国广播电台、BnF、INPI — 始终保持学习与试验的热情。我喜欢成为生产团队与开发团队之间的连接点,分享自己的理解,让运维者所操作的系统更可靠、更安心。",
"languages": [
{
"name": "法语",
"level": "母语"
},
{
"name": "英语",
"level": "工作语言 — 阅读、国际项目交流(EPTOS、Sungard)"
},
{
"name": "老挝语",
"level": "家族传承 — 基础"
}
],
"interests": [
"开源与自托管",
"艺术与博物馆藏品管理",
"主权 AI 与本地推理",
"黑客松与公共生态(DINUM、Bercy HUB)",
"技术志愿(埃希罗勒艺术学院)",
"系统、虚拟化与 HPC 技术观察"
],
"softSkills": [
{
"title": "自主性与结果导向",
"body": "作为独立顾问,我能自主推进高难度议题,明确优先级,并在严苛环境中按时交付。"
},
{
"title": "传授与分享",
"body": "跨部门技术参考人:我喜欢支持项目经理,解释「为什么」,让团队在我离开后比我到来时更强。"
},
{
"title": "诊断与排查",
"body": "擅长解决他人未能搞定的僵局 — 例如在法国广播电台,我接手了三位工程师都未能解决的 SSSD 问题。"
},
{
"title": "严谨与风险意识",
"body": "上线前精细准备、系统化回滚方案。我深知在存款机构或公共服务中,宕机的代价非常高昂。"
},
{
"title": "好奇心与适应力",
"body": "从 2000 年代编译 Linux 内核到 2026 年的本地 Mistral 推理 — 一路穿越所有技术变革,从未停滞。"
},
{
"title": "跨团队协作精神",
"body": "在 BnF 担任 B2I 岗位 — 开发与生产之间的「黏合剂」 — 让我学会倾听、仲裁,从不把研发与运维对立起来。"
}
],
"downloads": {
"title": "下载文档",
"intro": "可打印的简历与介绍(HTML/PDF),以及原始数据(JSON)和面向 ATS 与招聘方 AI 工具的结构化纯文本档案。",
"items": [
{
"id": "cv-classique",
"file": "cv/cv-classique.html",
"kind": "简历",
"title": "经典简历 — 1 页",
"audience": "传统法式格式",
"description": "紧凑而完整、A4 单页的简历。适合常规投递、ESN 商务接洽与初次对接。"
},
{
"id": "cv-moderne",
"file": "cv/cv-moderne.html",
"kind": "简历",
"title": "现代简历 — 多页",
"audience": "IT 招聘人员与 ESN",
"description": "舒展的多页排版,呈现精致易读。适合希望了解细节的 IT 招聘者与猎头。"
},
{
"id": "presentation-rh",
"file": "cv/presentation-rh.html",
"kind": "介绍",
"title": "HR 介绍 — 人本视角",
"audience": "HR 招聘人员与人才获取团队",
"description": "从人本视角呈现:风范、软技能、价值观、社会贡献与叙事化的成长经历。语言无术语,适合首轮面谈。"
},
{
"id": "presentation-technique",
"file": "cv/presentation-technique.html",
"kind": "介绍",
"title": "技术介绍 — 专业视角",
"audience": "CTO、CIO、技术负责人",
"description": "完整的技术栈、已交付架构、典型诊断案例与参考框架。适合希望基于实证评估专业能力的人。"
},
{
"id": "site-json",
"file": "cv/site-data.json",
"prettyView": "cv/pretty-json.html",
"kind": "数据",
"title": "JSON 导出 — 站点完整数据",
"audience": "ATS、解析、内部工具",
"description": "data/site.json 的忠实副本:与展示页与生成的简历共用同一数据源。适合导入其他系统或自动化处理。"
},
{
"id": "profil-ia-recruteurs",
"file": "cv/profil-recruteurs-ia.md",
"prettyView": "cv/pretty-md.html",
"kind": "纯文本档案",
"title": "Markdown 档案 — 招聘方与 AI",
"audience": "ATS、AI 助手、候选人观察",
"description": "纯文本版本,包含标题、列表与头部元数据:专为 ATS 中的匹配工具与集成 LLM 阅读而设计。"
}
]
},
"earlyIt": {
"title": "计算机入门历程",
"items": [
{
"period": "7 岁",
"body": "第一台电脑:PC XT,搭载 8 MHz 的 8088 处理器、512 KB 内存、两个 5.25 英寸软盘驱动器(360 KB)、84 键键盘、CGA 显示器、MS-DOS 2.21;同时初识 Logo 语言;首先在家中体验,我们的第一款数据库类软件是家庭家谱程序。"
},
{
"period": "8 岁",
"body": "GW-BASIC 基础;MS-DOS 与 batch(.bat)脚本编写。"
},
{
"period": "10 岁",
"body": "首次拆机,并在抹除数据后独立完成完整重装:软盘格式化、硬盘格式化,配置 CONFIG.SYS 与 AUTOEXEC.BAT。"
},
{
"period": "11 岁",
"body": "在巴黎的课程中开始接触桌面排版(DTP)。"
},
{
"period": "12 岁",
"body": "学习 Turbo Pascal 并完成首批电子游戏开发;初学 C 语言。"
},
{
"period": "13 岁",
"body": "在初中创建计算机俱乐部;在大学首次接触互联网。"
},
{
"period": "14 岁",
"body": "第二台电脑:40 MHz 的 486 DX、4 MB 内存、3.5 英寸软盘、250 MB 硬盘、VGA 显示器;运行 MS-DOS 6.2 + Windows 3.1。"
},
{
"period": "16 岁",
"body": "在个人电脑上首次安装 Linux;首次编译内核;通过 ipchains 共享互联网连接。"
},
{
"period": "17 岁",
"body": "首次参加 LAN 派对。"
}
]
},
"techWatch": {
"title": "技术观察与新奇发现",
"intro": "精选项目,帮助理解系统、虚拟化与浏览器生态的演进方向。是当下 Linux、low-level 与 WebAssembly 边界的良好示范。",
"items": [
{
"name": "Linux/Wasm",
"url": "https://joelseverin.github.io/linux-wasm/",
"tag": "Linux 内核 · WebAssembly",
"description": "通过 WebAssembly 让 Linux 内核直接在浏览器中启动:BusyBox + musl,Xterm.js 终端。对调度、系统原语以及现代 JS 沙箱限制(无 MMU、通过 Web Workers 模拟任务挂起等)感兴趣者必看。"
},
{
"name": "DOS Wasm X",
"url": "https://github.com/nbarkhina/DosWasmX",
"tag": "模拟 · WebAssembly",
"description": "在浏览器中运行的 DOS / Windows 95-98 模拟器,基于通过 Emscripten 编译为 WebAssembly 的 DOSBox-X。浏览器侧持久化硬盘、ISO/IMG/CD 支持、手柄支持 — 充分展示了带异常和 asyncify 的 Wasm 当下能做到的事。"
}
]
},
"wasmLab": {
"title": "Wasm 实验室 — 「职业回顾」档案与浏览器内演示",
"intro": "选择一个标签:两个演示均由本站提供(DOS 与 Linux Wasm),并配有适合浏览器的响应头。下方下载内容为可选项。",
"embedDemoTitle": "交互式演示",
"embedDemoIntro": "DOS 标签:首次加载常需 15–60 秒(Wasm + 归档),随后 START.BAT 会自动运行。Linux 标签:x86 v86 模拟器启动真实 Linux 内核 + BusyBox(首次约 7 MB)。",
"dosEmbedUrl": "/wasm-lab/deploy/index.html",
"linuxDemoUrl": "/wasm-lab/v86-linux/index.html?v=persist-1",
"linuxTabIntro": "x86 v86 模拟器(BSD-2 协议),运行真实 Linux 内核 + BusyBox — 无内核补丁,无 vfork bug,标准 Linux 行为。",
"linuxTabFooter": "首次启动:~5 秒下载 + ~5 秒内核启动。终端支持经典 Unix 命令(ls、vi、top,已安装时支持 htop 等)。",
"dosSectionTitle": "DOS 包(可选)",
"dosSectionIntro": "四个 ZIP 归档(含一份内嵌演示已在使用的「全包」)。ASCII 以兼容 CP437;前三个为按主题划分。",
"linuxSectionTitle": "Linux overlay",
"linuxSectionIntro": "tar.gz 归档:可复制或挂载到演示用 Linux 中的文本目录树 — 不是独立的可启动磁盘镜像。",
"sourcesSectionTitle": "源码与部署",
"sourcesSectionIntro": "下载仓库、Emscripten 构建以及发布到 /wasm-lab/ 下:详见 wasm-lab/BUILD.md。脚本:npm run wasm:fetch。",
"dosPacks": [
{
"id": "premiers-pas",
"file": "wasm-lab/images/dos/dos-pack-01-premiers-pas.zip",
"label": "计算机入门历程",
"hint": "EARLY01.TXT … 童年 / 青少年里程碑"
},
{
"id": "organisations",
"file": "wasm-lab/images/dos/dos-pack-02-organisations.zip",
"label": "组织与关键数据",
"hint": "ORGS.TXT, STATS.TXT"
},
{
"id": "experiences",
"file": "wasm-lab/images/dos/dos-pack-03-experiences.zip",
"label": "职业经历",
"hint": "每个项目一个 TXT"
},
{
"id": "demo-complet",
"file": "wasm-lab/images/dos/oulom.zip",
"label": "全包归档(自动演示所用)",
"hint": "EARLY*、ORGS、STATS、XP* — 与内嵌演示内容相同"
}
],
"linuxPacks": [
{
"id": "parcours-overlay",
"file": "wasm-lab/images/linux/oulom-parcours-overlay.tar.gz",
"label": "Oulom 职业 overlay",
"hint": "oulom-parcours/{early,trust,xp}/"
}
],
"demoLinks": [
{
"label": "Dos Wasm X — 在线演示",
"url": "https://www.neilb.net/doswasmx/",
"tag": "DOS · Wasm"
},
{
"label": "Linux Wasm — Joel Severin 演示",
"url": "https://joelseverin.github.io/linux-wasm/",
"tag": "Linux · Wasm"
}
],
"selfHostPaths": {
"dosEmulator": "/wasm-lab/deploy/",
"note": "执行 npm run wasm:fetch 后,模拟器文件位于 wasm-lab/deploy/(index.html 在根目录)。按相同目录结构原样推送到服务器即可。"
}
},
"personalProjects": {
"intro": "在常规项目之外:",
"items": [
{
"sortOrder": 1,
"year": "2026",
"title": "藏品门户与 AI",
"html": true,
"body": "<p>在 <strong>2026</strong> 年,<strong>主导</strong>一个用于<strong>艺术藏品管理</strong>的 <strong>Web 门户</strong>建设,并由<strong>人工智能辅助</strong>。</p>"
},
{
"sortOrder": 2,
"year": "2025 年 2 月",
"title": "AI 黑客松 — 语音聊天机器人与法国法典",
"html": true,
"expandBody": true,
"body": "<p>在 <strong>2025 年 2 月</strong>参加一次<strong>聚焦人工智能的黑客松</strong>:我们的团队开发了一款<strong>语音聊天机器人</strong>,能够快速从<strong>法国法典</strong>中抽取并返回信息。目标:通过语音识别与合成<strong>简化法律的可访问性</strong>。</p><p><strong>法律来源</strong> — 参考文本来自 <a href=\"https://git.tricoteuses.fr\" target=\"_blank\" rel=\"noopener noreferrer\">git.tricoteuses.fr</a>,构成完整的法律基础。</p><p><strong>技术栈</strong> — <strong>Whisper</strong>(语音→文本)、<strong>LightRAG</strong>(<a href=\"https://github.com/HKUDS/LightRAG\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub 上的上下文 RAG</a>)、用于清洗与格式化数据集的 <strong>shell</strong> 脚本,<strong>Python</strong> & <strong>FastAPI</strong> 暴露 Web 服务,开发机(Mac mini,24 GB 内存)准备数据集。</p><p><strong>基础设施</strong> — 在 <strong>SPESYS Services</strong> 的 <strong>Kubernetes GPU 集群</strong>上部署 LLM,借助 GPU 满足黑客松的紧迫节奏。</p><p><strong>我的角色</strong> — 数据集准备:法律文本的抽取、结构化与归一化;编写连接语音识别层、RAG 模块与渲染端的 <strong>Python/FastAPI 原语 API</strong>。</p><p><strong>合作</strong> — 为期<strong>两天</strong>的黑客松,与 <strong>DINUM</strong>、<strong>Bercy HUB</strong> 围绕 <strong>Onyxia (Nubonyxia)</strong> 项目以及其他公共部门(经济部、司法部等)进行交流。</p><p><strong>致谢</strong> — 感谢 <strong>Stéphane Baisse</strong> 以及 <strong>SPESYS</strong> 团队(<strong>Thomas Williot</strong>、<strong>Gérald Moreno</strong>)提供的基础设施访问与支持。</p><p><strong>创新</strong> — 可访问性(语音提问)、GPU 带来的速度、对专业人士与公众的社会影响。</p>"
},
{
"sortOrder": 3,
"year": "自 2023 年起",
"title": "软件门户 — 数据科学与 AI",
"html": true,
"body": "<p>自 <strong>2023</strong> 年起,开发一个面向<strong>数据科学家</strong>、聚焦<strong>数据科学</strong>与 <strong>AI</strong> 的<strong>软件门户</strong>。</p>"
},
{
"sortOrder": 4,
"year": "2022",
"title": "艺术学院 — 埃希罗勒(志愿者)",
"html": true,
"body": "<p>在 <strong>2022</strong> 年,作为 <strong>IT 专家</strong><strong>志愿</strong>参与<strong>埃希罗勒</strong>一所<strong>艺术学院</strong>的筹建(咨询并搭建数字基础)。</p>"
},
{
"sortOrder": 5,
"year": "2020",
"title": "WordPress 展示型网站",
"html": true,
"body": "<p>在 <strong>2020</strong> 年,使用 <strong>WordPress</strong> 与 <strong>Elementor</strong> 为<strong>小微创业者</strong>建设<strong>网站</strong>。</p>"
},
{
"sortOrder": 6,
"year": "约 2019",
"title": "Le Signe — 藏品管理(Chaumont)",
"html": true,
"body": "<p><strong>Le Signe</strong> — <strong>艺术藏品管理</strong>软件:<strong>Groovy</strong>(后端)、<strong>JavaScript</strong> 与 <strong>React</strong>(前端)。在 <strong>2019</strong> 年前后于 <a href=\"https://www.le-signe.fr/\" target=\"_blank\" rel=\"noopener noreferrer\">Le Signe</a>(<strong>法国国家平面设计中心</strong>,位于 <strong>Chaumont</strong>)的藏品盘点工作中尝试与开发。</p>"
},
{
"sortOrder": 7,
"year": "2013",
"title": "试题自动批改 — AMC",
"html": true,
"body": "<p>在 <strong>2013</strong> 年,基于自由软件 <a href=\"https://www.auto-multiple-choice.net/fr/\" target=\"_blank\" rel=\"noopener noreferrer\">Auto Multiple Choice (AMC)</a> 设计了<strong>选择题自动批改</strong>方案:每场考试生成<strong>独一无二的试卷</strong>(题目与选项<strong>顺序各异</strong>),每份纸质试卷拥有<strong>唯一条码</strong>,随后<strong>扫描</strong>、<strong>自动答案识别</strong>(OMR)并完成<strong>自动批改</strong>。</p>"
}
]
},
"contact": {
"lead": "如需就项目或 Linux / 集成方面的专业能力进行交流,欢迎联系。",
"email": "ouloms@gmail.com",
"phoneDisplay": "+33 6 18 67 96 00",
"phoneTel": "+33618679600",
"address": "142 avenue de Saint-Ouen, 75018 Paris",
"website": "https://oulom-souvannavong.fr/",
"websiteDisplay": "oulom-souvannavong.fr",
"social": [
{
"id": "facebook",
"label": "Facebook",
"href": "https://www.facebook.com/oulom.souvannavong"
},
{
"id": "linkedin",
"label": "LinkedIn",
"href": "https://www.linkedin.com/in/oulom-souvannavong/"
},
{
"id": "whatsapp",
"label": "WhatsApp",
"href": "https://wa.me/33618679600"
},
{
"id": "telegram",
"label": "Telegram",
"href": "https://t.me/+33618679600"
}
]
},
"skillsIntro": "与履历相对应的综合:在公共服务、金融、媒体与能源行业的 Linux/Unix 运维;从 VMware 到 Proxmox 的虚拟化、OpenStack/NUBO 私有云、Kubernetes 与 Helm(Onyxia,行业级公共合规)、Slurm/Apptainer HPC;Ansible、Terraform、GitLab、Salt 自动化;按 ANSSI、MCS、Cyberwatch 进行加固;生产环境中的 AI 智能体与文档处理链路。",
"skills": [
{
"title": "系统与网络",
"icon": "server",
"level": 3,
"text": "Linux Red Hat/CentOS、Debian/Ubuntu、SUSE 生产环境(等级 3);Active Directory / LDAP / SSSD 集成(Radio France、Naarea);PXE 启动 / Preseed、为瘦客户端使用 LTSP(UCAD);BIND DNS、iptables 防火墙;内核编译与裁剪(旧机回收)。Unix AIX、Solaris、HP-UX(INPI、Sungard GP3 迁移)。在混合环境中使用 Windows 与 Samba(小微企业、博物馆)。"
},
{
"title": "监控与可观测性",
"icon": "chart",
"level": 3,
"text": "Centreon、Grafana、Prometheus;Nagios → Centreon → Prometheus 的演进路径(INPI、Naarea)。Graylog、Elastic Stack 用于日志与关联。JMX 指标(Tomcat/Java)。技术-业务运维仪表盘。"
},
{
"title": "存储、SAN 与灾备",
"icon": "disk",
"level": 3,
"text": "HP 3PAR SAN、iSCSI、光纤通道、NFS;Ceph、对象存储 S3 / MinIO;MySQL Galera + ProxySQL。VMware Site Recovery Manager DRP / BCP,跨数据中心复制与机房迁移(INPI)。备份:Bacula、BackupPC、NetBackup、Veeam。"
},
{
"title": "虚拟化、云与 Kubernetes",
"icon": "cloud",
"level": 3,
"text": "VMware vSphere、oVirt、KVM、Proxmox、Hyper-V;OpenStack(NUBO,部委)。Kubernetes 与 Helm(Onyxia / Nubonyxia,「Onyxia 风味」 chart、目录 CI)。Docker;Apptainer 用于容器化负载;通过 Rancher / RancherOS 启动的首批集群(INPI)。"
},
{
"title": "数据库与中间件",
"icon": "db",
"level": 2,
"text": "MySQL / MariaDB、PostgreSQL、Oracle(运维)、MongoDB、MaxDB。Tomcat / Java 栈、Apache NiFi、CMDBuild(DGFIP RADAR)。PHP、Node、Heurist 集成(BnF SHS)。Ext JS(业务 UI)。"
},
{
"title": "自动化与 CI/CD",
"icon": "gear",
"level": 3,
"text": "Ansible(Tower)、Terraform(OpenStack VM)、Puppet、SaltStack;Git、Jenkins、GitLab CI,Bercy/BnF/INPI 发布链;Rundeck → Ansible Tower(Radio France)。Dollar Universe(任务调度)。Bamboo / SVN(Sungard 时期)。"
},
{
"title": "开发、脚本与 AI",
"icon": "code",
"level": 3,
"text": "Bash/shell、Python、JavaScript/React、Go、Ext JS;Django、PHP、VBA/AutoIt。近期项目:FastAPI、RAG、Whisper。生产环境:n8n 智能体、Claude API、本地 Ollama / Mistral 推理(小微企业)、运维脚本与 Selenium(生产巡检)。"
},
{
"title": "HPC 与运维安全",
"icon": "stack",
"level": 2,
"text": "Slurm、InfiniBand、Apptainer(MPI、科学计算负载)、Lenovo 平台;受保护网络区域、专用 LDAP(Naarea)。按 ANSSI 指南与 MCS 加固的 Linux 镜像。Cyberwatch(INPI 启动、Radio France 咨询)。"
}
],
"education": [
{
"year": "2004",
"institution": "EPSI Paris",
"detail": "Bac+5 — 信息系统专家"
}
],
"educationExtraTitle": "学历与文凭(节选)",
"educationExtra": [
"典型路径:Bac — BTS — EPSI 课程(LIS、DGC…) — 硕士 / 信息系统专家。",
"工程实习:ISTA、STMI、METO X SILICIO、LFB、LIS、DGC(1999–2005)。可在 index.html 或本 JSON 中补充,然后运行 npm run build。"
],
"internships": [
{
"years": "1999",
"employer": "ISTA",
"context": "IT 硬件供应商",
"role": "PC 装配线临时工"
},
{
"years": "2000–2001",
"employer": "STMI",
"context": "COGEMA 子公司",
"role": "桌面支持实习生"
},
{
"years": "2001",
"employer": "METO X SILICIO",
"context": "图形处理",
"role": "桌面支持实习生"
},
{
"years": "2002",
"employer": "LFB",
"context": "制药实验室",
"role": "桌面支持实习生"
},
{
"years": "2003",
"employer": "LIS",
"context": "互联网服务商(老挝)",
"role": "工程实习生"
},
{
"years": "2004",
"employer": "DGC",
"context": "培训中心",
"role": "工程实习生"
},
{
"years": "2005",
"employer": "DGC",
"context": "培训中心",
"role": "工程实习生"
}
],
"experience": [
{
"sortOrder": 1,
"period": "2025 年 2 月 — 2026 年 2 月",
"location": "Paris Bercy / Noisy-le-Grand",
"role": "独立顾问 — Linux 专家",
"organization": "法国财政部 — Bercy HUB 与 DGFIP",
"highlights": [
{
"tag": "Onyxia · Insee",
"title": "国家级主权数据实验室平台",
"body": "Onyxia 是由 Insee 开发的开源 Datalab 门户,如今已被法国政府广泛使用,为数据科学家提供自助式 Kubernetes 环境。为其贡献,意味着参与构建国家数字主权的关键模块。"
},
{
"tag": "AI 黑客松 · 2025 年 2 月",
"title": "语音聊天机器人与法国法典",
"body": "为期两天的 AI 黑客松:团队使用 Whisper、LightRAG 与 FastAPI,为来自 git.tricoteuses.fr 的法律文本打造语音助手;准备数据集并搭建串联 ASR、RAG 与合成的 API。基础设施为 SPESYS 的 GPU Kubernetes;与 DINUM、Bercy HUB / Onyxia(Nubonyxia)方面交流。感谢 Stéphane Baisse、Thomas Williot 与 Gérald Moreno(SPESYS)。"
},
{
"tag": "Helm · Kubernetes",
"title": "合规的 Helm chart 目录",
"body": "调整 Helm chart 使其可在 Onyxia 门户中启动,同时满足 Bercy 的合规要求:将 Kubernetes 打包、安全与目录 UX 结合的少见实践。"
},
{
"tag": "Terraform · OpenStack",
"title": "在 NUBO 私有云上的 IaC",
"body": "维护并加固用于在 OpenStack(NUBO,部委内部云)上预置 VM 的 Ansible 与 Terraform 代码 — 在主权环境中端到端的 IaC 链路。"
},
{
"tag": "CMDBuild · NiFi",
"title": "DGFIP 资产清单框架 — RADAR",
"body": "稳定化并升级 RADAR — 汇总整个 DGFIP 信息系统资产清单的框架。CMDBuild + Apache NiFi 运行于 Tomcat/PostgreSQL:在法国,很少有工程师在关键生产环境接触过这一组合。"
}
],
"sections": [
{
"title": "两个实体",
"html": true,
"body": "<p>在部委的<strong>至少两个实体</strong>开展任务:<strong>Bercy HUB</strong> 负责 <strong>Nubonyxia</strong> 项目,随后 <strong>DGFIP</strong>(税务)负责 <strong>RADAR</strong> 项目。</p>"
},
{
"title": "Bercy HUB — Nubonyxia 项目",
"html": true,
"body": "<p><strong>Nubonyxia</strong> 项目以提供 <strong>Onyxia</strong> 软件为基础 — 该软件源自 <strong>Insee</strong> 与 <strong>Bercy</strong> 团队的工作。<strong>Onyxia</strong> 安装在 <strong>Kubernetes 集群</strong>上,并通过 <strong>Helm chart</strong> 以 <strong>Pod</strong> 形式部署负载。该方案落地于所选的<strong>托管底座</strong>(<strong>Bercy HUB</strong> / <strong>NUBO</strong>),项目名因此而来(<strong>Nubo</strong> / <strong>Onyxia</strong>)。</p><p>角色:参与已在生产中的安装的<strong>持续运维</strong>,并部署<strong>额外服务</strong>。具体做法:调整 <strong>Helm chart</strong>,使其能<strong>从 Onyxia 门户启动</strong> — 将包按 <strong>Onyxia 风味</strong>进行重塑,以贴合目录模型与<strong>合规</strong>要求。</p><p>原本已存在一条<strong>自动化链路</strong>,将交付物从<strong>开发</strong>送到<strong>用户可用</strong>。我特别负责保障此<strong>持续集成链路</strong>的<strong>正常运行</strong>,需要处理大量与<strong>身份验证</strong>和<strong>安全</strong>相关的议题。</p><p>主要难点之一是<strong>梳理</strong>所有需要可见、可控的<strong>组件与流</strong> — 边界难以厘清,同时<strong>身份验证</strong>问题频出,<strong>持续集成链路</strong>仍<strong>不太稳定</strong>。</p>"
},
{
"title": "DGFIP — RADAR 项目",
"html": true,
"body": "<p><strong>RADAR 项目目标</strong>:建立一个<strong>框架</strong>,<strong>聚合多种资产清单来源</strong>,以<strong>盘点</strong><strong>信息系统</strong>中<strong>结构性组件</strong>的<strong>版本</strong>(对资产以及生产中实际运行的内容形成可视化)。</p><p>担任此范围内的<strong>应用 DevOps 集成工程师</strong>:工具链 <strong>Ansible</strong>、<strong>Nexus</strong>、<strong>Jenkins</strong>、<strong>GitLab</strong>,包含 <strong>CMDBUILD</strong> 与 <strong>Apache NiFi</strong> 等服务,配以 <strong>Tomcat</strong>、<strong>PostgreSQL</strong>,运行在 <strong>Linux</strong> 上、托管于 <strong>NUBO</strong> / <strong>OpenStack</strong>。<strong>部署</strong>主要依赖 <strong>Jenkins</strong> 与 <strong>Ansible</strong>。</p><p>在<strong>到岗</strong>时,平台存在<strong>许多故障</strong>。我的角色主要是<strong>稳定</strong>已交付的内容 — 包括<strong>编写并维护</strong>用于在 <strong>OpenStack</strong> 上<strong>创建虚拟机</strong>的 <strong>Ansible</strong> 与 <strong>Terraform</strong> 代码 — 并<strong>推动</strong>所有 RADAR 组件的<strong>版本升级</strong> — 包括将 <strong>CMDBUILD</strong> 升级到<strong>最新版</strong>(与集成链路与依赖项对齐)。</p><p>由于缺少专门的 <strong>JavaScript 开发</strong>,也参与基于 <strong>Ext JS</strong> 框架的 RADAR <strong>UI 维护</strong>与<strong>演进</strong>。</p>"
}
]
},
{
"sortOrder": 2,
"period": "2024 年 1 月 — 2025 年 1 月",
"location": "Nanterre",
"role": "HPC 平台运维",
"organization": "Naarea — 能源(小型模块化反应堆)",
"highlights": [
{
"tag": "Slurm · InfiniBand",
"title": "面向核能仿真的 HPC(SMR)",
"body": "由 10 台 Lenovo 节点通过 InfiniBand 互联组成的 Slurm 集群 — 超算(Top500)的参考栈。将其用于小型模块化反应堆仿真,意味着参与战略行业的软件链路。"
},
{
"tag": "Apptainer (Singularity)",
"title": "兼容 MPI 的 HPC 容器",
"body": "将 HPC 工作负载从 Docker 迁移到 Apptainer:Apptainer 是科学计算的容器标准(MPI、GPU、无特权多用户)。是国家计算中心之外少见的能力。"
},
{
"tag": "ANSSI",
"title": "按国家级框架加固的 Linux 镜像",
"body": "依据 ANSSI(法国国家信息系统安全局)指南设计 Linux 镜像。这是任何敏感信息系统都必须遵循的框架,在核能领域尤为相关。"
},
{
"tag": "SaltStack",
"title": "受保护区域中的多节点编排",
"body": "使用 Salt 配置整个平台 — 它是 Ansible 之外较少见、却在大规模时极具威力的替代方案,部署于带有专用 LDAP、SMTP 与认证的受保护网络区域。"
}
],
"sections": [
{
"title": "Contexte",
"html": true,
"body": "<p>Startup dans la filière <strong>petits réacteurs nucléaires modulaires</strong> (SMR) ; système d’information majoritairement sous <strong>Windows</strong>, avec décision d’investir dans une <strong>plateforme HPC</strong> pour la simulation et le calcul scientifique.</p>"
},
{
"title": "Zone protégée — annuaire, auth et messagerie",
"html": true,
"body": "<p>L’ensemble du parc <strong>Linux</strong> était situé dans une <strong>zone réseau protégée</strong>. Il fallait donc des <strong>infrastructures dédiées</strong> sur ce périmètre : un annuaire <strong>LDAP</strong>, un mécanisme d’<strong>authentification</strong> propre à la zone, et un <strong>relais SMTP</strong> pour la messagerie des services concernés.</p>"
},
{
"title": "Master Linux — préconisations ANSSI",
"html": true,
"body": "<p>À <strong>Naarea</strong>, élaboration d’un <strong>master Linux</strong> pour déployer un socle homogène et durable : capitalisation sur mon <strong>expérience</strong> et alignement sur les <strong>guides et préconisations</strong> de l’<a href=\"https://www.ssi.gouv.fr/\" target=\"_blank\" rel=\"noopener noreferrer\">ANSSI</a> (durcissement, bonnes pratiques).</p>"
},
{
"title": "Plateforme Lenovo — cluster Slurm",
"html": true,
"body": "<p>Infrastructure <strong>Lenovo</strong> : <strong>10 nœuds de calcul</strong>, <strong>4 machines de développement</strong>, <strong>3 machines sous Proxmox</strong> pour l’hébergement de VMs. <strong>NAS</strong> avec partages <strong>NFS</strong> pour les données partagées exploitées par le cluster <strong>Slurm</strong>. Réseau <strong>InfiniBand</strong>. Configuration de l’ensemble avec <strong>Salt</strong> (SaltStack).</p><p>Observabilité et exploitation : Grafana, Prometheus, Centreon ; OpenMP, MPI, Python, Bash ; Helm selon les besoins.</p>"
},
{
"title": "Mission — Slurm, Proxmox et support Linux",
"html": true,
"body": "<p>Exploitation du <strong>cluster Slurm</strong> et de l’infrastructure <strong>Proxmox</strong> (virtualisation, hébergement des machines virtuelles). Rôle <strong>multi-casquette</strong> sur les besoins nécessitant un <strong>Linux</strong> : intégration des <strong>codes de calcul</strong> avec les <strong>bibliothèques scientifiques</strong> (MPI, pile logicielle HPC) ; chaînes d’<strong>intégration continue</strong> avec <strong>GitLab</strong> ; conteneurs — démarrage sous <strong>Docker</strong>, puis usage d’<strong>Apptainer</strong> (Singularity) pour les charges compatibles avec le calcul haute performance.</p>"
}
]
},
{
"sortOrder": 3,
"period": "2022 — 2023",
"location": "Paris / Maison de la radio",
"role": "Linux 专家 — 基础设施项目",
"organization": "法国广播电台",
"highlights": [
{
"tag": "SSSD · Active Directory",
"title": "我之前已有三位工程师失败",
"body": "诊断并解决阻碍新 Linux 服务器接入公共广播业务 IS 的 SSSD 死锁(Linux/AD 集成) — 此前已有三位工程师未能解决。是一次纯专家级的攻坚案例。"
},
{
"tag": "Master Debian · PXE",
"title": "在 AD 域中的可持续 Linux 基础",
"body": "构建可通过 Preseed/PXE 安装、加入 AD 域、按 ANSSI 加固的 Linux 镜像(Debian/Ubuntu) — 面向长期 MCO 与 MCS(安全条件维护),而非仅为通过验收。"
},
{
"tag": "Cyberwatch",
"title": "Linux 安装方面的咨询",
"body": "直接复用在 INPI 启动 Cyberwatch 的经验,为法国广播电台提供咨询:公共广播 Linux 资产的漏洞管理与合规。"
},
{
"tag": "Ansible Tower",
"title": "OnAir 项目编排",
"body": "在 OnAir 项目中将部分广播业务 IS 迁移至 Linux:Ansible playbook 与 role,从 Rundeck 迁移到 Ansible Tower 实现工业化。"
}
],
"sections": [
{
"title": "Projet OnAir",
"body": "Recrutement dans le cadre du projet OnAir : migration d’une partie du système d’information métier radio vers un socle logiciel Linux, alors que l’existant reposait jusqu’alors essentiellement sur Windows."
},
{
"title": "Linux, Active Directory et SSSD",
"body": "Avant mon arrivée, trois ingénieurs Linux s’étaient succédé pour tenter de débloquer la situation. Point critique : l’authentification et l’accrochage des nouveaux serveurs Linux au réseau Microsoft (Active Directory), via SSSD. Comportement observé : lenteurs importantes ou absence de réponse — et aucune équipe n’arrivait à en comprendre la cause. Diagnostic et corrections sur la chaîne d’intégration Linux / AD (SSSD) ayant permis de résoudre ces incidents bloquants."
},
{
"title": "Mission — expertise Linux",
"body": "Embauché en tant qu’expert Linux pour soutenir l’équipe projet infrastructure sur les dossiers Linux — dont la création d’un master Linux (Debian/Ubuntu) dans un domaine AD (Preseed/PXE), le durcissement des installations, et la participation au support de niveau 3. Assistance expert aux projets applicatifs Linux ; microservices ; automatisation Bash/Ansible. Formations Azure et Kubernetes."
},
{
"title": "Stack technique — VMware, PXE, Ansible",
"html": true,
"body": "<p>L’ensemble du périmètre était <strong>hébergé sur VMware</strong>. Les environnements de développement reposaient sur des machines <strong>démarrées en PXE</strong> (boot réseau). Pour la personnalisation et le déploiement : <strong>playbooks et rôles Ansible</strong>, avec <strong>Rundeck</strong> puis <strong>Ansible Tower</strong> (évolution de la chaîne d’orchestration / d’automatisation).</p>"
},
{
"title": "Master Linux — MCO, MCS et ANSSI",
"html": true,
"body": "<p><strong>Côté Radio France</strong>, en complément des <strong>seules spécifications techniques</strong> pour la <strong>création du master Linux</strong>, j’ai pu investir du temps sur un cadrage pensé pour la durée : pour le <strong>MCO</strong> (maintien en conditions opérationnelles), en m’appuyant sur mon <strong>expérience professionnelle</strong> d’exploitation ; pour le <strong>MCS</strong> (maintien en conditions de sécurité), en nous inspirant du <strong>référentiel de l’<a href=\"https://www.ssi.gouv.fr/\" target=\"_blank\" rel=\"noopener noreferrer\">ANSSI</a></strong>.</p>"
},
{
"title": "Conseil — Cyberwatch",
"html": true,
"body": "<p>En <strong>réinvestissant l’expérience acquise à l’INPI</strong> sur <a href=\"https://www.cyberwatch.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Cyberwatch</a>, <strong>j’ai conseillé Radio France</strong> sur <strong>l’installation</strong> de la plateforme (vulnérabilités, conformité) pour <strong>les environnements Linux</strong>.</p>"
}
]
},
{
"sortOrder": 4,
"period": "2019 — 2022",
"location": "Paris",
"role": "集成工程师",
"organization": "法国国家图书馆(约 3000 名员工)",
"highlights": [
{
"tag": "Catalogue général · Réservations",
"title": "BnF 运转的核心",
"body": "在该机构最具战略意义的模块上担任集成工程师:总目录(馆藏方案)与预约系统(图书与馆室) — 公共服务的脊梁。"
},
{
"tag": "Heurist · SHS",
"title": "人文社科研究",
"body": "集成开源平台 Heurist(HeuristNetwork) — 公认的人文社科研究数据管理工具(PHP/JS/MySQL)。一块鲜为人知却被全球研究人员使用的模块。"
},
{
"tag": "NFC · Vivaticket · Zebra",
"title": "线下公共服务:门禁、票务、收银",
"body": "负责公共服务 IS:闸机的 NFC 门禁、Vivaticket 收银终端、Zebra 打印机。罕见地兼具「Linux 工程师」与「公共服务实体基础设施」能力。"
},
{
"tag": "Podman · Ansible · Sonar",
"title": "B2I 办公室 — 开发与生产的黏合剂",
"body": "在 B2I 办公室(10 人负责整个应用组合)内主持发布:commit 评审、Git 合并、安装包、Jenkins 持续集成、Sonar 代码质量、Podman 容器。"
}
],
"sections": [
{
"title": "Bureau B2I — ingénierie et intégration",
"body": "Le bureau B2I (ingénierie et intégration) faisait le lien entre les équipes de production et d’exploitation et les équipes recherche & développement / études — en somme la colle entre développement et prod. Petite équipe d’une dizaine de personnes répartissant l’ensemble du portefeuille applicatif de l’institution. Profils volontairement polyvalents : il fallait cumuler le savoir-faire exploitation / production et celui des études et du développement, et pouvoir intervenir sur tout le spectre sans cloisonnement."
},
{
"title": "Agile, Redmine et double casquette",
"body": "Travail en mode agile ; suivi des tâches de développement dans Redmine. Accompagnement de chaque projet : côté études et développement, référents techniques ; côté production, intégrateurs."
},
{
"title": "Portefeuille métier",
"body": "Portefeuille orienté métiers : bibliographie et service public. Parmi les logiciels majeurs : le catalogue général, outil central du plan documentaire de la bibliothèque ; à égalité d’importance stratégique, le système de réservation — réservation des livres et réservation des salles — au cœur du fonctionnement de la BnF. Service public : billetterie, caisses, etc."
},
{
"title": "SI service public — accès NFC et billetterie",
"body": "Responsabilité du système d’information du service public : contrôle d’accès fondé sur des cartes NFC et la gestion des droits (accès aux salles, portes et portiques avec lecteurs de badge). Côté billetterie, solution Vivaticket et postes de caisse associés : chaque caisse regroupait un ordinateur avec le logiciel de vente, un écran tactile et une imprimante Zebra pour l’impression des billets et étiquettes."
},
{
"title": "Projet — intégration Heurist (Heurist Network)",
"html": true,
"body": "<p>Projet d’intégration du logiciel <strong>Heurist</strong> (<a href=\"https://github.com/HeuristNetwork/heurist\" target=\"_blank\" rel=\"noopener noreferrer\">HeuristNetwork/heurist sur GitHub</a>) : plateforme web open source de gestion de données de recherche en sciences humaines (PHP, JavaScript, MySQL).</p>"
},
{
"title": "Reprise de poste et périmètre hérité",
"body": "L’un des objectifs du rôle : reprendre le travail de mon prédécesseur, qui avait notamment conduit beaucoup de développements ou d’intégrations spécifiques par rapport aux normes existantes ou, plus largement, par rapport à l’état de l’art."
},
{
"title": "Préparation des livraisons et automatisation",
"body": "Une des principales difficultés : en amont de chaque livraison, revue des commits des développeurs, arbitrage de ce qui doit entrer dans la bonne version (périmètre de la release), fusions sur les branches Git, puis préparation des releases — pilotage de l’historique et des branches, pas seulement la structure des répertoires. Objectif : automatiser une grande partie de cette préparation pour fiabiliser et accélérer le cycle."
},
{
"title": "Livrables, production et outillage",
"body": "Côté projet et études : préparer pour la production les packs d’installation, la documentation, les processus de mise en production, les notes de version, le bon de livraison et le nécessaire au déploiement. Nous étions aussi responsables de l’installation des environnements en production : avec Jenkins, déploiement des environnements alignés sur les versions de développement en cours — intégration continue ; Sonar pour contrôler la qualité du code. Les conteneurs (Podman) et Ansible ont été intégrés au fur et à mesure. Stack applicative majoritaire à la BnF : Java, Tomcat, PostgreSQL ; à côté, Git, Node.js, React, Linux (CentOS), VMware, oVirt selon les périmètres. Formations DevOps fondation et Kubernetes."
}
]
},
{
"sortOrder": 5,
"period": "2010 — 2019",
"location": "Courbevoie / Bécon-les-Bruyères",
"role": "Linux 系统架构工程师",
"organization": "INPI — 法国国家工业产权局(约 800 名员工)",
"highlights": [
{
"tag": "EPTOS · OEB",
"title": "欧洲专利局的软件套件",
"body": "加入 EPTOS(European Patent and Trademark Office System)的 eptosadmin 团队 — EPO/OEB 为各国专利局提供的套件。在法国,几乎没有工程师接触过这一战略级国际项目。"
},
{
"tag": "VMware vSphere · SRM",
"title": "虚拟化先行者 + 跨数据中心 DRP",
"body": "在 INPI 引入虚拟化(vSphere 4.0 → 6.0、oVirt、Kubernetes RancherOS),随后用 VMware Site Recovery Manager 落地灾备:跨数据中心复制与切换的编排。"
},
{
"tag": "Galera · ProxySQL · Ceph · S3",
"title": "Active-active SQL 与对象存储架构",
"body": "研究并实施 ProxySQL 后置的 MySQL Galera 集群以构建 active-active 架构,同步部署 Ceph 集群并向 S3 对象存储演进。这是公共部门中少见的架构演进路径。"
},
{
"tag": "Cyberwatch",
"title": "Linux 合规的先行者",
"body": "在 IT 委员会层面启动 Cyberwatch 安装项目 — INPI 是法国最早部署该平台进行 Linux 资产漏洞管理与合规的机构之一。"
},
{
"tag": "HP 3PAR · iSCSI/FC · NFS",
"title": "企业级 SAN 基础设施",
"body": "主导物理主机 ↔ SAN 的链路(以太网上的 iSCSI、光纤通道、NFS),运营 HP 3PAR 阵列;先后完成三次机房整体迁移而无业务中断。"
},
{
"tag": "SLES · normalisation",
"title": "RHEL 3 → SLES 11:资产规整",
"body": "推动技术老化治理:将异构 Linux 资产(早至 RHEL 3)统一到 SUSE Linux Enterprise Server,并将应用从 Unix(HP-UX、AIX、Solaris)迁至 Linux。"
}
],
"sections": [
{
"title": "Après Sungard — arrivée à l’INPI",
"body": "Après l’expérience chez Sungard, intégration de l’INPI — environ neuf ans sur la durée, expérience très riche. À l’arrivée : pas encore de virtualisation ni de conteneurs au sens où on les pratique aujourd’hui ; les services étaient encore massivement installés sur machines dédiées (approche « bare metal »). Linux n’était pas encore majoritaire sur l’ensemble du parc : beaucoup de Windows et d’Unix propriétaires (HP-UX, AIX, Solaris). Les années suivantes ont largement fait évoluer le paysage (virtualisation, Linux, automatisation — voir ci-dessous)."
},
{
"title": "Référent technique — Linux, VMware et virtualisation",
"html": true,
"body": "<p>À l’<strong>INPI</strong>, j’ai accompagné en tant que <strong>référent technique</strong> <strong>toutes les installations logicielles</strong> sous <strong>Linux</strong>.</p><p>J’étais aussi <strong>référent technique</strong> sur l’ensemble du périmètre <strong>VMware</strong> et, plus largement, de la <strong>virtualisation</strong>.</p><p><strong>C’est moi qui ai installé</strong> cette virtualisation à l’INPI : <strong>VMware vSphere</strong> de la <strong>4.0</strong> à la <strong>6.0</strong>, puis <strong>oVirt</strong> (<a href=\"https://www.ovirt.org/\" target=\"_blank\" rel=\"noopener noreferrer\">oVirt</a>), et plus tard les premiers environnements <strong>Kubernetes</strong> (« nuage » conteneurisé) avec <strong>RancherOS</strong> comme socle pour monter ces clusters.</p><p>J’ai aussi réalisé les <strong>premiers masters Linux</strong> de l’INPI (images / installateurs de référence pour déployer le socle), ainsi que les <strong>premiers référentiels de sécurité Linux</strong> (durcissement, règles et bonnes pratiques d’exploitation).</p><p>Chaque fois qu’un projet <strong>devait être installé sous Linux</strong>, j’<strong>accompagnais systématiquement</strong> le <strong>chef de projet</strong> (cadrage, déploiement, exploitation).</p>"
},
{
"title": "Normalisation du parc Linux et gestion de l’obsolescence (RHEL, SUSE)",
"html": true,
"body": "<p>À mon arrivée, le système d’information comportait de nombreuses <strong>distributions Linux</strong> différentes, aux côtés de <strong>plusieurs Unix</strong>.</p><p><strong>À l’INPI</strong>, j’ai piloté la gestion de l’<strong>obsolescence</strong> du parc Linux : <strong>récupération</strong> des anciennes installations et <strong>report sur des plateformes à niveau</strong> — en faisant évoluer des socles très anciens (par ex. <strong>RHEL 3</strong>) vers des versions supportables (<strong>RHEL 5</strong>, puis <strong>RHEL 7</strong> selon les trajectoires). Au terme de la normalisation, le parc entreprise ne reposait plus que sur des installations <strong>SUSE Linux Enterprise Server</strong> : <a href=\"https://www.suse.com/products/server/\" target=\"_blank\" rel=\"noopener noreferrer\">SUSE Linux Enterprise Server</a> — une réussite notable au vu de l’hétérogénéité de départ.</p><p>Nous avons <strong>remplacé l’ensemble des machines Unix</strong> par des <strong>systèmes Linux</strong> et <strong>migré les applications</strong> d’<strong>Unix vers Linux</strong>, afin de ne conserver sur <strong>Unix</strong> que les <strong>bases de données Oracle</strong>.</p>"
},
{
"title": "Projet EPTOS — équipe eptosadmin (run, intégration & architecture)",
"html": true,
"body": "<p>Première mission : intégration de l’équipe <strong>eptosadmin</strong> du projet <strong>EPTOS</strong> (<em>European Patent and Trademark Office System</em>) — la suite logicielle de gestion portée par l’<a href=\"https://www.epo.org\" target=\"_blank\" rel=\"noopener noreferrer\">Office européen des brevets (OEB / EPO)</a> pour les offices membres. L’équipe ne se limitait pas au run et à la production : nous étions aussi responsables de l’<strong>intégration</strong> et de l’<strong>architecture</strong> — en résumé tout le volet <strong>technique</strong>, y compris l’<strong>infrastructure</strong> : installation des serveurs sous <strong>Linux</strong>, montage <strong>en baie</strong> en salle informatique, administration de la <strong>baie SAN</strong>, câblage et raccordement <strong>réseau</strong>, etc. Pour une synthèse académique du programme EPTOS comme transfert de système de gestion des brevets depuis l’OEB : Marcuzzo Cavalheiro & Joia (2016), <em>Public Administration & Development</em>, DOI <a href=\"https://doi.org/10.1002/pad.1753\" target=\"_blank\" rel=\"noopener noreferrer\">10.1002/pad.1753</a> (étude de cas sur un office national en coopération avec l’EPO ; même famille de programme que les déploiements EPTOS).</p><p>La suite reposait sur quatre applicatifs majeurs : <strong>Soprano</strong> (back-office ; tierce maintenance assurée notamment par <a href=\"https://www.luminess.eu/article/jouve-acteur-majeur-du-numerique-devient-luminess\" target=\"_blank\" rel=\"noopener noreferrer\">Jouve</a>, groupe rebaptisé <strong>Luminess</strong>), <strong>e-OLF</strong> (dépôt en ligne), <strong>PHOENIX</strong> (gestion documentaire), et <strong>Register</strong> (registre). Développements en <strong>Java</strong>, servis via <strong>Tomcat</strong>, avec base de données <strong>MySQL</strong> ; le tout opéré sous <strong>Linux</strong>.</p><p>Les premières mises en production étaient exclusivement en <strong>bare metal</strong> : la virtualisation n’était pas encore déployée sur le site. À l’arrivée de <strong>VMware</strong> (<strong>vSphere 4</strong>), nous avons été parmi les premiers à <strong>migrer</strong> vers la virtualisation et à réaliser les <strong>premières conversions</strong>. Tout n’était pas encore abouti : en début de courbe, les <strong>outils de conversion P2V</strong> ne fonctionnaient pas pour tous les cas — il a fallu recourir à la <strong>création d’images disque brutes</strong> (copie depuis la machine physique) pour les <strong>réintégrer en machine virtuelle</strong> lorsque la conversion standard échouait. Puis généralisation des pratiques (vSphere 5.x, etc.).</p><p>Au départ, la virtualisation ciblait d’abord le périmètre <strong>EPTOS</strong>. Pour l’<strong>étendre à l’ensemble du système d’information</strong>, c’est notre équipe qui a porté le chantier : nous avions le plus d’<strong>expérience</strong> sur la virtualisation.</p><p>Plus précisément, EPTOS disposait d’une <strong>infrastructure dédiée</strong> : sauvegardes, bases de données et <strong>switchs</strong> propres au périmètre — fonctionnement <strong>autonome</strong> par rapport au reste du SI. Vers la fin du projet, décision de <strong>converger</strong> avec l’infrastructure centrale pour les fonctions transverses, notamment <strong>supervision</strong> et <strong>sauvegarde</strong>.</p><p>L’effort de <strong>normalisation</strong> réalisé dans le cadre d’EPTOS a ensuite été <strong>réinvesti</strong> pour l’ensemble du système d’information : notamment <strong>création des bases</strong> (données et référentiels), et <strong>migration</strong> des machines <strong>obsolètes</strong> vers le <strong>nouveau socle technique</strong>.</p><p>Plus tard, d’autres logiciels ont été intégrés autour de l’environnement EPTOS, notamment pour la <strong>diffusion et la valorisation des données</strong> : stack <strong>Talend</strong> couvrant entre autres <strong>ETL</strong>, <strong>ESB</strong> et <strong>MDM</strong> (<em>Master Data Management</em>).</p>"
},
{
"title": "SUSE Linux Enterprise — migrations SLES 9 → 11 (EPTOS)",
"html": true,
"body": "<p>À l’<strong>INPI</strong>, nous avons géré les <strong>migrations</strong> de <strong>SLES 9</strong> vers <strong>SLES 11</strong> (<a href=\"https://www.suse.com/\" target=\"_blank\" rel=\"noopener noreferrer\">SUSE Linux Enterprise Server</a>) <strong>au fil de l’eau</strong> pour le périmètre <strong>EPTOS</strong> — planification des montées de version <strong>progressivement</strong>, sans tout basculer d’un seul coup.</p>"
},
{
"title": "Parcours d’équipe — production brevets, fusion Linux/Unix, diffusion EPTOS",
"html": true,
"body": "<p>D’abord <strong>rattaché</strong> uniquement à une équipe <strong>dédiée à la production</strong> du <strong>système d’information brevets</strong>, j’ai ensuite <strong>rejoint</strong> le <strong>reste de l’équipe système Linux / Unix</strong> (élargissement de mon périmètre). J’y ai <strong>réinvesti</strong> dans l’<strong>ensemble du SI</strong> les <strong>briques nouvelles</strong> mises en place pour le projet <strong>EPTOS</strong> (socles, outillages, pratiques de normalisation).</p>"
},
{
"title": "Salle serveurs — baies, KVM Raritan IP, volumes, câblage",
"html": true,
"body": "<p>Nous <strong>montions nous-mêmes en baie</strong> les <strong>machines</strong> et <strong>gérions l’exploitation</strong> des serveurs en <strong>salle serveur</strong> — notamment <strong>KVM over IP Raritan</strong> (<a href=\"https://www.raritan.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Raritan</a>, consoles distantes), <strong>mises à jour de firmwares</strong>, <strong>création de volumes</strong> disque côté serveurs / stockage, <strong>raccordements électriques</strong> et <strong>réseau</strong>, etc.</p>"
},
{
"title": "Disponibilité du dépôt — e-OLF, confidentialité et mises en production",
"html": true,
"body": "<p>L’<a href=\"https://www.inpi.fr/\" target=\"_blank\" rel=\"noopener noreferrer\">INPI</a> est un <strong>organisme de dépôt</strong> : le <strong>service de dépôt</strong> doit <strong>fonctionner en permanence</strong>. J’avais la responsabilité du volet <strong>dépôt des brevets</strong>, notamment <strong>e-OLF</strong> (dépôt en ligne — périmètre EPTOS), et la <strong>mise en place</strong> ainsi que l’<strong>exploitation</strong> de l’<strong>environnement sécurisé</strong> pour les données soumises au <strong>secret</strong> jusqu’à leur <strong>publication</strong> éventuelle.</p><p>Les <strong>mises en production</strong> étaient donc <strong>minutieusement préparées</strong> pour garder un <strong>temps de coupure</strong> <strong>aussi court que possible</strong>.</p>"
},
{
"title": "Physique vers virtuel (P2V) — VMware Converter, dd, méthodes artisanales",
"html": true,
"body": "<p>Passer d’une installation sur <strong>machine physique</strong> à une installation sur <strong>machine virtuelle</strong> n’a pas été <strong>de tout repos</strong>. La voie « standard » était <strong>VMware Converter</strong> (conversion P2V), mais il existait des cas où l’outil ne suffisait pas.</p><p>Il a alors fallu créer des <strong>images disque brutes</strong> (<em>raw</em>) avec <strong>dd</strong> (copie secteur à secteur), puis parfois des chemins <strong>artisanaux</strong> : transfert par <strong>archives compressées</strong> et <strong>décompression</strong> sur la cible, réimport et ajustements manuels dans VMware lorsque la chaîne Converter / import direct échouait.</p>"
},
{
"title": "Ordonnancement des flux (Dollar Universe)",
"html": true,
"body": "<p>Les volumes de <strong>données</strong> étaient importants : les <strong>sauvegardes</strong> constituaient un sujet critique — d’où la nécessité d’une <strong>fenêtre de sauvegarde</strong> bien organisée — typiquement en <strong>fenêtre de nuit</strong> / heures creuses, avec planification fine des plages rigoureusement orchestrée avec <strong>Dollar Universe</strong> : <a href=\"https://www.broadcom.com/products/software/automation/dollar-universe\" target=\"_blank\" rel=\"noopener noreferrer\">Broadcom — Dollar Universe</a> (workload automation).</p><p>Les <strong>traitements automatisés</strong> présentaient encore <strong>beaucoup d’erreurs</strong> : j’ai dû <strong>tout corriger</strong> et <strong>fiabiliser l’ensemble des scripts shell et Python</strong> qui les supportaient.</p>"
},
{
"title": "MySQL — maintenance, sauvegardes et restaurations",
"html": true,
"body": "<p>Il a été nécessaire de disposer d’un <strong>savoir-faire</strong> solide sur la <strong>maintenance des bases MySQL</strong> : en particulier la capacité à <strong>sauvegarder</strong> correctement des bases <strong>importantes</strong> (volumétrie, criticité métier), et surtout à pouvoir les <strong>restaurer</strong> de manière fiable en exploitation.</p><p>À l’<strong>INPI</strong>, nous avons <strong>beaucoup étudié</strong> des sujets avancés dans le <strong>MCO MySQL</strong> : <strong>haute disponibilité</strong>, <strong>performance</strong>, <strong>sécurité</strong> et <strong>sauvegarde</strong>.</p><p><strong>Historiquement</strong>, le parc incluait aussi des bases <strong>MaxDB</strong> en complément de <strong>MySQL</strong> : <a href=\"https://en.wikipedia.org/wiki/MaxDB\" target=\"_blank\" rel=\"noopener noreferrer\">MaxDB</a> (moteur SAP, héritage de l’écosystème applicatif de l’époque).</p>"
},
{
"title": "Évolution SI — SQL actif-actif (Galera, ProxySQL) et stockage (S3, Ceph)",
"html": true,
"body": "<p>Plus tard dans l’<strong>évolution du système d’information</strong>, pour des architectures <strong>plus solides et plus performantes</strong>, nous avons étudié la mise en place de <strong>SQL actif-actif</strong> : notamment des <strong>clusters MySQL Galera</strong> avec <strong>ProxySQL</strong> en couche d’accès : <a href=\"https://proxysql.com/\" target=\"_blank\" rel=\"noopener noreferrer\">ProxySQL</a>.</p><p>Nous avons aussi étudié les <strong>futures solutions de stockage</strong> : <strong>stockage objet</strong> exposé via le <strong>protocole S3</strong>, et <strong>installation de clusters Ceph</strong>.</p>"
},
{
"title": "Conteneurs et orchestration (Docker, Kubernetes, Rancher)",
"html": true,
"body": "<p>Nous avons évidemment commencé à <strong>migrer</strong> et à <strong>déployer des applications sous conteneurs</strong> avec <strong>Docker</strong>, et à étudier l’<strong>orchestration</strong> avec <strong>Kubernetes</strong> ; la <strong>première approche</strong> est passée par <strong>Rancher</strong> : <a href=\"https://www.rancher.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Rancher</a>.</p>"
},
{
"title": "Intégration continue — Jenkins, Git, Ansible",
"html": true,
"body": "<p>Nous avons aussi mis en place des <strong>solutions d’intégration continue</strong> — ou du moins les <strong>socles</strong> pour les porter : installation de <strong>Jenkins</strong> (<a href=\"https://www.jenkins.io/\" target=\"_blank\" rel=\"noopener noreferrer\">Jenkins</a>) <strong>branché</strong> sur <strong>Git</strong>, et les <strong>premiers playbooks Ansible</strong>.</p>"
},
{
"title": "Automatisation et industrialisation (Go, JavaScript, React)",
"html": true,
"body": "<p>Sur les volets <strong>automatisation</strong> et <strong>industrialisation</strong>, j’ai réalisé des <strong>développements</strong> en <strong>Go</strong>, en <strong>JavaScript</strong> et avec le framework <strong>React</strong> : <a href=\"https://react.dev/\" target=\"_blank\" rel=\"noopener noreferrer\">React</a>.</p>"
},
{
"title": "Supervision et alertes sur les journaux (Nagios, Centreon, Prometheus / Grafana, Graylog, Elastic)",
"html": true,
"body": "<p>Le socle de <strong>supervision</strong> était d’abord <strong>Nagios</strong>. Nous avons ensuite <strong>migré vers Centreon</strong>, puis, plus tard, vers une stack <strong>Prometheus</strong> et <strong>Grafana</strong> — en complément de <strong>Centreon</strong> (cohabitation et périmètres selon les besoins). Nous avons aussi exploré les <strong>alertes basées sur les logs</strong> avec <strong>Graylog</strong> : <a href=\"https://graylog.org/\" target=\"_blank\" rel=\"noopener noreferrer\">Graylog</a> — gestion centralisée des journaux et corrélation pour l’exploitation.</p><p>La création de <strong>tableaux de bord</strong> avec <strong>Grafana</strong> a permis de <strong>compléter</strong> les tableaux de bord <strong>techniques</strong> par un tableau de bord <strong>technico-fonctionnel</strong> de <strong>production</strong>.</p><p>À l’<strong>INPI</strong>, nous avons aussi utilisé l’écosystème <strong>Elastic</strong> autour d’<strong>Elasticsearch</strong> pour <strong>centraliser les logs applicatifs</strong>, avec <strong>Logstash</strong> (pipelines) et les <strong>modules Filebeat</strong> pour la collecte : <a href=\"https://www.elastic.co/elastic-stack\" target=\"_blank\" rel=\"noopener noreferrer\">Elastic Stack</a>.</p>"
},
{
"title": "Agents et métrologie Java — Tomcat, JMX",
"html": true,
"body": "<p>Au niveau des <strong>agents</strong> et de l’exposition des métriques applicatives : une grande partie du parc était en <strong>Java</strong> servie par <strong>Apache Tomcat</strong> (dont <strong>Tomcat 4</strong> sur une partie du périmètre à l’époque). Nous avons utilisé le <strong>protocole JMX</strong> (<em>Java Management Extensions</em>) pour superviser et instrumenter les JVM et les composants serveur : <a href=\"https://docs.oracle.com/javase/tutorial/jmx/\" target=\"_blank\" rel=\"noopener noreferrer\">Oracle — tutoriel JMX</a>.</p>"
},
{
"title": "Proactivité — jobs de vérification Selenium (production)",
"html": true,
"body": "<p>Pour <strong>renforcer la proactivité</strong> sur la <strong>résolution d’incidents</strong>, nous avons mis en place des <strong>jobs de vérification</strong> avec <strong>Selenium</strong> : <a href=\"https://www.selenium.dev/\" target=\"_blank\" rel=\"noopener noreferrer\">Selenium</a>, afin de <strong>tester automatiquement les services en production</strong> (parcours critiques / contrôles de bout en bout).</p>"
},
{
"title": "Sécurité — Cyberwatch",
"html": true,
"body": "<p><strong>À l’INPI</strong>, <strong>dans le cadre du CODIR informatique</strong>, <strong>j’ai lancé le projet d’installation de <a href=\"https://www.cyberwatch.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Cyberwatch</a></strong> pour <strong>améliorer la sécurité des installations Linux</strong> : gestion des vulnérabilités et contrôle de conformité sur le système d’information. L’établissement a été <strong>parmi les premiers</strong> à déployer la plateforme.</p><p>J’ai <strong>accompagné</strong> ce déploiement pour la <strong>conformité</strong> vis-à-vis des <strong>référentiels de sécurité</strong> (cartographie des exigences, preuves et suivi des écarts).</p>"
},
{
"title": "Infrastructure, salles informatiques et PRI / PRA (VMware Site Recovery)",
"html": true,
"body": "<p>Au niveau de l’<strong>infrastructure</strong>, nous avons <strong>migré de salles informatiques à trois reprises</strong> pour <strong>toute la production</strong>.</p><p>Après ces chantiers, la <strong>sécurité et la continuité d’exploitation</strong> se sont largement appuyées sur la <strong>virtualisation VMware</strong>, en particulier sur la capacité à déplacer ou répliquer les <strong>machines virtuelles</strong> d’un <strong>datacenter à un autre</strong> via <strong>VMware Site Recovery Manager</strong> : <a href=\"https://www.vmware.com/products/site-recovery-manager.html\" target=\"_blank\" rel=\"noopener noreferrer\">VMware — Site Recovery Manager</a> (PRA / réplication inter-sites).</p><p><strong>C’est moi qui ai mis en place</strong> le dispositif de <strong>plan de reprise informatique</strong> (<strong>PRI</strong>) et le volet <strong>PRA</strong> associé, avec <strong>VMware Site Recovery Manager</strong> : <strong>mise à jour du tableau de production</strong> (inventaire et criticité), définition de l’<strong>ordre d’importance</strong> des systèmes pour les bascules, et arbitrage sur ce qui devait être <strong>intégré pleinement au PRA</strong> (réplication, orchestration avec Site Recovery) ou <strong>laissé hors périmètre</strong>.</p>"
},
{
"title": "SAN — hôtes physiques et accès (iSCSI, Fibre Channel, NFS)",
"html": true,
"body": "<p>À l’<strong>INPI</strong>, j’ai dû <strong>piloter le lien</strong> entre les <strong>hôtes physiques</strong> et le <strong>SAN</strong>. Plusieurs technologies ont été mises en œuvre : <strong>iSCSI</strong> sur <strong>câble Ethernet</strong>, <strong>Fibre Channel</strong>, et <strong>NFS</strong> pour les usages adaptés au partage de fichiers sur le réseau.</p><p>J’ai aussi eu l’occasion d’exploiter des <strong>SAN HP</strong>, notamment des baies <strong>HP 3PAR</strong> : <a href=\"https://www.hpe.com/fr/fr/storage/3par.html\" target=\"_blank\" rel=\"noopener noreferrer\">HPE 3PAR</a>. Pour le <strong>plan de reprise informatique</strong> (<strong>PRI</strong>) avec <strong>VMware Site Recovery Manager</strong>, il était indispensable que le <strong>stockage</strong> soit <strong>compatible</strong> avec la réplication et l’orchestration inter-sites VMware.</p>"
},
{
"body": "MCO de larges parcs Linux (+500 VMs en phase mature) : CentOS, Red Hat, SUSE ; supervision : évolution Nagios → Centreon → Prometheus/Grafana (avec Centreon en complément) ; alerting logs (Graylog, Elasticsearch / Logstash / Filebeat) ; intégration Apache, Tomcat, PHP, MySQL/Galera, MaxDB, Oracle ; Dollar Universe ; automatisation (bash, Python, Go, Java, PHP, Selenium, AutoIt, Node, React) ; stockage NFS, SAN HP 3PAR, Ceph, NetApp, Samba ; support niveau 2."
},
{
"title": "Projets",
"body": "Virtualisation VMware vSphere 5.5, PRA (VMware Site Recovery Manager, réplication inter-datacenters), évolution stockage (Ceph, Cassandra, S3), Puppet et Ansible, réflexion cloud / conteneurs / OpenStack, trois migrations de salles informatiques pour la production."
},
{
"title": "Synthèse du périmètre — Linux, mise en production, scripts",
"html": true,
"body": "<p>Mon travail à l’<strong>INPI</strong> m’a permis d’intervenir sur un <strong>large périmètre</strong> : <strong>installation</strong> et <strong>maintenance</strong> des <strong>machines physiques</strong> ; <strong>hébergement</strong> via la <strong>virtualisation</strong> ; <strong>infrastructure de stockage</strong> ; puis <strong>installation</strong> et <strong>MCO</strong> des <strong>services en production</strong> — complété par les <strong>choix et évolutions</strong> du socle <strong>Linux</strong>, les <strong>mises en production</strong>, les <strong>retours arrière</strong> et les <strong>scripts d’exploitation</strong> pour le run (dans un SI où Unix et autres environnements coexistaient encore).</p><p>Sur la <strong>chronologie</strong>, nous avions déjà <strong>réussi l’ensemble</strong> de l’<strong>automatisation</strong> et de la <strong>normalisation</strong> du périmètre <strong>avant</strong> l’arrivée d’<strong>Ansible</strong> et de <strong>Puppet</strong>, qui sont venus ensuite <strong>compléter</strong> le dispositif.</p><p>Mon expérience à l’<strong>INPI</strong> m’a permis de consolider une <strong>expérience validée et profonde</strong> de la <strong>production informatique</strong> sur des <strong>environnements critiques</strong>. J’y ai porté une attention particulière aux <strong>bonnes pratiques</strong> pour <strong>conduire les mises en production</strong> : préparation poussée et <strong>plans de retour arrière</strong> systématiques.</p>"
},
{
"title": "Contexte (chronologie)",
"body": "Agence publique, DSI ~40 agents, +500 postes Windows. Production applicative Java/PHP, Apache, MySQL ; administration SUSE, Red Hat ; +20 hôtes ESX (HP DL560) ; Dollar Universe, scripts Bash/Python ; 3 baies SAN HP 3PAR (~180 To) ; deux salles (production et développement). Assistance aux projets technico-fonctionnels, migration vers VMware, PRA, normalisation de l'infrastructure."
}
]
},
{
"sortOrder": 6,
"period": "2007 — 2010",
"location": "Saint-Cloud",
"role": "高级支持顾问与集成工程师",
"organization": "Sungard 集团 — Global Portfolio 3 / 资产管理(Neoxam)",
"highlights": [
{
"tag": "Global Portfolio 3 (GP3)",
"title": "法国资产管理领域的近乎垄断",
"body": "旗舰产品的客户名单包括:Société Générale、Crédit Agricole、Banque Populaire 网络、Caisse des dépôts、State Street、Allianz、MMA、CNP Assurances,加之已大规模部署 GP3 的 CACEIS、Natixis、Covéa、CM-CIC 等 — 覆盖法国与海外。这是与金融机构高要求接触的稀缺机会。"
},
{
"tag": "OpenVMS · runtime Unix",
"title": "VMS 遗产向 Unix 移植",
"body": "GP3 历史上运行于 OpenVMS;为了在 Unix 上销售,专用 runtime 让 VMS 代码与界面能在 HP-UX、Solaris、AIX、Linux 上运行。如今鲜有工程师还做过此类迁移。"
},
{
"tag": "Bamboo · SVN",
"title": "Git 时代之前的持续集成",
"body": "我们是最早用 Atlassian Bamboo 工业化 CI 的团队之一,源代码托管在 Subversion,在 Red Hat、AIX 与 Solaris 上做精细化质量验证。这是早于 Jenkins/Git 普及的 CI 经验。"
},
{
"tag": "Méthode d’analyse d’incidents",
"title": "关键环境中的复杂诊断",
"body": "处理难以定位的事件:file descriptor 耗尽、由网络团队悄悄加入的 HTTP 代理修改流量等等 — 且无法直接访问生产。这是真正的专家支持训练场。"
}
],
"sections": [
{
"html": true,
"body": "<p>Après l’expérience à l’UCAD, mission chez Sungard (une partie de l’offre GP3 existe aujourd’hui sous la marque Neoxam) : produit phare <strong>Global Portfolio 3</strong> (GP3), solution de gestion d’actifs (asset management) pour banques et assureurs. Part très importante du marché : en France, la quasi-totalité des banques et assureurs actifs en asset management utilisaient la solution ; clients aussi à l’étranger (États-Unis, Allemagne, perspective internationale incluant la Chine à l’époque). Société d’environ 500 salariés, déploiements Unix (HP, AIX, Solaris, Linux…).</p><p>Mon travail chez <strong>Sungard</strong> m’a appris à intervenir sur des <strong>environnements critiques</strong> dans un <strong>contexte à forte pression</strong> (exigence des acteurs financiers, délais serrés, enjeux de production).</p>"
},
{
"title": "Références clients (exemples)",
"body": "Parmi les clients ou périmètres côtoyés chez Sungard, notamment : Société Générale, Crédit Agricole, Banque Populaire, Caisse des dépôts, State Street, Allianz, MMA, CNP Assurances, ainsi que CACEIS, Natixis, Covéa, CM-CIC (Crédit Mutuel / CIC) et d’autres grands comptes asset management — liste non exhaustive, selon missions et filiales."
},
{
"title": "Projets transverses, filiales & messagerie (JMS)",
"body": "Référent sur les projets transverses : Sungard était un groupe possédant plusieurs filiales, dont une SSII — Décalog (services / intégration). Ces projets mobilisaient plusieurs entités pour faire circuler des informations entre logiciels métiers, en s’appuyant notamment sur des bus de messagerie et des mécanismes de type JMS (Java Message Service)."
},
{
"title": "International & mobilité",
"body": "Collaboration avec des correspondants allemands et déplacement professionnel en Allemagne — premier déplacement à l’étranger dans ce cadre. La société ambitionnait aussi de se développer sur des marchés internationaux, en particulier la Chine. Aux États-Unis, périmètres incluant notamment State Street (banque / services financiers)."
},
{
"title": "Produit : héritage VMS, portage Unix, Java & Tomcat",
"html": true,
"body": "<p>La base historique reposait sur <strong>OpenVMS</strong>. Pour poursuivre la vente sur Unix, l’éditeur avait mis en place un <strong>runtime</strong> / socle d’exécution permettant d’héberger code et composants issus du monde VMS sur Unix. Développement surtout sous <strong>Linux</strong>, puis compilation et livraison vers les plateformes clients <strong>HP-UX</strong>, <strong>Solaris</strong>, <strong>AIX</strong>. Les services étaient exposés via <strong>Apache Tomcat</strong> ; une couche <strong>Java</strong> reprenait les anciens écrans, frames et masques « verts » VMS pour une interface Java. Pile effective : <strong>Java</strong>, <strong>Python</strong>, avec prolongement du patrimoine <strong>VMS</strong>.</p>"
},
{
"title": "Intégration, support applicatif & Atlassian",
"html": true,
"body": "<p>Première expérience structurante en intégration logicielle et support applicatif : montée en compétence sur la résolution d’incidents applicatifs en environnement client critique. Avant Jira, le suivi des anomalies et demandes s’appuyait sur <a href=\"https://mantisbt.org/\" target=\"_blank\" rel=\"noopener noreferrer\">MantisBT</a> (bug tracker open source). Ensuite, passage à la suite Atlassian en premières versions — Jira, Confluence et Bamboo — pour piloter le cycle de vie du produit, la documentation et les recettes.</p>"
},
{
"title": "SVN, Bamboo & qualification plateformes",
"body": "À l’époque, Git n’était pas encore l’outil de référence dans nos chaînes — le source était versionné avec Subversion (SVN). L’équipe était parmi les premières à industrialiser de l’intégration continue via Bamboo, en particulier pour enchaîner la recette qualité. Les builds étaient qualifiés sur des plateformes très précises — Red Hat Enterprise Linux, IBM AIX, Oracle Solaris — avec des versions majeures et mineures du système strictement cadrées."
},
{
"title": "Performance applicative",
"body": "Périmètre personnel sur les sujets de performance du logiciel : lorsque le client constatait des lenteurs ou que « le logiciel était trop lent », j’étais chargé du diagnostic et du traitement de ces dossiers. J’avais défini une méthode d’analyse structurée pour investiguer (reproduction, mesures, identification des goulots d’étranglement, pistes de correction côté applicatif et plateforme)."
},
{
"title": "Diagnostics difficiles — file descriptors, proxy HTTP (réseau)",
"html": true,
"body": "<p>Chez <strong>Sungard</strong>, il a fallu traiter des problèmes <strong>difficiles à détecter et à localiser</strong> — par exemple des incidents liés aux <strong>file descriptors</strong> sur des <strong>composants fortement sollicités</strong>, ou une <strong>modification du flux HTTP</strong> par un <strong>proxy</strong> ajouté par une <strong>équipe réseau</strong> dans un <strong>environnement critique</strong>, avec peu d’indices applicatifs visibles immédiatement.</p>"
},
{
"title": "Outillage d’analyse & automatisation",
"body": "Pour outiller les analyses (performance et autres investigations), scripts en Python et en shell ; développement de tableaux de bord avec Django. Automatisation de traitements sur documents en VBA (Visual Basic for Applications), puis passage à VB.NET pour fiabiliser et faire évoluer ces chaînes."
},
{
"title": "Support & contraintes d’exploitation",
"html": true,
"body": "<p>Poste très exigeant : équipe support sous forte pression, sans accès systématique à la production — il fallait donc cerner un problème au mieux à partir d’informations partielles pour orienter et dépanner les équipes d’exploitation. Rythme soutenu. Les intégrations et livraisons vers la production restaient particulièrement délicates.</p><p>Nous avons dû <strong>mettre en place des méthodes d’analyse d’incidents</strong> : <strong>communication</strong> avec le <strong>client</strong>, <strong>analyse des journaux</strong>, <strong>vérifications minutieuses</strong> — nous sommes ainsi devenus de véritables <strong>experts support</strong>.</p>"
},
{
"title": "Missions",
"body": "Intégration des composants sur Unix ; support et TMA auprès des banques et assurances ; outils de support (VB .NET, Python) ; participation aux projets inter-filiales et aux nouvelles versions."
}
]
},
{
"sortOrder": 7,
"period": "2006 — 2007",
"location": "Paris",
"role": "信息工程师",
"organization": "UCAD — Union centrale des arts décoratifs(博物馆)",
"highlights": [
{
"tag": "LTSP · PXE · diskless",
"title": "瘦客户端 — Linux Terminal Server(LTSP)",
"body": "使用 LTSP 项目(Linux Terminal Server Project,ltsp.org):瘦客户端通过网络从服务器上的镜像启动 — 配合 PXE、按 MAC 区分的配置、无盘工作站和 NFS 挂载。非常适合把低配硬件回收为简单终端。"
},
{
"tag": "DD-WRT · Linksys WRT54G",
"title": "Wi-Fi 路由器上的自由固件",
"body": "用 DD-WRT 替换 Linksys WRT54G 的厂商固件 — 网络社区的经典自由项目 — 提升运维能力并简化博物馆 Wi-Fi 维护。"
},
{
"tag": "Compilation noyau Linux",
"title": "对系统的端到端把控",
"body": "通过反复编译内核,让 Linux 跑在「将就」的硬件上:特定驱动、裁剪(CPU、RAM、磁盘)。在今天已是极为稀缺的能力。"
},
{
"tag": "GLPI · OCS Inventory",
"title": "为完整资产清单开发的自定义插件",
"body": "在 GLPI 与 OCS Inventory 早期开发了一款插件,将 OCS 上报喂给 GLPI — 在开源 ITSM 成为标准之前的先行者。"
}
],
"sections": [
{
"body": "Institution muséale, +300 salariés. Parc mixte : postes de travail Windows et postes Linux ; serveurs Linux (production Debian, etc.) et stack Windows/Novell. Pas encore d’Active Directory : l’institution reposait sur Novell, dont l’annuaire (NDS / eDirectory) centralisait utilisateurs et ressources — l’équivalent fonctionnel antérieur à l’écosystème AD dans ce type d’infrastructure. MCO serveurs Windows et Novell, Solaris ; support bureautique niveau 1 et production niveau 2."
},
{
"title": "Contexte — recyclage Windows → Linux",
"html": true,
"body": "<p>Pour <strong>revenir en arrière</strong> à l’époque où j’étais à l’<strong>UCAD</strong>, l’un des points les plus <strong>remarquables</strong> était le <strong>recyclage</strong> des anciennes machines <strong>abandonnées</strong> ou jugées <strong>obsolètes sous Windows</strong> : les nouvelles générations de Windows <strong>exigent toujours plus</strong> de puissance, alors que des installations sous <strong>Linux</strong> permettaient de <strong>réutiliser le matériel existant</strong> et de prolonger le service <strong>à moindre frais</strong>.</p><p>Expérience marquante dans l’ensemble du mandat : remettre à niveau un parc longtemps délaissé avec très peu de moyens ; les alternatives <strong>open source</strong> ont aussi permis de remplacer des logiciels propriétaires à coût de licence quasi nul, tout en évitant de mettre au rebut du matériel encore exploitable.</p>"
},
{
"title": "Site distant & portables recyclés",
"body": "Avec des budgets serrés, il fallait optimiser tout le parc et recycler au maximum. Les portables étaient encore très chers ; peu de collaborateurs en avaient un — le standard restait la tour sous le bureau. Pour équiper un site distant et permettre aux équipes de réaliser des inventaires dans les réserves du musée, nous avons récupéré d’anciens ordinateurs portables, à peine assez puissants pour faire tourner Linux avec une stack graphique légère (X11), puis le client Citrix pour accéder aux applications métier en mode bureau distant. L’association Linux + Citrix permettait de donner au personnel une expérience de poste de travail exploitable avec très peu de ressources locales."
},
{
"title": "Debian, noyau & pilotes (matériel recyclé)",
"html": true,
"body": "<p>Pour <strong>arriver à ce résultat</strong> (fait tourner des machines « bout de course » sous Linux), il a fallu <strong>maîtriser l’ensemble des composantes</strong> du système Linux et, au premier chef, la <strong>compilation du noyau</strong> : <strong>itérations</strong> successives — compiler <strong>encore et encore</strong> jusqu’à obtenir une installation <strong>suffisante</strong> (stable et utilisable) sur le matériel cible.</p><p>Un <strong>effort considérable</strong> est aussi allé à la <strong>compatibilité matérielle</strong> : le support n’était pas encore homogène comme aujourd’hui, peu de pilotes vraiment génériques dans les noyaux standards ; traque de pilotes adaptés, <strong>recompilation</strong> pour du matériel très spécifique, et recompilation pour <strong>alléger</strong> le noyau (RAM, CPU, disque) en retirant les modules inutiles. Base essentiellement <strong>Debian</strong>.</p><p>À l’époque, je m’étais beaucoup appuyé sur la <strong>documentation</strong> et la <strong>formation</strong> qu’<strong>Alexis Delattre</strong> mettait <strong>librement</strong> à disposition sur Internet : <a href=\"https://linux.bouzzi.com/fichiers/FormationLinux.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Formation Linux (PDF) — linux.bouzzi.com</a>.</p>"
},
{
"title": "Affichage graphique — interfaces et configurations optimisées",
"html": true,
"body": "<p>À l’<strong>UCAD</strong>, j’ai aussi dû <strong>étudier</strong> les <strong>interfaces graphiques</strong> — ou du moins <strong>toute la chaîne de composants</strong> nécessaire à l’<strong>affichage graphique</strong> sous Linux — puis <strong>choisir</strong> et <strong>configurer</strong> les combinaisons les plus <strong>optimisées</strong> possibles pour qu’elles restent <strong>tenables sur du matériel peu puissant</strong> (parc recyclé), tout en restant compatibles avec l’usage bureautique.</p>"
},
{
"title": "Contrôle et bureau à distance (VNC, RDP, NX Server)",
"html": true,
"body": "<p>J’ai aussi dû <strong>étudier</strong> les solutions de <strong>contrôle à distance</strong> et de <strong>bureau à distance</strong> : <strong>VNC</strong>, <strong>RDP</strong> (Remote Desktop Protocol) et <strong>NX Server</strong> / <a href=\"https://www.nomachine.com/\" target=\"_blank\" rel=\"noopener noreferrer\">NoMachine (NX)</a> — pour l’assistance, l’accès aux postes distants et l’exploitation d’un parc <strong>Windows / Linux</strong> hétérogène.</p>"
},
{
"title": "Compilation depuis les sources (Apache, SSL, modules)",
"body": "Il n’était pas rare de devoir compiler nous-mêmes des logiciels plutôt que de nous limiter aux paquets fournis : pour plusieurs briques, le packaging n’était pas encore assez abouti. C’était souvent le cas pour les serveurs Apache, les bibliothèques SSL/TLS et les différents modules Apache associés (mod_ssl, etc.)."
},
{
"title": "Proxy Squid et miroir local de paquets (Apache)",
"html": true,
"body": "<p>À l’<strong>UCAD</strong>, j’avais installé un <strong>serveur proxy Squid</strong> : <a href=\"http://www.squid-cache.org/\" target=\"_blank\" rel=\"noopener noreferrer\">Squid</a> — pour sécuriser et fluidifier les accès Internet lors des <strong>installations de logiciels</strong>. Nous utilisions en parallèle un <strong>miroir local</strong> des <strong>paquets</strong> d’installation, exposé sous <strong>Apache</strong> (<a href=\"https://httpd.apache.org/\" target=\"_blank\" rel=\"noopener noreferrer\">HTTP Server</a>), afin de limiter la bande passante sortante et d’accélérer les déploiements sur le parc.</p>"
},
{
"title": "Sauvegardes",
"html": true,
"body": "<p>La sauvegarde sur <strong>bande</strong> était assurée par <a href=\"https://www.bacula.org/\" target=\"_blank\" rel=\"noopener noreferrer\">Bacula</a> (pools, jobs, lecteurs…). La sauvegarde sur <strong>disque</strong> reposait sur <a href=\"https://backuppc.github.io/backuppc/\" target=\"_blank\" rel=\"noopener noreferrer\">BackupPC</a> — solution libre de sauvegardes incrémentelles vers stockage disque, complémentaire à la partie magnétique.</p>"
},
{
"title": "Messagerie",
"html": true,
"body": "<p>Le socle messagerie : <strong>Postfix</strong> (MTA) avec accès <strong>IMAP</strong> pour les clients lourds, et <strong>webmail</strong> via <a href=\"https://www.squirrelmail.org/\" target=\"_blank\" rel=\"noopener noreferrer\">SquirrelMail</a> pour l’accès dans le navigateur.</p>"
},
{
"title": "Périmètre réseau (Linux & iptables)",
"body": "Il n’y avait pas encore d’appliance pare-feu dédiée : une machine Linux tenait lieu de pare-feu ; la configuration passait par iptables pour filtrer et piloter l’ensemble du trafic réseau du musée."
},
{
"title": "DNS (BIND)",
"html": true,
"body": "<p>Le service DNS était assuré par <strong>BIND</strong> (<a href=\"https://www.isc.org/bind/\" target=\"_blank\" rel=\"noopener noreferrer\">Berkeley Internet Name Domain</a>), tel que maintenu par l’ISC.</p>"
},
{
"title": "Wi-Fi : Linksys WRT54G & DD-WRT",
"html": true,
"body": "<p>Pour l’accès sans fil, utilisation de routeurs <a href=\"https://fr.wikipedia.org/wiki/WRT54G\" target=\"_blank\" rel=\"noopener noreferrer\">Linksys WRT54G</a>. Pour maximiser la capacité d’exploitation et simplifier la maintenance, le firmware constructeur a été remplacé par le projet libre <a href=\"https://fr.wikipedia.org/wiki/DD-WRT\" target=\"_blank\" rel=\"noopener noreferrer\">DD-WRT</a>.</p>"
},
{
"title": "Sécurité, recyclage : LTSP, PXE & postes diskless",
"html": true,
"body": "<p>Pour les <strong>postes légers</strong>, je m’étais notamment appuyé sur <strong>LTSP</strong> — <a href=\"https://ltsp.org/\" target=\"_blank\" rel=\"noopener noreferrer\">Linux Terminal Server Project</a> — qui permet de faire démarrer les clients sur le LAN depuis une <strong>installation modèle</strong> sur le serveur (image/chroot), avec iPXE, DHCP/TFTP et root en squashfs/NFS : entretenir des dizaines de stations diskless comme un seul poste.</p><p>J’ai aussi <strong>étudié et mis en place</strong> le <strong>boot à distance</strong> via <strong>PXE</strong> et des déploiements <strong>diskless</strong> (sans disque dur local) : on <strong>manquait souvent de disques</strong> sur le matériel récupéré, et ce modèle permettait de n’avoir côté poste que de <strong>simples terminaux</strong> — système et données servis depuis l’infrastructure centrale.</p><p>Chaîne PXE opérationnelle (menu de boot, profils par <strong>adresse MAC</strong>, redéploiement à distance) pour <strong>sécuriser la remise en service</strong> du parc et prolonger le <strong>recyclage</strong> ; montages d’arborescences via <strong>NFS</strong> pour les postes diskless.</p>"
},
{
"title": "Matériel, vidéo et kiosques",
"html": true,
"body": "<p>Le parc n’était pas très puissant : les machines les plus récentes étaient des <strong>Intel Pentium 4</strong>, à peine suffisantes pour la lecture vidéo. On travaillait surtout en <strong>MPEG-1</strong> et <strong>MPEG-2</strong> ; le H.264 / MP4 n’était pas encore la norme sur ce type de poste.</p><p><a href=\"http://www.videolan.org/\" target=\"_blank\" rel=\"noopener noreferrer\">VideoLAN</a> existait déjà, mais n’était pas le plus léger sur ce matériel. Le lecteur le plus frugal et optimisé pour nos usages était <a href=\"http://www.mplayerhq.hu/design7/news.html\" target=\"_blank\" rel=\"noopener noreferrer\">MPlayer</a>.</p><p>Dans les salles du musée, <strong>kiosques</strong> sur mesure : postes <strong>Linux</strong> lançant un navigateur (affichage plein écran), avec verrouillage des <strong>touches de fonction</strong> et des raccourcis pour empêcher l’utilisateur de sortir du parcours prévu. Postes dédiés à la lecture vidéo et autres dédiés à l’affichage de sites <strong>intranet</strong>.</p>"
},
{
"title": "Gestion des collections (Mobidoc)",
"body": "Pour la gestion des œuvres et du fonds muséal, le logiciel métier était Micro Musée, édité par la société Mobidoc ; à l’époque, aucun équivalent open source ne permettait de couvrir le besoin de façon satisfaisante."
},
{
"title": "Déploiement & migrations",
"html": true,
"body": "<p>Les déploiements couvraient le poste Windows (réinstallation massive sous délais serrés) et la partie Linux du parc (postes et serveurs). Pour Windows, l’habitude était l’image disque avec <strong>Symantec Ghost</strong> et des masters sur l’infrastructure Novell — peu souple. Nous avons expérimenté <a href=\"https://unattended.sourceforge.net/\" target=\"_blank\" rel=\"noopener noreferrer\">Unattended</a> pour des installations automatisées et paramétrables, en complément des méthodes rigides par clone.</p><p>Première expérience marquante en <strong>automatisation</strong> : les chaînes Unattended reposaient sur de nombreux scripts mélangeant <strong>shell</strong>, <strong>Perl</strong> et <a href=\"https://www.autoitscript.com/site/\" target=\"_blank\" rel=\"noopener noreferrer\">AutoIt</a> — langage dédié au pilotage de l’interface Windows (fenêtres, frappes clavier, mouvements de souris) pour fiabiliser les installations, en parallèle de la préparation de <strong>paquets MSI</strong> et de déploiements silencieux.</p><p>Côté bureautique et fichiers : migration vers Samba pour le partage (Windows XP / NT4 / 2000), cohabitant avec l’annuaire Novell ; rationalisation des lecteurs CD.</p><p>Les débuts de <strong>GLPI</strong> et de l’<strong>OCS Inventory</strong> (serveur) sur le site : réalisation d’un <strong>plugin</strong> pour alimenter GLPI à partir des remontées OCS, ce qui a permis d’obtenir un <strong>inventaire complet</strong> et exploitable de tout le parc.</p><p>À l’époque, peu d’institutions avaient encore généralisé un <strong>système de tickets</strong> pour les incidents ; il a été décidé d’adopter <a href=\"https://www.request-tracker.fr/\" target=\"_blank\" rel=\"noopener noreferrer\">Request Tracker (RT)</a>, logiciel libre de gestion d’incidents et de suivi d’actions.</p>"
},
{
"title": "Documentation",
"html": true,
"body": "<p>La documentation technique et procédurale a été rédigée en <strong>LaTeX</strong> (<a href=\"https://www.latex-project.org/\" target=\"_blank\" rel=\"noopener noreferrer\">LaTeX Project</a>), pour des livrables structurés, révisables et export PDF.</p>"
}
]
},
{
"sortOrder": 1.5,
"period": "临时项目(2024 — 2025)",
"location": "France",
"role": "支持型任务",
"organization": "Enedis、Fayat IT",
"highlights": [
{
"tag": "Linux temps réel",
"title": "为 Enedis 设计的测试床",
"body": "为 Enedis 设计测试床,验证 Linux 与实时应用之间的链路 — 在法国电网运营商内部是相当尖锐的话题。"
},
{
"tag": "Migration Linux → Windows",
"title": "Fayat IT:Linux → Windows 反向迁移",
"body": "罕见的工作:将一款软件从 Linux 迁移到 Windows — 与常见方向相反,需要对两边都有细致理解。"
}
],
"sections": [
{
"title": "Enedis — janv. 2025",
"html": true,
"body": "<p>Conception d’un <strong>banc d’essai</strong> pour des <strong>logiciels temps réel</strong> : vérification du <strong>chaînage</strong> entre <strong>Linux</strong> et l’<strong>application temps réel</strong>.</p>"
},
{
"title": "Fayat IT — janv. 2024",
"html": true,
"body": "<p>Intervention sur la <strong>migration d’un logiciel</strong> de l’environnement <strong>Linux</strong> vers <strong>Windows</strong>.</p>"
}
]
},
{
"sortOrder": 1.55,
"period": "自 2005 年起",
"location": "France",
"role": "信息技术支持(家族企业)",
"organization": "RYC — 企业辅助",
"highlights": [
{
"tag": "n8n · Claude API",
"title": "用于文档处理的 AI 智能体",
"body": "通过 n8n 编排并调用 Claude(Anthropic)API 的 AI 智能体,对发票与附件进行分类、识别与处理 — 远超会计师事务所的常规办公自动化。"
},
{
"tag": "Ollama · Mistral",
"title": "在小微企业落地的本地 LLM 推理",
"body": "首次在生产中通过 Ollama 部署两款基于 Mistral LLM 的本地推理。在法国,极少有小微企业转向本地化的主权 AI。"
},
{
"tag": "Sage Coala · Samba",
"title": "20 年的基础设施持续",
"body": "自 2005 年起持续维护 Windows 客户机 + Linux 服务器 + Samba 共享,承载会计软件 Coala。这是长期稳定性的实证。"
}
],
"sections": [
{
"html": true,
"body": "<p>Depuis <strong>2005</strong>, accompagnement de <strong>RYC</strong>, structure d’<strong>aide aux entreprises</strong> (conseils <strong>administratifs</strong>, <strong>précomptabilité</strong> notamment avec <strong>Sage Coala</strong>).</p><p>Appui <strong>informatique</strong> et <strong>bureautique</strong> : <strong>postes de travail Windows</strong> côté clients ; <strong>serveurs Linux</strong> pour l’infrastructure, avec <strong>partage de dossiers via Samba</strong> — le <strong>logiciel Coala</strong> tournant sur les <strong>postes Windows</strong>.</p>"
},
{
"title": "Automatisation des flux comptables",
"html": true,
"body": "<p>Depuis environ <strong>cinq ans</strong>, forte montée en <strong>automatisation</strong> : <strong>extraction automatique</strong> des <strong>relevés bancaires</strong> et <strong>intégration semi-automatique</strong> dans le logiciel comptable jusqu’à la <strong>saisie des écritures</strong> comptables.</p><p>Très récemment : <strong>extraction automatique des factures</strong> et des <strong>pièces jointes</strong> pour <strong>générer les écritures comptables</strong>, en s’appuyant aussi sur le <strong>rapprochement bancaire</strong>.</p>"
},
{
"title": "IA, agents et orchestration (très récent)",
"html": true,
"body": "<p>L’arrivée de l’<strong>IA</strong> a ouvert de <strong>nouvelles possibilités</strong> : conception d’<strong>agents IA</strong>, utilisation de <a href=\"https://n8n.io/\" target=\"_blank\" rel=\"noopener noreferrer\">n8n</a> pour le <strong>tri et le traitement</strong> des documents, appels d’<strong>API</strong> — notamment <a href=\"https://www.anthropic.com/claude\" target=\"_blank\" rel=\"noopener noreferrer\">Claude</a> (Anthropic) — pour la <strong>reconnaissance</strong> et l’<strong>exploitation</strong> des documents, en prolongement des automatisations existantes.</p><p>Première expérience d’<strong>inférence locale</strong> de <strong>deux modèles</strong> via <a href=\"https://ollama.com/\" target=\"_blank\" rel=\"noopener noreferrer\">Ollama</a> (exécution sur poste / serveur), sur la base des LLM <strong>Mistral</strong>.</p>"
}
]
},
{
"sortOrder": 8,
"period": "EPSI 学习期间",
"location": "Paris",
"role": "学生兼职 — IT 支持",
"organization": "DGC — 培训中心(与 EPSI 同集团)",
"highlights": [
{
"tag": "Norton Ghost · multicast",
"title": "整间教室的重灌镜像",
"body": "通过组播部署 Ghost 镜像,一次性重灌所有学生工作站(先 Windows NT 4,后 2000) — 在当时是先进的资产管理实践。"
}
],
"sections": [
{
"title": "Support et parc étudiants",
"html": true,
"body": "<p>Pendant les <strong>études à l’EPSI</strong>, job étudiant au <strong>DGC</strong>, centre de formation du <strong>même groupe</strong> que l’école.</p><p><strong>Support informatique</strong> et <strong>gestion du parc</strong> des postes dédiés aux <strong>étudiants</strong> : <strong>Windows NT 4</strong>, puis <strong>Windows 2000</strong>. Création d’<strong>images</strong> avec <strong>Ghost</strong> (Symantec / Norton Ghost) et <strong>déploiement en multicast</strong> pour re-imager régulièrement les machines ; <strong>gestion des profils Windows</strong> (nombreux incidents à traiter) ; <strong>droits</strong> et <strong>accès</strong> pour les comptes étudiants ; <strong>installation des antivirus</strong>. Prise en charge aussi de <strong>logiciels de formation</strong> / <strong>e-learning</strong> déployés sur le site.</p><p>L’occasion aussi de mettre en place <strong>Linux</strong> sur du matériel <strong>recyclé</strong> pour offrir des <strong>postes supplémentaires</strong> au service des usages du site.</p>"
}
]
}
],
"_README": "Simplified Chinese overlay over data/site.json. Mirrors FR structure (same array indices, same keys); only string values that need translation are present. Missing fields fall back to FR."
}