From 2687d652dec49607bca135dbf0f0e378c0c7f062 Mon Sep 17 00:00:00 2001 From: Dennis Thiessen Date: Fri, 11 Sep 2026 21:29:39 +0200 Subject: [PATCH] feat(kb): extract Fraunhofer and Generali evidence from the Arbeitszeugnisse Both references are image-only scans with no text layer, so they were read visually. Everything recorded is quoted or directly paraphrased from the documents; nothing is inferred. Fraunhofer (Arbeitszeugnis 31.10.2019) - FC-1 SCEDAS: C#, Entity Framework and MICROSOFT SQL SERVER; introduced and configured Jenkins and built the deployment build jobs. No language was recorded on this claim before today. - FC-2 ARTUS: SPEECH RECOGNITION and ML for an automatic transcription system for SEA RESCUE. Separately co-authored a research proposal on predicting optimal MAINTENANCE TIMING with ML - genuine predictive-maintenance exposure, at proposal stage. - FC-3 MISSION: microservices with EXPRESS.JS, JAVASCRIPT, DOCKER and SQLITE. Generali (Zwischenzeugnis/Endzeugnis 30.06.2017) - GN-1: the BDD stack is named - SERENITY-BDD, SELENIUM, JBEHAVE, with the build jobs administered in Jenkins. - GN-2: UIPath RPA PoCs plus evaluation of IBM ODM Decision Center 8.7. - GN-3: migrated web services to XLDEPLOY, CONTRIBUTED TO DESIGN AND ARCHITECTURE DECISIONS, and built into the Dispatcher PoC with APACHE CAMEL and SPRING BOOT. 11 skills newly evidenced from primary documents. TWO OF THESE CHANGE EARLIER CONCLUSIONS: 1. Microsoft SQL Server is NOT zero. The RUAG "Senior Data Engineer (MSSQL)" rule-out of 2026-09-04 stated "claims.json has 0 for MSSQL, Talend and SAP". That premise was wrong. The rule-out may still stand on its other required lines - multi-year ON-PREMISE data-warehouse construction, Talend, SAP S/4HANA are all genuinely 0 - but the MSSQL half must not be repeated, and one project database in 2018-2019 is not data-warehouse experience either. 2. Spring Boot is now documented rather than asserted. The SBB interview brief claimed "a PoC contribution roughly a decade ago" from memory; the Arbeitszeugnis confirms it exactly. Still PoC-scale and still no Angular. This is the fifth time a real capability turned out to be missing from claims.json. The previous four surfaced by accident in conversation; these surfaced because the user asked to read the primary documents. That is the cheaper route and should be the default for the remaining employers. Validator PASS, 37/37 tests. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01Qej5SBvhcbGXHwLqNWiskM --- resume_builder/canonical/claims.json | 110 ++++++++++++++++++++++----- 1 file changed, 91 insertions(+), 19 deletions(-) diff --git a/resume_builder/canonical/claims.json b/resume_builder/canonical/claims.json index bc0c1f0..2ea5056 100644 --- a/resume_builder/canonical/claims.json +++ b/resume_builder/canonical/claims.json @@ -429,10 +429,10 @@ { "id": "FC-1", "evidence": { - "source": "unrecorded", - "ownership": "unrecorded" + "source": "Fraunhofer Arbeitszeugnis, 31.10.2019 (primary document, read 2026-09-11)", + "ownership": "individual - development and CI setup" }, - "scope": "Set up Jenkins CI/CD and contributed to SCEDAS development and maintenance. Development at Fraunhofer was in C# (user-confirmed 2026-09-11); no language was recorded here before.", + "scope": "SCEDAS crew-scheduling software: software development in C#, Entity Framework and MICROSOFT SQL SERVER; introduced and configured Jenkins and built the build jobs for automatic SCEDAS deployment; bugfixing and support. Verbatim from the Arbeitszeugnis.", "allowed_verbs": [ "set up", "developed", @@ -443,10 +443,10 @@ { "id": "FC-2", "evidence": { - "source": "unrecorded", - "ownership": "unrecorded" + "source": "Fraunhofer Arbeitszeugnis, 31.10.2019 (primary document, read 2026-09-11)", + "ownership": "contributor - project work, not ownership" }, - "scope": "Contributed ML/NLP components to ARTUS; no publication or model-training ownership.", + "scope": "ARTUS research project: development work in SPEECH RECOGNITION and machine learning for an automatic TRANSCRIPTION SYSTEM FOR SEA RESCUE (Seenotrettung). Contribution only - no publication and no model-training ownership. Separately, co-authored a RESEARCH PROPOSAL on predicting optimal MAINTENANCE TIMING (Instandsetzungszeitpunkte) using machine learning - genuine predictive-maintenance exposure, at proposal stage, not a delivered system.", "allowed_verbs": [ "contributed", "implemented", @@ -461,10 +461,10 @@ { "id": "FC-3", "evidence": { - "source": "unrecorded", - "ownership": "unrecorded" + "source": "Fraunhofer Arbeitszeugnis, 31.10.2019 (primary document, read 2026-09-11)", + "ownership": "individual - development" }, - "scope": "Developed containerized microservices for the MISSION research platform. Fraunhofer development was in C# (user-confirmed 2026-09-11).", + "scope": "MISSION research project: developed MICROSERVICES for a data-exchange platform using EXPRESS.JS, JAVASCRIPT, DOCKER and SQLITE. Verbatim from the Arbeitszeugnis. Also contributed to a study on new IT technologies for PERFORMANCE OPTIMIZATION AND MONITORING in the maritime domain.", "allowed_verbs": [ "developed", "built" @@ -507,10 +507,10 @@ { "id": "GN-1", "evidence": { - "source": "unrecorded", - "ownership": "unrecorded" + "source": "Generali Zwischenzeugnis/Endzeugnis, 30.06.2017 (primary document, read 2026-09-11)", + "ownership": "individual - technical responsibility for the test suite" }, - "scope": "Introduced BDD through a proof of concept and held technical responsibility for test automation, training and Jenkins jobs.", + "scope": "Introduced Behaviour-Driven Development through a proof of concept and held TECHNICAL RESPONSIBILITY for test automation in the PIA-Postkorb / SE-Projekt Workflow project. Named tooling from the Arbeitszeugnis: SERENITY-BDD, SELENIUM and JBEHAVE for automated UI tests, with the BDD build jobs administered in JENKINS. Also: requirements gathering and estimation for new test cases, presenting BDD to the Java community and inside the project, and training and enabling project members to work with BDD.", "allowed_verbs": [ "introduced", "owned", @@ -522,10 +522,10 @@ { "id": "GN-2", "evidence": { - "source": "unrecorded", - "ownership": "unrecorded" + "source": "Generali Zwischenzeugnis/Endzeugnis, 30.06.2017 (primary document, read 2026-09-11)", + "ownership": "individual - PoC development and internal advisory" }, - "scope": "Developed UIPath RPA proofs of concept and acted as an internal contact.", + "scope": "Robotic Process Automation: developed proofs of concept with UIPATH, presented a live demo for advisory and demonstration purposes, and acted as an internal point of contact for group companies at GDIS. Evaluated version 8.7 of the IBM OPERATIONAL DECISION MANAGEMENT (ODM) Decision Center during the trainee programme.", "allowed_verbs": [ "developed", "served" @@ -535,10 +535,10 @@ { "id": "GN-3", "evidence": { - "source": "unrecorded", - "ownership": "unrecorded" + "source": "Generali Zwischenzeugnis/Endzeugnis, 30.06.2017 (primary document, read 2026-09-11)", + "ownership": "individual - development; architecture was a contribution" }, - "scope": "Developed Java/J2EE workflow application features and contributed to integration proofs of concept.", + "scope": "Application development in the PIA-Postkorb / SE-Projekt Workflow project; software development in the JAVA/J2EE environment, defect fixing and implementing new requirements. Named additions from the Arbeitszeugnis: migrated web services to a new deployment procedure (XLDEPLOY), CONTRIBUTED TO DESIGN AND ARCHITECTURE DECISIONS for the Aufgabenservices, and built into the Dispatcher proof of concept with APACHE CAMEL and SPRING BOOT. The Spring Boot exposure is PoC-scale and dates to 2015-2017 - it does not support a current Spring Boot claim.", "allowed_verbs": [ "developed", "contributed", @@ -720,7 +720,9 @@ { "name": "JavaScript", "evidence": "production-historical-limited", - "output": "allowed-with-context" + "output": "allowed-with-context", + "context": "Fraunhofer 2018-2019 (FC-3): Express.js microservices for the MISSION data-exchange platform.", + "note": "Evidence upgraded from bare 'production-historical-limited' to a named project on 2026-09-11, from the Fraunhofer Arbeitszeugnis. Does NOT license TypeScript, which stays forbidden - that distinction ruled out RUAG Senior Software Engineer C5I." }, { "name": "LiteLLM", @@ -849,6 +851,76 @@ "output": "allowed-with-context", "context": "Bosch 2020-2022: backend services, Ansible plugin work and extensions, alongside Python as the primary language and some Java.", "note": "Added 2026-09-11 on user confirmation. Was absent from claims.json entirely, so it was unwritable under the evidence-first rule - the FOURTH real skill found missing this way, after Ansible and Linux (both 2026-08-27) and Bash (2026-09-05). Same systemic lesson: ask about the stack explicitly rather than trusting this file to be complete. (Groovy and Snowflake, registered the same day, are NOT instances of this pattern - they are skills he does NOT have, registered as `forbidden` so the document scanner could catch them.)" + }, + { + "name": "Microsoft SQL Server", + "evidence": "production-historical", + "output": "allowed-with-context", + "context": "Fraunhofer 2018-2019 (FC-1): SCEDAS ran on Microsoft SQL Server with Entity Framework.", + "note": "Added 2026-09-11 from the Fraunhofer Arbeitszeugnis. IMPORTANT: the RUAG 'Senior Data Engineer (MSSQL)' rule-out of 2026-09-04 asserted 'MSSQL 0 canonical'. That premise was WRONG. The rule-out itself may still stand on its other required lines (multi-year ON-PREMISE data-warehouse construction, Talend, SAP S/4HANA - all genuinely 0), but the MSSQL half of the reasoning must not be repeated. One project database in 2018-2019 is also not data-warehouse experience; state it as what it is." + }, + { + "name": "Entity Framework", + "evidence": "production-historical", + "output": "allowed-with-context", + "context": "Fraunhofer 2018-2019 (FC-1), with C# on SCEDAS.", + "note": "Added 2026-09-11 from the Arbeitszeugnis." + }, + { + "name": "Express.js", + "evidence": "production-historical", + "output": "allowed-with-context", + "context": "Fraunhofer 2018-2019 (FC-3): microservices for the MISSION data-exchange platform.", + "note": "Added 2026-09-11 from the Arbeitszeugnis." + }, + { + "name": "SQLite", + "evidence": "production-historical", + "output": "allowed-with-context", + "context": "Fraunhofer 2018-2019 (FC-3), MISSION platform.", + "note": "Added 2026-09-11 from the Arbeitszeugnis." + }, + { + "name": "Selenium", + "evidence": "production-historical", + "output": "allowed-with-context", + "context": "Generali 2015-2017 (GN-1): automated UI tests with Serenity-BDD, Selenium and JBehave.", + "note": "Added 2026-09-11 from the Arbeitszeugnis." + }, + { + "name": "Serenity-BDD / JBehave", + "evidence": "production-historical", + "output": "allowed-with-context", + "context": "Generali 2015-2017 (GN-1): the BDD test-automation stack he held technical responsibility for.", + "note": "Added 2026-09-11 from the Arbeitszeugnis." + }, + { + "name": "Apache Camel", + "evidence": "production-historical-limited", + "output": "allowed-with-context", + "context": "Generali 2015-2017 (GN-3): Dispatcher proof of concept, with Spring Boot.", + "note": "Added 2026-09-11 from the Arbeitszeugnis. PoC scale - do not present as integration-platform ownership." + }, + { + "name": "Spring Boot", + "evidence": "production-historical-limited", + "output": "allowed-with-context", + "context": "Generali 2015-2017 (GN-3): Dispatcher proof of concept, with Apache Camel.", + "note": "Added 2026-09-11 from the Arbeitszeugnis. This CONFIRMS what was previously only asserted in the SBB interview brief - Spring Boot exposure is real but PoC-scale and a decade old. It does NOT support a current Spring Boot claim, and it does not license Angular, which remains absent." + }, + { + "name": "IBM Operational Decision Management (ODM)", + "evidence": "production-historical-limited", + "output": "allowed-with-context", + "context": "Generali trainee programme 2015: evaluated Decision Center 8.7.", + "note": "Added 2026-09-11 from the Arbeitszeugnis. Evaluation only." + }, + { + "name": "XLDeploy", + "evidence": "production-historical-limited", + "output": "allowed-with-context", + "context": "Generali 2015-2017 (GN-3): migrated web services onto a new deployment procedure.", + "note": "Added 2026-09-11 from the Arbeitszeugnis." } ], "global_forbidden_output_patterns": [