Files
dennisthiessenandClaude Opus 5 a0ec2fedb5 feat: NVIDIA Sr DevOps application, drop cohort caps, fix Workday/decision-log bugs
Scout run 2026-09-04 (36 companies, 778 eligible) plus the NVIDIA package it
surfaced, and the tooling and policy fixes found along the way.

Application
- NVIDIA Senior DevOps Engineer, Zurich (JR2024256): submitted 2026-09-05.
  Evidence Fit 64/100 Stretch, hard gate FAIL x2, channel Weak. Sent on an
  explicit user override with the working model unresolved, so hybrid-vs-onsite
  is a live screening topic. 2pp resume + 1pp cover letter, both validators
  PASS, 0 boxes, 0 Tier 1 findings open.

Policy
- Drop the 7 Core / 2 Adjacent / 1 Stretch cohort caps. They had no derivation
  and were overridden whenever they bound, and the cohort was confounded: it
  tested fit class while holding channel constant at Weak across all six
  applications. Keep the recording, drop the rationing.
- Channel replaces the slot budget as the rationed variable: no application
  goes out cold when a named contact is published and reachable.
- Propagated through shared_ops, session_file_template, cohort_tracker
  (counts, never counts-against-a-target) and application_cohort.json.

Tool fixes
- fetch_workday emitted 404 URLs for every Workday company (NVIDIA, Novartis,
  Equinor): externalPath is site-relative and needs the locale + site prefix.
  6/6 short-form 404, 3/3 long-form 200. 773 dead links repaired across 42
  archived reports.
- find_decision_url silently de-linked decisions on two boards, which is why
  ruled-out roles kept resurfacing as undecided. RUAG rotates its UUID on
  repost; BIS migrated its vacancy URL scheme, orphaning 5 decisions including
  a live application. Fixed as a two-tier match, not a slug key -- slugs
  collide (two live RUAG reqs shared one).

Knowledge base
- claims.json: add Bash / shell scripting, the third canonical gap of this
  shape after Ansible and Linux administration.
- bundle_data_platform: BS-4 was framed as a delivered observability stack over
  what claims.json calls a proof of concept -- the defect the 2026-08-21 sweep
  was told to look for.
- CLAUDE.md and AGENTS.md: correct the RUAG Data Lakehouse shortlist claim,
  which the JD does not support and which both files still asserted.
- resume_template: comment-guard the missing babel/ngerman language block.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QFb8tTCig5r1KzkQiNXcYt
2026-09-05 13:24:44 +02:00

40 KiB
Raw Permalink Blame History

Session: NVIDIA — Senior DevOps Engineer (Switzerland, Zurich)

JD Integrity

  • File/source: output/NVIDIA_SrDevOps_Zurich/JD_nvidia_sr_devops_jr2024256.txt — req JR2024256
  • Retrieval method and date: headless Playwright render via job_scout/.venv (the board is a Workday SPA; WebFetch is JS-blind), 2026-09-04. HTTP 200.
  • Verbatim posting: YES — saved unedited, not retyped from memory.
  • Posting status: LIVE. JD states "Posted 3 Days Ago" → posted ~2026-09-01. Very fresh.
  • URL note: the canonical URL requires the tenant path …/en-US/NVIDIAExternalCareerSite/job/Switzerland-Zurich/Senior-DevOps-Engineer_JR2024256. The scout's short form 404s (fixed 2026-09-04; see KB Corrections Log).

Application Decision

  • Audience profile: International Tech (US-tech conventions, English). NVIDIA is US-tech in Europe.
  • Evidence Fit: 64/100
  • Fit class: Stretch — the score lands Adjacent (60–74), but application_strategy.md requires Adjacent to have no required Gap, and Q5b is one. Defining-responsibility logic pushes it to Stretch.
  • Hard gate: FAIL — on two counts.
    1. A required qualification is a Gap: "Strong expertise in on-premises networking and compute infrastructure" (Q5b). Canonical networking evidence is zero.
    2. A practical constraint is unresolved: the JD is silent on hybrid vs onsite, and Thun→Zurich is ~1h50 each way. critique_framework.md §1 treats an unresolved location constraint as a NO-GO trigger.
  • Channel Strength: Weak — cold portal application. Would be the 7th consecutive cold submit.
  • Channel plan: cold by default. No named contact in the posting. NVIDIA Zurich is a small HPC/AI infrastructure-software site; a targeted recruiter note is the realistic warm action.
  • Cohort slot: evidence-first-2026-01 is 6/10 — Core 3/7 (4 free), Adjacent 2/2 CONSUMED, Stretch 1/1 CONSUMED. There is no free slot of the right class.
  • Decision: PROCEED — under explicit user override, 2026-09-04. This is the same shape as RUAG AI Engineer C5I (Evidence Fit 74, hard gate FAIL, user override). Recorded as an override, not as a passing gate.

⚠ One thing to resolve before Phase 2

Ask NVIDIA recruiting whether the Zurich seat is hybrid or 5-day onsite. This is the Citadel lesson, recorded verbatim in CLAUDE.md: an unresolved working model is a NO-GO trigger and must be asked, not researched. From Thun the round trip is ~3.5h; the standing bar is hybrid, max 2–3 days. Comp is not the blocker here — see Company Context — so the working model is the whole question.

Correction to the 2026-09-04 scout triage

That triage called two required lines Gaps. On canonical review only one is: Q5b networking. Q2 (10+ years of DevOps processes) is Adjacent and defensible, not a Gap — a continuous CI/CD, automation and production-operation thread runs Generali 2015 → today across five employers (~10 years of role-time containing genuine DevOps content). The honest weakness is that those roles were titled data/test/research engineer, not DevOps. That is an interview answer, not a disqualifier.

Requirements

Required — "What We Need to See"

# Requirement Req/Pref Class Canonical evidence Gate?
Q1 Bachelor's or Master's in CS, Data Science, Engineering or related Required Direct EDU-MENG M.Eng. Computer Aided Engineering (Software Design & Engineering); EDU-BENG B.Eng. Information and Telecommunication Technologies. Both Univ. der Bundeswehr München —
Q2 10+ years building and maintaining DevOps processes, strong focus on automation and reliability Required Adjacent (defensible) Continuous thread: GN-1 Jenkins jobs + test-automation ownership (2015–17) → VZ-2 quality gates wired into CI/CD (2017–18) → FC-1 set up Jenkins CI/CD (2018–19) → BS-6 Linux estate + Ansible, playbooks run from Jenkins/GitLab (2020–22) → SW-3/SW-5 Kubernetes + GitLab CI/CD, SW-2 on-call and incidents (2023–now). ~10 yrs of role-time with real DevOps content; 0 yrs of DevOps-titled work except Vizrt Watch
Q3 Solid experience with major Linux distributions (CentOS, Ubuntu, RedHat); proficient scripting in Bash, Python or Groovy Required Adjacent (near-Direct) Linux administration production-historical-and-personal: BS-6 Bosch server estate, PP-3 self-hosted Debian ~10 yrs and current. Python production-current = Direct. Named distros are 0 canonical — Debian→Ubuntu transfers almost exactly, RHEL/CentOS is the real delta. Bash not canonically listed; Groovy 0 — do not claim —
Q4 Deep understanding of Linux virtualization (QEMU/KVM, Docker) and orchestrators like Kubernetes Required Adjacent Docker production-current-and-historical = Direct. Kubernetes production-current-and-historical = Direct (SW-3, SW-7, BS-1). QEMU/KVM 0 canonical — the hypervisor half is a Gap; the container half is strong —
Q5a Hands-on experience with configuration management tools (e.g., Ansible) Required Direct BS-6 — intensive Ansible for config management and infrastructure automation, plus he wrote Ansible extensions (credential plugin pulling from a keystore with local caching). Above-average depth. Caveat: production-historical, ended Dec 2022 —
Q5b "Strong expertise in on-premises networking and compute infrastructure" Required GAP Networking: 0 canonical. On-prem compute is partly real (BS-6 Bosch server estate), but PP-3 explicitly forbids using the home server as datacenter/physical-infrastructure evidence. No switches, no fabric, no network engineering anywhere in the record FAIL
Q6 Familiarity with CI/CD tools such as Jenkins, GitHub/GitLab, Kubernetes, GitHub Actions; excellent written and verbal English Required Direct Jenkins FC-1/GN-1/BS-6; GitLab SW-3/SW-5/BS-6; Kubernetes SW-3/SW-7. The list is illustrative ("such as"), so GitHub Actions at 0 does not gate. English fluent —

Required tally: 3 Direct · 3 Adjacent · 1 Gap.

Core responsibilities

# Responsibility Class Canonical evidence
R1 Design, build, maintain robust HPC and cloud infrastructure Adjacent (split) Cloud is Direct — AWS + CloudFormation production-current, SW-1/SW-3/SW-7. HPC is 0 canonical
R2 Automate deployment/config/management of network and compute — bare metal servers, network switches, VMs Adjacent → Gap on the objects The automation is Direct (BS-6 Ansible). The objects are not: bare metal thin, switches 0, VMs 0
R3 Develop and streamline CI/CD pipelines for R&D engineering teams DIRECT — strongest match in the JD FC-1 Jenkins CI/CD at a research institute; BS-6 playbooks from Jenkins/GitLab for fab analytics/ML teams; VZ-2; GN-1; SW-3/SW-5. Serving R&D/engineering teams specifically is his actual career shape
R4 Optimize for availability, performance, observability, security, scalability, cost; integrate automated testing and QA into deployment workflows Direct on the testing half; Adjacent on optimization VZ-2 is literally "connected quality gates to CI/CD"; GN-1 BDD + test-automation ownership. Observability BS-4 (ELK/Kafka, PoC-scoped — never call it a platform). Security SW-5 + PP-3 hardening. No metric is quotable — all metrics: unverified
R5 Troubleshoot across infrastructure, networking, hardware, software Adjacent Infra/software Direct (SW-2 Component Owner: incidents, on-call, data quality). Networking and hardware: Gap

Preferred — "Ways To Stand Out"

# Item Class Note
P1 Agile DevOps teams, complex technical environments; proven ability to achieve/exceed security, reliability, scalability, availability goals Adjacent Enterprise agile is real; SW-2 on-call, SW-5 security. But "proven ability to achieve or exceed goals" implies numbers and every canonical claim is metrics: unverified — the standing weakness in every package
P2 In-depth understanding of modern HPC and infrastructure architectures Gap HPC 0 canonical. The M.Eng. thesis has a throughput/latency evaluation but it is a methods prototype and the throughput figure is explicitly barred by thesis_limits
P3 Passion for emerging technologies and best practices Direct PP-3 (10 yrs self-hosted, self-hardened), PP-1, current LLM tooling. Genuine and demonstrable

Constraints

Item Status
Work authorization Direct — German citizen (EU), Swiss B permit, no sponsorship needed
Language Direct — English fluent; JD requires English only
Location / working model UNRESOLVED — must be asked. Zurich seat; Thun→Zurich ~1h50 each way. JD silent on hybrid vs onsite
Compensation Clears the bar — see Company Context. Not the blocker

ATS Keywords

  • Direct, safe to use: DevOps, CI/CD, Jenkins, GitLab CI/CD, Kubernetes, Docker, Ansible, configuration management, Linux, infrastructure automation, Infrastructure as Code, Python, AWS, CloudFormation, containerization, automated testing, quality gates, observability, on-call, incident response, availability, security, agile, R&D engineering teams, English.
  • Use only with honest scoping: on-premises compute (Bosch server estate only), Debian/Ubuntu (Debian is the canonical one), hardening (personal-project evidence — always say so), monitoring (BS-4 is a PoC).
  • NEVER use — 0 canonical / forbidden: HPC, GPU, CUDA, Slurm, InfiniBand, network switches, bare metal, datacenter, QEMU, KVM, hypervisor, RedHat, CentOS, Groovy, Terraform, GitOps, GitHub Actions, SRE (as a title), any uptime/SLA/server-count/scale figure.

Gap Assessment

  1. On-premises networking — the one required Gap. Zero evidence, not substitutable from data-platform work. Do not paper over it; name it once, honestly, in the cover letter.
  2. HPC — preferred, and the site's whole reason for existing. Zurich is NVIDIA's HPC/AI infrastructure-software hub. This gap is more visible here than the "preferred" label suggests.
  3. Bare metal, switches, VMs, QEMU/KVM — the physical/virtualization layer is absent. PP-3 forbids using the home server as physical-infrastructure evidence, and that ban must hold.
  4. Recency split. The two most JD-central employer skills — Ansible and Linux administration — ended at Bosch in Dec 2022. Currency is carried by PP-3, a personal server. Say so plainly.
  5. No metrics anywhere. P1 asks for goals achieved; nothing is quotable.
  6. RHEL/CentOS. Debian→Ubuntu is nearly free; the Red Hat family is a genuine unknown.

Company Context

  • What Zurich actually does. NVIDIA's Zurich site is an HPC and AI infrastructure-software R&D hub — distributed training, real-time inference, and communication/networking optimization across large-scale systems (the site also posts Senior HPC & AI Network Software Architect and HPC & AI Software Architect roles). This role is the infrastructure and CI/CD backbone underneath those R&D teams — which is exactly what R3 says, and exactly the shape of his Fraunhofer and Bosch work.
  • Swiss anchor. NVIDIA + HPE + CSCS built Alps, the Grace Hopper–based supercomputer at Lugano that anchors the Swiss AI Initiative with ETH Zürich and EPFL, hydropower-cooled. A credible, verifiable local hook — and it explains why "on-premises" and "bare metal" are literal here.
  • Compensation — the finding that changes the commute math. levels.fyi Greater Zurich: IC3 median ≈ CHF 204k, IC4 ≈ CHF 379k, and it names NVIDIA the highest-paying SWE employer in Zurich. Even the bottom rung clears the 180k all-in bar decisively. ⚠ Caveat: levels.fyi is self-reported and these totals are equity-heavy after an extraordinary NVDA run — treat the base as the reliable part and confirm the split. But this is the first role in the log where comp is a reason to accept a long commute rather than a reason to decline.
  • Culture signals from the JD: "fast-paced", "distributed teams", "creative problem-solving", "collaborate closely with software development teams". Reads as a small, senior, hands-on site team.

Competitive Read

  • Obvious-fit candidate: a Linux/HPC systems engineer from CSCS, ETH/EPFL, a Swiss hosting or colocation provider, or a hardware vendor — someone who has physically racked servers, configured switches, and run Slurm on a real cluster.
  • Dennis's advantage: a decade-long, five-employer CI/CD and automation thread that is deeper and broader than a pure sysadmin's; Ansible depth beyond use (he wrote extensions); current Kubernetes in production; and BS-1 — integrating containerized ML inference into a 24/7 semiconductor fab, which is genuinely rare evidence of putting automation into an environment that cannot stop. Plus SW-2 Component Owner accountability: on-call, incidents, data quality.
  • Their advantage: networking, bare metal, hypervisors, HPC schedulers, datacenter practice — the precise half he lacks, and it is named in both a required line and a responsibility.
  • Level/scope: NVIDIA "Senior" against his current Staff at Swisscom. By title that is lateral-to-below, but the NVIDIA bar is high and the comp is far above. Not a level problem; the user_role_targeting_energy_trading "no lateral same-tier moves" rule was about comp/level upside, and the comp upside here is unambiguous.

Framing Strategy

  • Professional identity: Staff-level engineer who builds and operates the CI/CD, container and configuration-automation layer that engineering and research teams depend on — Kubernetes and GitLab CI/CD today, Ansible and Linux estate automation at Bosch, Jenkins pipelines at a Fraunhofer research institute. Not "infrastructure engineer" in the datacenter sense.
  • Lead narrative: "I build the automation and delivery layer that R&D teams run on." R3 is the bullseye and should lead.
  • Strongest proof points (in order): BS-6 Linux estate + Ansible incl. extensions · BS-1 containerized ML inference into a 24/7 fab · SW-3 Kubernetes + GitLab CI/CD · FC-1 Jenkins CI/CD for a research institute · VZ-2 automated tests wired into quality gates · SW-2 Component Owner on-call/incidents · PP-3 current self-hosted Linux and hardening.
  • Honest adjacent bridges: Debian → Ubuntu (near-identical, defensible). Container virtualization → named alongside, never in place of, QEMU/KVM. On-prem compute via the Bosch estate — never via the home server.
  • Explicit gaps to state, not hide: on-premises networking; HPC; bare metal and switches.
  • Scope Discipline watch (recurring error): Bosch — "administered and automated the Linux server estate underpinning fab analytics and ML workloads", never "ran the fab's infrastructure" or "the datacenter". Swisscom — data products within the company-wide Data Mesh, never "built a Data Mesh". BS-4 is a PoC, never "the observability platform".
  • User directives: none given beyond "let's try it".

Critique Context

  • Reviewer persona: a hands-on senior infrastructure engineer at a small, elite site — someone who has run bare metal and will spot an inflated Linux or networking claim in one line. Not an HR screen.
  • Domain vocabulary: Ansible roles/playbooks/inventories, idempotence, CI runners, container registries, image builds, node pools, config drift, immutable infrastructure, artifact promotion.
  • Screening risks to prep answers for, in likely order:
    1. "Walk me through your on-prem networking experience." → He has none. Say so.
    2. "Where does the 10+ years come from?" → the 2015→now CI/CD thread, named role by role.
    3. "Which distros?" → Debian (personal, 10 yrs, current) + Bosch estate. RHEL/CentOS honestly unknown.
    4. "Ansible was three years ago — what's current?" → PP-3 plus current Kubernetes/GitLab.
    5. "Any HPC?" → no. Pivot to 24/7 production constraints (BS-1), which is the transferable part.

Resume Plan (provisional — Phase 1 confirms)

  • Format: 2-page International Tech resume, English.
  • Contact line: Bern, Switzerland (Zurich role — the Thun-local rule applies only to Thun-area employers).
  • Summary: 2–3 lines, DevOps/automation-forward. ⚠ Do not inherit the template's "12+ years" — it is unsupported (visible record from Generali 2015-05 ≈ 11y4m). Use "over ten years".
  • Skills: Linux, Ansible, Kubernetes, Docker, CI/CD (Jenkins, GitLab), Python, AWS/CloudFormation, observability/monitoring. Omit Terraform, GitOps, Azure, GCP, Groovy, HPC.
  • Swisscom: SW-3, SW-2, SW-5, and one of SW-1/SW-7.
  • Bosch: BS-6 (lead — it is the closest thing in the record to this JD), BS-1, BS-4.
  • Earlier: Fraunhofer FC-1 (Jenkins CI/CD for a research institute — thematically perfect), Vizrt VZ-2 (quality gates into CI/CD), Generali GN-1 optional.
  • Projects: consider a one-line PP-3 entry — it is the only current Linux/hardening evidence, and it must be labelled a personal self-hosted project.
  • Total bullets: ~12–14.
  • Capgemini: OMIT (standing rule). The Nov 2014 – May 2015 gap is intentional.
  • Impact evidence still needed: everything — all canonical metrics are unverified.

Cover Letter Decision

  • YES (provisional — confirm after the resume).
  • Reason: the networking gap needs one honest sentence that a resume cannot carry, and the "infrastructure for R&D teams" framing needs prose to land. Same pattern that worked for RUAG C5I.
  • Information it adds beyond the resume: why a data/platform engineer is applying for a DevOps infrastructure role; the Fraunhofer/Bosch "serving research and engineering teams" thread; the 24/7-production constraint experience; one plain sentence naming the on-prem networking gap.
  • Hook used (first-party, verified 2026-09-04): NVIDIA's own live Zurich posting JR2022878 (Senior HPC and AI Network Software Architect, posted the same week), scraped directly: the Zurich team is "building the next generation of scalable AI infrastructure" with emphasis on "distributed training, real-time inference, and communication efficiency across large systems", alongside "our distinguished team of researchers and engineers". This is the hook the letter uses.
  • Hook DROPPED after verification -- Alps / Swiss AI Initiative. The first-party NVIDIA newsroom release confirms Alps is HPE-built on Grace + HGX and operated by CSCS, a unit of ETH Zurich, in Lugano -- but it makes no mention of EPFL or a "Swiss AI Initiative". That framing came from secondary coverage (HPCwire, Wikipedia) and is corrected here. Alps was left out of the letter anyway: it is about CSCS rather than NVIDIA's Zurich office, and cl_reference.md says to omit an unnecessary hook rather than spend a paragraph proving company familiarity.

Phase 1 — Bullet Plan (proposed 2026-09-04)

Confirmed 2026-09-04: bundle bundle_data_platform.md (Data Platform / Infra) · 2-page International Tech, English, Bern contact line · framing as stated in Framing Strategy · build now, working-model question asked in parallel, nothing submitted until it is answered.

⚠ Two KB findings that change the plan

  1. BS-6 and PP-3 exist only in claims.json. They were added 2026-08-27 and never propagated to experience_bosch.md, any bundle, or skills_taxonomy.md. So bundle_data_platform.md's Priority Matrix does not list BS-6 at all — following the matrix mechanically would omit the single best-matching piece of evidence in the whole record for this JD. Bullets for both are written from canonical scope, which is the higher authority anyway.
  2. Bundle scope violation found and fixed. bundle_data_platform.md §S3 framed BS-4 as "Designed and delivered observability stack … full monitoring suite" — a delivered-capability claim over what claims.json calls a proof of concept, whose forbidden list includes "built the observability platform". Same defect the 2026-08-21 log entry found in bundle_data_engineer.md §S5, which said to check the other four bundles. This was the one that had it. Fixed, with a scope warning added. The other three bundles are clean.

Swisscom — Staff Data, Analytics & AI Engineer (Oct 2023 – present) · budget 4–5

ID Achievement JD hook Match
★ SW-3 LEAD — Python data applications on Kubernetes with GitLab CI/CD, agile DevOps team Q4, Q6, R3 Direct
★ SW-2 Component Owner, business-critical Fulfillment ETL — availability, data quality, incidents, on-call R4, R5, P1 Direct
★ SW-5 Security Champion 2025/26 + 100 h DevSecOps training R4 "security", P1 Direct (gate met: R4 and P1 both name security explicitly)
★ SW-1 Migrated his domains' ETL to AWS (S3, Glue, Athena/Iceberg, Redshift, Airflow, CloudFormation) R1 cloud half, IaC Direct (scope-locked)
o SW-7 Governed data products in the company-wide Data Mesh — Available; weakest fit to a DevOps JD
x SW-6 PySpark — No JD hook
x SW-4 B2B data products and dashboards — No JD hook
x SW-8 LLM assistants — No JD hook — the JD has zero AI/ML content

Bosch — Senior Data Engineer, Data Analysis (Feb 2020 – Dec 2022) · budget 3–4

ID Achievement JD hook Match
★★ BS-6 Administered and automated the Linux server estate underpinning fab analytics/ML — ML platform hosts, Docker hosts, backend services; intensive Ansible incl. a credential plugin he wrote; Git-versioned playbooks executed from Jenkins/GitLab Q2, Q3, Q5a, R2 Direct — the closest bullet in the record to this JD. Not in the bundle matrix; written from claims.json
★ BS-1 Containerized ML inference (Docker, Kubernetes, Ansible) into 24/7 semiconductor production Q4, R1, P1 Direct — and the "cannot stop" constraint is the transferable HPC-adjacent story
★ BS-4 Anomaly-detection PoC on ELK + Kafka (Docker), Grafana/Prometheus/Loki monitoring R4 observability Direct, PoC framing mandatory
★ BS-3 Application Owner — SLOs, vendor management, training, 24/7 reliability R4, R5, level signal Direct
o BS-2 Data services (Python/Java/C#) over Oracle and Hadoop/Impala — Available; data-flavoured
x BS-5 TIBCO Spotfire + TAF 2022 — No JD hook

Fraunhofer CML — Research Software Engineer (Sep 2018 – Oct 2019) · budget 0–1

ID Achievement JD hook Match
★ FC-1 Independently established Jenkins CI/CD with quality gates at a research institute R3 verbatim — "CI/CD pipelines … for our R&D engineering teams" Direct. Thematically the single best answer to R3
o FC-3 Containerized microservices for the MISSION platform Q4 Available
x FC-2 ML/NLP components for ARTUS — No JD hook

Vizrt — Test Automation / DevOps Engineer (Jul 2017 – May 2018) · budget 0–1

ID Achievement JD hook Match
★ VZ-2 Automated A/V integration tests, quality gates integrated into the CI/CD pipeline R4 second half, near-verbatim — "integrate automated testing and quality assurance into deployment workflows" Direct
o VZ-1 Python/C++ distributed transcoding backend — Available; feedback_cpp_emphasis says do not oversell C++

Title note: canonical display_title is "Test Automation / DevOps Engineer" (official_title is Test Automation Engineer). For RUAG the user asked to show DevOps alone. Here I recommend keeping the full display title — this JD requires exactly the test-automation-into-CI/CD skill, so the "Test Automation" half is an asset, not a liability. Flagging rather than deciding silently.

Generali GDIS — IT Consultant (May 2015 – Jun 2017) · budget 0–1

ID Achievement JD hook Match
★ GN-1 Introduced and held technical ownership of BDD test automation; Jenkins CI/CD administration, training, knowledge transfer Q2 — this is where the ten-year DevOps thread starts, and it is the answer to "where do 10+ years come from?" Direct
x GN-2 / GN-3 RPA PoCs; Java/J2EE workflow features — No JD hook

Projects · budget 0–1

ID Achievement JD hook Match
★ PP-3 Self-hosted Debian server, ~10 years — administers and hardens (nginx, mail, Nextcloud, VPN, Docker services, Bitwarden) Q3 currency and R4 security Direct but personal — must be labelled a personal self-hosted project. forbidden: enterprise/production/multi-user, any uptime or scale figure, and never as datacenter or physical-infrastructure evidence
x PP-1 / PP-2 Trading platform, AI-for-Trading nanodegree — No JD hook

Totals

  • Recommended set: 12 bullets — Swisscom 4 · Bosch 4 · Fraunhofer 1 · Vizrt 1 · Generali 1 · Projects 1
  • Budget: resume_reference.md §4 allows Swisscom 4–5, Bosch 3–4, the three earlier roles 0–1 each, typical total 11–14. PASS.
  • Remaining slots: up to 2. Best fillers if the page needs them, in order: FC-3 (containerized microservices, adds Q4 depth), BS-2 (language breadth), SW-7.
  • Forced exclusions: Capgemini — omitted entirely (standing rule; the Nov 2014 – May 2015 gap is intentional). SW-8, PP-1, PP-2 excluded — the JD contains no AI/ML content at all, and including them would dilute a pure infrastructure pitch.
  • Bundeswehr: omit. BW-1 earned its place at RUAG and Kdo Cy because those JDs named military service as an advantage. This JD does not, and BW-1 forbids implying technical military work.
  • Cadence watch (resume_reference.md §7a): at most ~half the bullets may carry an "X, Y and Z" triple; no two consecutive bullets may open with the same verb. SW-3 and BS-1 both naturally want to open with a containerization verb — vary them.
  • Impact evidence still needed: none is available. Every canonical claim is metrics: unverified, and P1 asks for goals achieved. This is the known standing weakness and it cannot be fixed here.

Output Files

  • JD: output/NVIDIA_SrDevOps_Zurich/JD_nvidia_sr_devops_jr2024256.txt
  • Session: output/NVIDIA_SrDevOps_Zurich/session_nvidia_sr_devops.md
  • Resume source: output/NVIDIA_SrDevOps_Zurich/e2e_nvidia_sr_devops_resume.tex
  • Resume PDF: output/NVIDIA_SrDevOps_Zurich/e2e_nvidia_sr_devops_resume.pdf (2 pages)
  • Cover letter source: output/NVIDIA_SrDevOps_Zurich/e2e_nvidia_sr_devops_cover_letter.tex
  • Cover letter PDF: output/NVIDIA_SrDevOps_Zurich/e2e_nvidia_sr_devops_cover_letter.pdf (1 page, 279 body words)
  • Critique: output/NVIDIA_SrDevOps_Zurich/critique_nvidia_sr_devops.md

Critique Summary (2026-09-04)

  • Evidence Fit: 64/100, Stretch - unchanged; documents do not move fit
  • Hard gate: FAIL x2 - required networking Gap, and the working model still unresolved
  • Document Quality: 82/100 (truth 22/25, hierarchy 17/20, bullets 15/20, relevance 11/15, skills 8/10, mechanics 9/10). Both validators PASS, 0 boxes, 0 forbidden terms
  • Channel: Weak
  • Tier 1 fixes (2) - BOTH APPLIED 2026-09-05, see Edit History: (1) Ubuntu is 0 canonical - the skills line reads "Linux administration (Debian/Ubuntu)" but PP-3 is Debian only; the Debian→Ubuntu transfer argument belongs in an interview answer, not a skills line. Change to (Debian). (2) Hardening must be marked personal-side - claims.json says the evidence "leans on the personal side; say so", and the Operations line lists "security hardening" beside employer-only evidence with no marker
  • Tier 2: headline advertises undated Linux/Ansible currency (named in the CL, optionally reorder to lead with Kubernetes); JD term coverage 19/38 = 50% with four honest additions available (configuration management, reliability, observability, orchestration); summary says teams "work on" the delivery layer where it should read "rely on"
  • Blocking action is not a document fix: resolve hybrid vs onsite with NVIDIA recruiting first

Edit History

Edit 1 (2026-09-05): critique Tier 1 + selected Tier 2

Source: critique_nvidia_sr_devops.md Tier 1 #1/#2 and Tier 2 #2/#3, user-confirmed. Scope: Summary and Skills only. No bullet was touched, so the budget stayed at 13 and the cadence check could not regress.

# Change Class Why
1 Linux administration (Debian/Ubuntu) -> (Debian) MODIFY Tier 1. Ubuntu is 0 canonical; PP-3 is a Debian server. The Debian->Ubuntu transfer argument is an interview answer, not a skills-line claim
2 security hardening -> security hardening (personal server), moved after a semicolon MODIFY Tier 1. claims.json instructs that hardening evidence "leans on the personal side; say so"
3 Ansible including custom plugins -> Ansible configuration management including custom plugins MODIFY Q5a's exact phrase; BS-6 says "configuration management and infrastructure automation" verbatim
4 Kubernetes, Docker -> Kubernetes container orchestration, Docker MODIFY JD says "orchestrators like Kubernetes"; keeps BS-1's bullet verb intact
5 SLO definition -> SLO definition and service reliability; Monitoring -> Monitoring and observability MODIFY "reliability" is the JD's second named focus (SW-2, BS-3); "observability" itself is not forbidden, only "observability platform"
6 Summary teams work on -> teams rely on MODIFY Teams ship through the delivery layer, not on it. Wording defect in the most-read sentence

Deliberately NOT applied — Tier 2 #1, headline reorder. It is a positioning call for the user, and \headline sits in the header block, which config.md lists as a FIXED section. The recency concern it addresses is already stated explicitly in the cover letter.

Deliberately NOT added: HPC, bare metal, VMs, QEMU/KVM, virtualization, Groovy, GitHub. These are the genuine gaps; adding them for ATS would be fabrication.

Metric Before After Delta
Page count 2 2 0
Over/underfull boxes 0 0 0
Validator warnings 0 0 0
Bullets 13 13 0
JD term coverage (rendered text only) 17/38 (45%) 21/38 (55%) +4
Tier 1 findings open 2 0 -2
Page-1 white space ~15% ~12% slightly better (skills grew one line)

Measurement correction: the coverage figures first reported (50% -> 61%) were counted over the raw .tex including LaTeX comments, and the provenance comments in this file contain terms like "configuration management", "observability" and "Ubuntu". Recomputed over rendered text only, the true figures are 45% -> 55%. The +4 delta is unchanged; the baseline was inflated.

Nothing worsened. Rendered PDF re-inspected: no "Ubuntu" anywhere in the output, all six changes present, page break and position integrity unchanged.

Edit 2 (2026-09-05): Bash added after user confirmation

Source: user confirmation, closing the open KB question raised at the end of Phase 2.

  • claims.json: new skill Bash / shell scripting, production-historical-and-personal-current, output: allowed. Evidence basis mirrors Linux administration - professional at Bosch 2020-2022 (BS-6, Linux estate and the Ansible control path) and personal/current on the PP-3 Debian server. The note explicitly records that it does not license Groovy (still unverified and forbidden) and does not license systems-programming or kernel-level claims.
  • Resume: Languages line now reads Python, Bash, SQL.
  • This is the third canonical gap of exactly this shape, after Ansible and Linux administration (both 2026-08-27) - a real, currently relevant skill that was simply unrecorded, and therefore unwritable under the evidence-first rule.
  • Verification: claims.json valid, system validator PASS, document validator PASS, 2 pages, 0 boxes, 13 bullets unchanged. JD term coverage 55% -> 58% (rendered text only). groovy confirmed absent from both documents.

SUBMITTED 2026-09-05

User submitted the application. Recorded in application_cohort.json (record now 7 entries) and in the scout decision log as applied.

Carried into screening, unresolved by choice: hybrid vs 5-day onsite was never answered before sending, so it is now a live screening topic rather than a pre-cleared one - the same pattern as RUAG's compensation and PSP eligibility. Thun-Zuerich is ~1h50 each way, so a 5-day-onsite answer is the main disqualifier to watch for. Comp is not a risk: levels.fyi Greater Zuerich IC3 median ~CHF 204k, IC4 ~CHF 379k.

Channel: Weak - the 7th consecutive cold submit. Under the new channel rule (application_strategy.md, 2026-09-05) this posting published no named contact, so cold was the only option available here.

Finalization (2026-09-05) - build record

Ran shared_ops.md -> Finalization steps 1-4 only. Steps 5 and 6 were deliberately NOT run:

  • Step 5 (record submission date) - NOT DONE. There is no submission date. The application is blocked on the working-model question.
  • Step 6 (cohort_tracker.py add) - NOT DONE, and this is the important one. Adding it would consume a cohort slot for an application that may still become a documented NO-GO, and there is no free slot of the right class anyway (6/10; Adjacent 2/2 and Stretch 1/1 both consumed; verified read-only via cohort_tracker.py summary). Precedent: the Citadel entry in CLAUDE.md records "Cohort entry and decision-log entry deliberately NOT written - no confirmed send date." Add to the cohort only after it is actually sent.
Check Result
Session file present
Resume .tex + .pdf present, 2 pages, 0 boxes
Cover letter .tex + .pdf present, 1 page, 0 boxes (Cover Letter Decision: YES)
Critique present (STALE BY DESIGN - its own findings were applied)
Canonical system validator PASS, 0 warnings
Document validator - resume PASS, 0 warnings
Document validator - cover letter PASS, 0 warnings
Submission PDFs Dennis_Thiessen_Resume.pdf, Dennis_Thiessen_Cover_Letter.pdf - MD5-verified identical to source
Letter date Recompiled; now reads 5 September 2026
Scout decision log recorded as paused, not applied - keeps it out of re-triage without implying a submission

⚠ Staleness warning, per config.md Output Rules. The submission-named PDFs are copies, not build targets, and the letter carries oday. If this is sent on any day after 2026-09-05, recompile the cover letter and refresh both submission copies first - otherwise the letter goes out with a stale date under exactly the filename that gets attached.

Status

  • Fit gate: DONE — Evidence Fit 64/100, Stretch, hard gate FAIL ×2, proceeding on user override
  • Phase 0: DONE
  • Phase 1: DONE - confirmed 2026-09-04; 13 bullets after adding SW-7 for page-1 balance, budget PASS
  • Resume: DONE - 2 pages, 13 bullets, validator PASS 0 warnings, 0 over/underfull boxes, text order verified, both pages visually inspected
  • Cover letter: DONE -- 1 page, 279 body words, validator PASS 0 warnings, 0 boxes, hooks first-party verified, package cohesion checked
  • Critique: STALE BY DESIGN (was CURRENT 2026-09-04; Edit 1 on 2026-09-05 applied its own findings) - measured Document Quality was 82/100 pre-edit with 2 Tier 1 findings; both are now closed and term coverage rose 50%->61%, so the document is better than 82 but that number is not re-measured - never quote a post-edit estimate as a score. Evidence Fit 64 and hard gate FAIL x2 are unchanged: documents do not move fit
  • Next: /critique output/NVIDIA_SrDevOps_Zurich/session_nvidia_sr_devops.md — and resolve the hybrid/onsite question before anything is submitted

Generation notes (2026-09-04)

  • Bosch bullet swap vs the Phase 1 table: BS-3 (Application Owner) dropped in favour of splitting BS-6 into two bullets — the Linux estate, and the custom Ansible credential plugin. The plugin is the most distinctive automation evidence in the record for this JD, and BS-3's ownership signal is already carried by SW-2 Component Owner. Bosch stays at 4, within the 3–4 budget.
  • SW-7 added as a 5th Swisscom bullet (budget allows 4–5) to close page-1 white space with real evidence rather than padding.
  • Forced page break kept. Letting LaTeX flow naturally filled page 1 but split the Bosch position across pages with no continuation header — an information-hierarchy cost worse than white space. Tested both, reverted. Roughly 15% white space remains at the foot of page 1 and ~25% on page 2; resume_reference.md §4 explicitly permits this ("a strong shorter resume is better than a full page padded with weak evidence") and critical_rules.md §7 sets no page-fill quota.
  • Cadence. First build tripped the §7a warning at 10/12 bullets (83%) — the SBB failure mode. Five bullets were reshaped (sentences only, no claim, scope or verb changed) and the validator now passes clean.
  • Two template-inherited defects caught at final review, the same class as the "12+ years" line: (a) PP-3 carried a 2015 -- Present header date, but claims.json records only a self-reported "~10 years" — a precise start year asserts more than the KB supports. Header date replaced with Ongoing; the bullet keeps the approximation. (b) The Education block carried grade 1.0 from the template. claims.json grade_output_rule permits the thesis grade "only where academic performance is genuinely valued" — a 10+-years hands-on infrastructure role is not that. Removed; the thesis title stays.
  • Carry into /make-cl: the recency split needs one sentence. The headline leads with "Linux, Ansible & Kubernetes" and the summary says "Ansible-driven Linux server automation", both undated, while the employer evidence for both sits under Feb 2020 – Dec 2022 and the only current Linux evidence is a personal project at the foot of page 2. The bullets are correctly dated so nothing is false, but the infra-engineer reviewer persona will form an expectation from the headline and find it three years stale. The CL plan already names the networking gap; it must name this too.
  • Headline flag, not a fix. The headline reads "Staff Engineer", not his canonical "Staff Data, Analytics & AI Engineer". Defensible — the Swisscom header carries the formal title two inches below, and a headline is positioning rather than a title claim — but it is the same shape as the Vizrt title decision, so it is flagged rather than silently propagated.
  • Open KB question — Bash. claims.json has no entry for shell scripting, so it is not listed in Skills even though the JD names it ("Bash, Python or Groovy") and ten years of Debian administration plus Ansible work plainly involve it. Same shape as the Ansible and Linux gaps found 2026-08-27: probably true, simply unrecorded. Worth confirming with the user and adding. Groovy stays out regardless — there is no evidence for it.